diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx index 6f1f425..0ecf933 100644 --- a/.storybook/preview.tsx +++ b/.storybook/preview.tsx @@ -46,6 +46,8 @@ const preview: Preview = { "OrgChart", ["Overview", "Department Colors", "Full Composition", "Expanded OrgChart"], "Center Graphic", + "SW", + ["Header", "Footer", "Popup", "Viewer", "Theme"], "*", ], }, diff --git a/AGENTS.md b/AGENTS.md index a8c4f9d..e3929aa 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -4,6 +4,12 @@ 이 파일을 먼저 읽고 필요한 항목만 탐색한다. 전체 문서·전체 소스·전체 Storybook을 반복해서 읽지 않는다. +## 패키지 소비용 AI 지침 — 2026-10-19 + +- 이 파일은 HMDesign 저장소를 개발하는 AI용이다. 패키지를 설치한 **다른 프로젝트**의 AI가 읽는 지침은 각 패키지의 `ai/`(`packages/ui/ai`, `packages/sw/ai`, `packages/org-chart/ai`, `packages/org-chart-react/ai`)에 있고 공통 진입점 원본은 [docs/ai/AI_GUIDE.md](docs/ai/AI_GUIDE.md)다. +- 사용 유형은 Web / SW(**SW 일반 모드**·**SW 뷰어 모드**) / OrgChart / 혼합이다. SW 작업은 모드를 먼저 정하고(불명확하면 질문, 요청·설정으로 명확하면 묻지 않음) 선택 모드의 컴포넌트·토큰만 쓴다 — 일반 `SWHeader`·`SWPopup`, 뷰어 `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`. 기준은 [packages/sw/ai/AI_USAGE.md](packages/sw/ai/AI_USAGE.md) §0과 공통 가이드 1·4·5단계이며 이 파일에 본문을 복사하지 않는다. +- 공개 Export·Props·토큰을 바꾸면 같은 변경에서 해당 `ai/` 문서를 갱신하고 `npm run check:ai-docs`를 실행한다. 공통 가이드는 원본만 고친 뒤 `npm run sync:ai-docs`로 사본을 갱신한다. 절차는 [docs/ai/MAINTAINING.md](docs/ai/MAINTAINING.md). + ## Typography — 공통 정책 - HMDesign의 Font Weight는 400(Regular), 500(Medium), 700(Bold)의 3단계만 사용한다. Font Weight 600은 사용하지 않으며, 카드 제목은 700을 기본으로 한다. @@ -32,10 +38,11 @@ 필요할 때만 [보존된 상세 지침](docs/guidelines/ai-implementation-details.md)을 읽는다. 신규 화면에는 위 필수 규칙이 우선한다. -## 공식 작업 경로와 Git 정책 — 2026-10-11 사용자 확정 +## 작업 위치와 Git 정책 — 2026-10-20 개정 (2026-10-11 정책 대체) -- HMDesign 실제 수정은 `D:\디자인시스템\HMDesign-Gitea-Transfer`에서 진행한다. 시작 전 절대경로·`main` 브랜치·공식 origin `https://gitea.hmac.kr/b25027/HMDesign.git`·최신 원격 HEAD·Working Tree·기존 미커밋 변경을 확인한다. -- 퍼블리셔 요청에 필요한 부분만 수정하고 기존 Component·Pattern·Theme·Storybook을 보존한다. 변경 영향과 관련 MD/Storybook 정합성을 검증하고 유효한 기존 정상 검증은 불필요하게 반복하지 않는다. -- 필수 검증을 통과하면 관련 파일만 Stage하고 Staged Diff를 검토한 뒤 Commit·공식 Gitea `main` 일반 Push를 수행한다. 작업별 사용자의 명시적 Commit/Push 보류 지시가 있으면 그 지시를 우선한다. -- Commit/Push 직전에 원격 `main`을 다시 확인한다. 시작 기준 이후 원격이 변경됐거나 중요한 충돌이 있으면 자동으로 덮어쓰지 않고 중단한다. 완료 후 Local/Remote SHA와 Working Tree를 확인한다. +- 작업 위치는 고정 폴더가 아니라 **사용자가 지정한 브랜치의 작업 트리**다(별도 Clone·worktree 포함). 시작 전 절대경로·현재 브랜치·HEAD·공식 origin `https://gitea.hmac.kr/b25027/HMDesign.git`·최신 원격 HEAD·Working Tree·기존 미커밋 변경을 확인한다. 같은 폴더를 다른 작업자나 AI가 수정 중일 수 있으므로 수정 전 파일을 다시 읽는다. +- 기능 작업은 기능 브랜치(예: `feature/sw-package`, `feature/orgchart-package`)에서 진행하고 `main`에는 사용자가 지시한 병합(PR 등)으로만 반영한다. `main` 직접 Commit/Push와 병합은 사용자의 명시적 지시가 있을 때만 수행한다. +- 요청에 필요한 부분만 수정하고 기존 Component·Pattern·Theme·Storybook을 보존한다. 변경 영향과 관련 MD/Storybook 정합성을 검증하고 유효한 기존 정상 검증은 불필요하게 반복하지 않는다. +- Commit·Push는 사용자 승인 후 수행한다. 관련 파일만 Stage하고 Staged Diff를 검토한다. 직전에 대상 원격 브랜치를 다시 확인하고, 시작 기준 이후 원격이 변경됐거나 중요한 충돌이 있으면 자동으로 덮어쓰지 않고 중단한다. 완료 후 Local/Remote SHA와 Working Tree를 확인한다. +- `main` push는 웹 Storybook(`https://design.hmac.kr/`) 배포 Workflow를 실행한다(`.gitea/workflows/deploy-storybook.yml`). 병합 전에 운영 웹을 변경하지 않는다. - GitHub 이전 원본 폴더·remote에는 수정/Push하지 않는다. Force Push·Reset·Clean·기존 이력 삭제·백업 브랜치 변경·무관한 파일 Stage를 금지한다. diff --git a/CLAUDE.md b/CLAUDE.md index 0d4e1e5..6d875c3 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -14,6 +14,7 @@ shadcn/ui(Radix, Tailwind v4, CVA) 기반 HM 디자인 시스템 시제품. Reac - [AI 조직도 자동 생성 정책](docs/org-chart/ai-page-generation-rules.md) — 자연어 또는 JSON·CSV·Excel에서 새 조직도 컴포넌트 또는 전체 페이지를 생성할 때 먼저 읽는다. 생성 방식 미지정 시 코드 작성 전에 위 정책의 사전 선택 질문으로 Chart Only / Full Page를 확인하고 답변 후 구현한다. 이미 명시한 방식은 다시 묻지 않는다. Chart Only는 흰색 캔버스·노드·연결선의 삽입용 컴포넌트, 최초 Fit·휠 Zoom·Pan과 외부 UI 제외를 따르고, Full Page는 기존 HM UI로 요청 UI·전체 배치·반응형을 구성한다. 두 방식 모두 가변 계층·정확한 인원·제공 데이터 보존·기존 Core/React 재사용을 따른다. Fixed·Auto/Expanded는 생성 방식 선택을 대신하지 않는다. Chart Only의 Navigation 예외와 Full Page의 HM 화면 계약은 `AGENTS.md`를 따른다. 기존 Full Composition·Expanded OrgChart·Department Colors·Overview·P9.5·P-AI1에는 소급 적용하지 않는다. - 일반 업무 화면은 Storybook에 등록하지 않고 별도 React 화면·독립 미리보기로 제공한다. Storybook 수정은 Component/Pattern 또는 명시적 Storybook Reference 작업에 한정한다. 상세한 Storybook / 화면 생성 분리는 `AGENTS.md`와 `docs/guidelines/shadcn-기반-구현-원칙.md`를 따른다. - `docs/guidelines/프로젝트-지침.md` — §6 컴포넌트·Storybook·CSS 작업 규칙 (모든 컴포넌트 작업 전 필독) +- `docs/ai/MAINTAINING.md` — 패키지에 포함되는 소비 프로젝트용 AI 지침(`packages/*/ai/`, 공통 원본 `docs/ai/AI_GUIDE.md`). 공개 API·토큰 변경 시 같은 변경에서 갱신하고 `npm run check:ai-docs`를 실행한다. - `docs/guidelines/shadcn-기반-구현-원칙.md` — Component / Pattern / Story의 재사용 우선순위와 Custom 구현 허용 조건 (관련 작업 전 필독) - `docs/guidelines/테마-토큰-가이드.md` — Token 구조, 이름 규칙, HM Default/External Runtime 계약, Light/Dark 없음 - `docs/guidelines/개발-적용-가이드.md`, `운영-배포-가이드.md`, `theme-delivery.md` — JSON 원본/Runtime URL Loader/독립 Theme 배포와 향후 실제 CDN·Publish의 경계 @@ -62,7 +63,7 @@ shadcn/ui(Radix, Tailwind v4, CVA) 기반 HM 디자인 시스템 시제품. Reac - Button(`variant`=역할, `appearance`=treatment, `size`), Input(`size`, native 상태 selector), Select(Trigger `size`, Radix 상태 속성)는 ui_viz Confirmed 규격으로 구현했다. Card도 ``만으로 HM 스타일이 적용된다(ui_viz Content Card, `packages/ui/src/theme/card.css`). Dialog도 ``만으로 HM 스타일이 적용된다(`packages/ui/src/theme/dialog.css`). - 구조(2026-10-02 패키지 분리, npm workspaces): UI 컴포넌트·Theme 구현은 `packages/ui`(`@hm-design/ui`, 컴포넌트 `src/components/ui/`, Theme `src/theme/*.css`, 진입점 `src/theme.css`·`src/tailwind.css`), 컴포넌트 문서는 `docs/components/`, Storybook·Demo는 루트(`.storybook/`, `src/`; Demo 스타일은 `src/hm-theme.css`), `packages/center-graphic`(`@hm-design/center-graphic`)은 CENTER 구현(제목·정보·노선/공간·시설물), 기준 문서는 `docs/center-graphic/`다. - 작업 순서: 컴포넌트 문서 정리, Card, Dialog, 패키지 분리, CENTER 구현, 1단계 UI 컴포넌트(Textarea, Tabs, Label, Checkbox, Radio Group, Switch, Badge, Alert, Separator)와 2단계 A묶음 Floating(Dropdown Menu, Popover, Tooltip, Hover Card)과 B묶음 Modal(Sheet, Drawer(vaul), Alert Dialog)과 C묶음 Expand(Accordion, Collapsible)과 D묶음 Navigation(Breadcrumb, Pagination, Navigation Menu, Menubar)까지 완료로 2단계 UI가 끝났다. 3단계 A묶음 Data/Feedback(Table, Progress, Skeleton, Avatar, Scroll Area)과 B묶음 Selection Controls(Slider, Toggle, Toggle Group)과 C묶음 Search/Date(Calendar, Command, Date Picker, Combobox)까지 완료(새 dependency: `react-day-picker`, `cmdk`)과 D묶음 Layout/Media(Carousel, Aspect Ratio, Resizable)까지 완료로 3단계 UI가 끝났다(새 dependency: `embla-carousel-react`, `react-resizable-panels`). floating surface Semantic 정합성 작업도 완료했다. 4단계 A묶음 독립 UI(Context Menu, Toast/Sonner)까지 완료(새 dependency: `sonner`). 4단계 B묶음 업무 Pattern(Data Table, Filter Bar)까지 완료(새 dependency: `@tanstack/react-table` v9)로 4단계 핵심이 끝났다. Layout Pattern은 GNB·LNB·Page Header·Dashboard Layout까지 완료(`docs/patterns/gnb.md`, `lnb.md`, `page-header.md`, `dashboard-layout.md`, ui-viz 시각 기준)했다. 각 Navigation Mode는 독립 레이아웃을 소유한다. GNB ONLY는 기존 LNB 메뉴 부품을 재사용하는 내부 Sidebar를 허용하며 외곽 배경만 Green Light 2로 적용한다. DASHBOARD ONLY 운영 화면은 전용 Header(48px)·업무 상태 필터 + Content로 구성하고 Sidebar를 금지한다. 운영 최소 폭 960px·내부 가로 스크롤을 유지한다. 기존 DashboardSidebar Export·sidebar slot·1232px 구성은 호환성·검증용이며 신규 운영 Reference가 아니다. LNB 3뎁스(`LNBGroup` 중첩, 2026-10-06)와 모바일 Sheet 중첩 그룹까지 완료(`docs/patterns/lnb.md` §3a). 현재 LNB 모바일은 독립 LNB Mobile Header와 Sheet를 사용한다(`lnb.md` §3b). 과거 GNB+LNB 조합·Brand ownership·gradient 접점 기준은 Navigation Single Mode Policy로 대체되었다. 한 페이지에는 GNB / LNB / DASHBOARD 중 하나만 사용하며 기존 혼합 Story는 verification / VERIFICATION ONLY 조건의 기술 검증에만 한정한다. 경로: UI primitive `packages/ui/src/components/ui`, Pattern `packages/ui/src/patterns`, Pattern 문서 `docs/patterns`. Field는 코드 없이 `docs/components/field.md` 소비 가이드만 둔다. -- 두 패키지는 서로 의존하지 않으며 `private: false`, compiled dist export(JS·타입·CSS)와 library build가 구현되어 있다. Registry publish 이력은 ZIP 검증 범위 밖이다. Runtime Theme URL Loader와 Theme JSON 독립 산출은 구현되었고 실제 CDN infrastructure/publish pipeline은 미구현이다. CENTER 기준은 `docs/center-graphic/README.md`, `packages/center-graphic/src/`, `src/center/`의 현재 HM 구현과 대표 Story다. 외부 ui_viz owner 자료는 제공된 경우에만 참고하며 필수 실행 경로가 아니다. UI와 CENTER 규격을 섞지 않는다. +- 패키지는 5개다: `@hm-design/ui`(Web), `@hm-design/sw`(SW 일반·뷰어 모드, `packages/sw`, Story `src/sw/`, 문서 `docs/sw/`), `@hm-design/org-chart`·`@hm-design/org-chart-react`(OrgChart, Story `src/org-chart/`, 문서 `docs/org-chart/`), `@hm-design/center-graphic`(CENTER). 역할·진입점 표는 `README.md`의 패키지 구성, 외부 설치는 `docs/guidelines/external-install-submodule.md`를 따른다. `org-chart-react`가 Core에 의존하고 `/hm-dialog`만 `@hm-design/ui`를 optional peer로 쓰는 것 외에는 서로 의존하지 않는다. 모두 private이 아니며 compiled dist export(JS·타입·CSS)와 library build가 구현되어 있다. Registry publish 이력은 ZIP 검증 범위 밖이다. Runtime Theme URL Loader와 Theme JSON 독립 산출은 구현되었고 실제 CDN infrastructure/publish pipeline은 미구현이다. CENTER 기준은 `docs/center-graphic/README.md`, `packages/center-graphic/src/`, `src/center/`의 현재 HM 구현과 대표 Story다. 외부 ui_viz owner 자료는 제공된 경우에만 참고하며 필수 실행 경로가 아니다. UI와 CENTER 규격을 섞지 않는다. > 위 작업 순서는 구현 이력이다. 현재 API·제약은 코드와 Component/Pattern 문서를 대조한다. diff --git a/README.md b/README.md index 51969a1..20e9fa3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,20 @@ # HM Design System -React + TypeScript + Vite와 shadcn/Radix 기반 HM 디자인 시스템입니다. UI Component·업무/Layout Pattern·CENTER Graphic을 독립 workspace 패키지와 통합 Storybook으로 확인합니다. +React + TypeScript + Vite와 shadcn/Radix 기반 HM 디자인 시스템입니다. Web UI·SW UI·조직도·CENTER Graphic을 독립 workspace 패키지와 통합 Storybook으로 확인합니다. + +## 패키지 구성 + +npm workspace(`packages/*`)의 패키지 5개입니다. 서로 의존하지 않으며(아래 표의 예외 제외) 각자 `dist/`의 ESM JS·타입·CSS를 `exports`로 공개합니다. + +| 패키지 | 역할 | 공개 진입점 | Storybook | AI 지침 | +|---|---|---|---|---| +| `@hm-design/ui` | **Web** 일반 웹 UI Component(shadcn/Radix)·업무/Layout Pattern·HM Theme Runtime | `.`, `/theme`, `/theme.css`, `/tailwind.css`, `/dashboard-status.css` | Foundation · Components · Patterns · Theme | `packages/ui/ai/` | +| `@hm-design/sw` | **SW** 설치형·도면 SW UI. SW 일반 모드(`SWHeader`·`SWPopup`·`SWFooter`)와 SW 뷰어 모드(`SWViewer*`), 공통 범위 `SWTheme`. `@hm-design/ui`와 독립 | `.`, `/styles.css` | SW | `packages/sw/ai/` | +| `@hm-design/org-chart` | **OrgChart** Core(Vanilla, Shadow DOM, 데이터·배치·상호작용) | `.`, `/style.css`, `/engine.css`, `/browser` | OrgChart | `packages/org-chart/ai/` | +| `@hm-design/org-chart-react` | OrgChart React Wrapper. Core `@hm-design/org-chart`에 의존하고, 선택 Entry `/hm-dialog`만 `@hm-design/ui`(optional peer)를 사용 | `.`, `/hm-dialog` | OrgChart | `packages/org-chart-react/ai/` | +| `@hm-design/center-graphic` | CENTER 그래픽(제목·정보·노선/공간·시설물). 내부 검토 범위, License 미확정 | `.`, `/reference`, `/style.css` | Center Graphic | 없음(README) | + +다른 프로젝트에서의 설치는 [외부 설치 가이드(Git Submodule + npm Workspace)](docs/guidelines/external-install-submodule.md)를 따릅니다. ## Navigation 정책 @@ -28,7 +42,7 @@ Storybook은 기존 HM Component·Pattern·Theme·Variant·State·Interaction을 최신 [Generic Status Error](docs/reports/generic-status-error-token-2026-10-11.md)는 `#B3261E` / Provisional이며 기존 Destructive `#D32F2F`를 유지합니다. [Disabled Input Label](docs/reports/disabled-input-label-2026-10-11.md)은 승인된 Input Story 소비 범위 60%, 공통 Label은 50%입니다. [Background Gradient 기록](docs/reports/brown-orange-background-gradients-2026-10-11.md)과 [현재 계약](docs/guidelines/runtime-theme-contract.md)은 Green·Brown·Orange 공통 배경을 구분하며, Foundation Color의 Button 전용 미리보기는 제거하고 실제 Button·Dashboard Gradient는 유지합니다. Focus `#266651`은 시험 적용 상태입니다. -Node.js는 lockfile의 `^20.19.0 || >=22.12.0` 조건을 충족해야 합니다(Node 21 제외). 이번 재현 환경은 **Node 20.20.1 / npm 10.8.2**입니다. Node 설치 시 제공되는 npm과 PATH를 확인하고, 재현 시에는 검증한 버전을 사용합니다. 최초 설치에는 공식 Gitea와 npm 레지스트리 접근이 필요합니다. +Node.js는 lockfile의 `^20.19.0 || >=22.12.0` 조건을 충족해야 합니다(Node 21 제외). 검증 기록은 **Node 20.20.1 / npm 10.8.2**(2026-10-11)와 **Node 22.23.2 / npm 10.9.8**(2026-10-20, SW 포함 전체 build·Storybook build)입니다. Docker 이미지는 `node:24-alpine`에서 빌드하며 Docker 경로는 아직 실제 빌드로 검증하지 않았습니다. Node 설치 시 제공되는 npm과 PATH를 확인하고, 재현 시에는 검증한 버전을 사용합니다. 최초 설치에는 공식 Gitea와 npm 레지스트리 접근이 필요합니다. ```powershell git clone https://gitea.hmac.kr/b25027/HMDesign.git @@ -71,7 +85,7 @@ docker compose up -d --build ### Gitea Actions 배포 -`.gitea/workflows/deploy-storybook.yml`은 `main`에 push되거나 수동 실행될 때 해당 실행 커밋의 소스 archive를 SSH로 배포 서버에 보내고, 서버에서 Docker build와 Compose 갱신을 수행합니다. 기존 Git 작업 트리는 건드리지 않고 빌드는 서버에서 이뤄지며, 빌드 산출물은 Actions Runner에서 전송하지 않습니다. 실행 커밋별 소스는 `.storybook-deploy/releases/`에 보관하고 서비스는 배포 서버의 **6024 포트**를 사용합니다. 새 이미지 빌드가 끝난 뒤 Compose가 컨테이너를 교체하므로 빌드 중에는 현재 서비스를 유지합니다. +`.gitea/workflows/deploy-storybook.yml`은 `main`에 push되거나 수동 실행될 때 해당 실행 커밋의 소스 archive를 SSH로 배포 서버에 보내고, 서버에서 Docker build와 Compose 갱신을 수행합니다. 기존 Git 작업 트리는 건드리지 않고 빌드는 서버에서 이뤄지며, 빌드 산출물은 Actions Runner에서 전송하지 않습니다. 실행 커밋별 소스는 `.storybook-deploy/releases/`에 보관하고 서비스는 배포 서버의 **6024 포트**를 사용합니다. 새 이미지 빌드가 끝난 뒤 Compose가 컨테이너를 교체하므로 빌드 중에는 현재 서비스를 유지합니다. 따라서 웹 Storybook(`https://design.hmac.kr/`)은 `main` 배포본이며, `main`에 병합되지 않은 브랜치(예: SW 패키지 작업 브랜치)의 Story는 표시되지 않습니다. 저장소 Actions Variables에 `DEPLOY_HOST` (`10.13.10.4`), `DEPLOY_USER` (`user`), `DEPLOY_PATH` (`/home/user/services/HMDesign`), `DEPLOY_PORT` (`22`), `DEPLOY_KNOWN_HOSTS` (배포 서버의 검증된 SSH host key)를 설정하고, Actions Secret에 `DEPLOY_SSH_KEY`를 등록합니다. 배포 서버 계정은 지정한 경로에 `.storybook-deploy/releases/`를 만들고 Docker Engine/Compose plugin을 실행할 권한이 필요합니다. Actions Runner는 SSH와 SCP로 배포 서버에 접속할 수 있어야 합니다. @@ -95,6 +109,9 @@ npm run dev:publisher-example import { Button } from "@hm-design/ui" import { CenterTitle, TunnelFacility } from "@hm-design/center-graphic" import { DataTable, FilterBar, useDataTable } from "@hm-design/ui" // Patterns: docs/patterns/ +import { SWTheme, SWHeader, SWFooter } from "@hm-design/sw" // SW 일반 모드 +import { SWViewerHeader, SWViewerPanel } from "@hm-design/sw" // SW 뷰어 모드 +import { OrgChart } from "@hm-design/org-chart-react" // Core: @hm-design/org-chart ``` ```css @@ -107,9 +124,11 @@ import { DataTable, FilterBar, useDataTable } from "@hm-design/ui" // Patterns: 별도 React 앱은 [Tailwind v4 검색 범위 가이드](docs/guidelines/runtime-portability.md#21-tailwind-v4-소비자-검색-범위)를 확인합니다. `source("./")`는 CSS 위치에 따라 범위가 달라지며 HM `tailwind.css`의 명시 source를 유지해야 합니다. 공개 package Theme는 동봉된 `dist/fonts/`를 상대 URL로 참조합니다. 개발 저장소·포터블 ZIP·React 소비자·단일 HTML의 차이는 [폰트·Asset 경로](docs/guidelines/runtime-portability.md#41-noto-sans-kr-경로-실행-환경별-확인)를 따릅니다. +SW는 Tailwind 없이 앱 진입점에서 `import "@hm-design/sw/styles.css"`를 한 번 추가합니다. 한 화면에서는 SW 일반 모드와 뷰어 모드 중 하나를 고르고, 글꼴 등 토큰은 가장 바깥 ``에서 바꿉니다([SW 사용 안내](packages/sw/ai/AI_USAGE.md)). SW와 Web UI의 기본 글꼴은 모두 Noto Sans KR입니다(SW는 2026-10-20 Dotum 기본값을 철회하고 확정). 글꼴 토큰은 패키지마다 따로 쓰며 서로의 글꼴 설정을 복사하지 않습니다. OrgChart는 Core CSS 두 개(`@hm-design/org-chart/engine.css`, `/style.css`)의 URL을 `stylesheetUrls`로 전달합니다(Shadow DOM, [OrgChart React README](packages/org-chart-react/README.md)). + 화면 생성 Reference: [Navigation 선택 근거](docs/guidelines/navigation-single-mode.md#선택-근거), [GNB Desktop·Mobile 구성](docs/patterns/gnb.md#8-desktop--mobile)과 [내부 Sidebar](docs/patterns/gnb.md#15-gnb-only-sidebar-composition-2026-10-08), [FilterBar 조회·초기화 소비 예제](docs/patterns/filter-bar.md#61-조회-버튼으로-적용하는-소비-예제). 일반 업무 목록의 모드를 임의 확정하거나 FilterBar에 조회 API가 있다고 가정하지 않습니다. -루트 `package.json`의 `workspaces`(`packages/*`)로 연결됩니다. 확인: `npm run typecheck`, `npm run build`. 두 패키지는 `private: false`이며 ESM JS·타입 선언·CSS를 `dist`에서 export합니다. `npm run build:packages`로 재빌드할 수 있고, Registry publish 이력은 Git 기반 테스트 공유의 검증 범위에 포함하지 않습니다. +루트 `package.json`의 `workspaces`(`packages/*`)로 연결됩니다. 확인: `npm run typecheck`, `npm run build`. 위 [패키지 구성](#패키지-구성)의 5개 패키지는 모두 private이 아니며 ESM JS·타입 선언·CSS를 `dist`에서 export합니다. `npm run build:packages`로 재빌드할 수 있고, Registry publish 이력은 Git 기반 테스트 공유의 검증 범위에 포함하지 않습니다. ## 파일 위치 @@ -120,6 +139,11 @@ import { DataTable, FilterBar, useDataTable } from "@hm-design/ui" // Patterns: - `packages/ui/src/theme/primitives.css`, `packages/ui/src/theme/default.css`: Default JSON에서 생성한 package fallback과 Semantic/shadcn 연결 - `packages/ui/src/theme/.css`: 컴포넌트별 Theme 매핑과 상태 스타일 - `packages/ui/src/theme.css`: Theme CSS 진입점, `packages/ui/src/tailwind.css`: Tailwind 쪽 설정 +- `packages/sw/` (`@hm-design/sw`): SW 일반 모드·뷰어 모드 컴포넌트(`src/components/`), SW Theme CSS(`src/theme/`), 패키지 테스트(`tests/`), 소비 AI 지침(`ai/`) +- `src/sw/`: SW Storybook(`SW` 그룹), `docs/sw/`: SW 설계·Figma 매핑·검증 기록 +- `packages/org-chart/` (`@hm-design/org-chart`), `packages/org-chart-react/` (`@hm-design/org-chart-react`): OrgChart Core와 React Wrapper +- `src/org-chart/`: OrgChart Storybook(`OrgChart` 그룹), `docs/org-chart/`: 디자인 승인·AI 생성 정책·구현 보고 +- `docs/ai/`: 패키지 `ai/` 공통 지침 원본(`npm run sync:ai-docs`, `npm run check:ai-docs`) - `packages/center-graphic/` (`@hm-design/center-graphic`): CENTER 그래픽(제목·정보·노선/공간·시설물), `@hm-design/ui`에 의존하지 않음 - `src/center/`: CENTER Storybook (`Center Graphic` 그룹) - `docs/center-graphic/`: CENTER 구현 기준 문서 @@ -134,7 +158,8 @@ import { DataTable, FilterBar, useDataTable } from "@hm-design/ui" // Patterns: - `docs/components/`: 컴포넌트별 현재 구현 기준 문서 - `public/fonts/`: 기존 자료의 Noto Sans KR 글꼴과 라이선스 - `docs/guidelines/`: 프로젝트 지침·구현 원칙·Theme Token·적용/배포 가이드 -- 로컬 검증·감사·진단 자료는 Git에서 제외합니다. 과거 증거 경로는 로컬 보관 기록이며 Clone에서 열 수 있는 링크가 아닙니다. +- 로컬 검증·감사·진단 자료는 Git에서 제외하는 것이 원칙입니다(`test-results/`, `_local/`, `*.log` 등 `.gitignore`). 과거 증거 경로는 로컬 보관 기록이며 Clone에서 열 수 있는 링크가 아닙니다. + - **현재 상태와의 불일치(2026-10-20 기준, 정리 정책 미결정):** `docs/sw/*-qa*/` 등에는 SW 작업의 QA 증거(스크린샷·JSON, 약 600개 파일·40MB)가 Git에 포함되어 있습니다. 반대로 `docs/org-chart/` 보고서 일부는 Git에서 제외된 `test-results/` 증거를 링크합니다(`node scripts/check-doc-links.mjs`의 missing path). 두 경우 모두 기록 보존을 위해 삭제·링크 제외 없이 유지하며, 보관 위치는 별도로 결정합니다. ## 참고 범위 @@ -155,6 +180,9 @@ Component Mapping은 Semantic/Theme palette를 참조하며 기본 API로 HM 스 - Navigation: [단일 모드 정책](docs/guidelines/navigation-single-mode.md) - Dashboard: [Dashboard Pattern](docs/patterns/dashboard-layout.md) - CENTER: [CENTER 구현·사용 범위](docs/center-graphic/README.md) +- SW: [SW 패키지 README](packages/sw/README.md), [SW AI 사용 안내](packages/sw/ai/AI_USAGE.md) +- OrgChart: [최종 디자인 승인 기록](docs/org-chart/design-approval.md), [AI 조직도 자동 생성 정책](docs/org-chart/ai-page-generation-rules.md) +- 외부 프로젝트 설치: [Git Submodule + npm Workspace](docs/guidelines/external-install-submodule.md) - 프로젝트·서비스 적용: [프로젝트 지침](docs/guidelines/프로젝트-지침.md), [개발 적용](docs/guidelines/개발-적용-가이드.md) ## Package Registry / Publish (별도 내부 운영 정보) diff --git a/docs/ai/AGENTS_SNIPPET.md b/docs/ai/AGENTS_SNIPPET.md new file mode 100644 index 0000000..cd3372d --- /dev/null +++ b/docs/ai/AGENTS_SNIPPET.md @@ -0,0 +1,16 @@ +## HMDesign 디자인 시스템 + + + +HMDesign 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart | 혼합(영역별로 적기, SW 영역은 모드까지) + +화면·컴포넌트를 구현하거나 수정하기 전에 다음을 지킨다. + +1. 설치된 HMDesign 패키지의 공통 가이드를 먼저 읽는다: `node_modules/@hm-design/<설치된 패키지>/ai/AI_GUIDE.md` (`ui`, `sw`, `org-chart`, `org-chart-react` 중 아무 사본이나 내용이 같다). +2. 위 "사용 유형"이 없고 요청으로도 정할 수 없으면 코드 작성 전에 "어떤 HMDesign 디자인 시스템을 사용하시겠습니까? 1. Web 2. SW (일반 모드 / 뷰어 모드) 3. OrgChart 4. 혼합 사용"을 묻는다. SW인데 모드(일반/뷰어)가 불명확하면 "SW 화면을 어떤 모드로 만들까요? 1. SW 일반 모드 2. SW 뷰어 모드"를 묻는다(근거는 `@hm-design/sw/ai/AI_USAGE.md` §0). 정해져 있으면 다시 묻지 않는다. +3. 선택한 패키지의 `ai/AI_USAGE.md` → `COMPONENT_CATALOG.md` → `DESIGN_RULES.md` → `COMPOSITION_PATTERNS.md` 순으로 필요한 절을 읽는다. + - Web: `node_modules/@hm-design/ui/ai/` + - SW: `node_modules/@hm-design/sw/ai/` (뷰어 모드는 `AI_USAGE.md` §0 다음 `VIEWER.md`) + - OrgChart: `node_modules/@hm-design/org-chart/ai/` (React는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`도) +4. 선택한 유형·모드 안에서 기존 컴포넌트 → Props → 조합 → (없는 부분만) 그 모드의 토큰·스타일로 신규 → (참고 값도 없으면) HMDesign 공통 규칙과 조화되게 구성하고 "AI 구성 값"으로 보고하는 순서를 지킨다. 패키지 파일 수정·내부 경로 import·구현 복사는 하지 않는다. +5. Web / SW 일반 / SW 뷰어 / OrgChart 스타일을 영역별로 분리하고(한 SW 화면에 일반·뷰어 컴포넌트를 섞지 않음), 완료 후 AI_GUIDE의 결과 보고 형식으로 유형·모드, 재사용·신규·토큰·AI 구성 값·검증·NOT VERIFIED를 보고한다. diff --git a/docs/ai/AI_GUIDE.md b/docs/ai/AI_GUIDE.md new file mode 100644 index 0000000..a9a6b58 --- /dev/null +++ b/docs/ai/AI_GUIDE.md @@ -0,0 +1,275 @@ +# HMDesign AI 작업 가이드 — 공통 진입점 + +> 이 파일은 HMDesign 패키지(`@hm-design/ui`, `@hm-design/sw`, `@hm-design/org-chart`, `@hm-design/org-chart-react`)의 `ai/AI_GUIDE.md`에 **같은 내용으로** 들어 있습니다. 원본은 HMDesign 저장소 `docs/ai/AI_GUIDE.md`이며 패키지 사본은 `npm run sync:ai-docs`로 갱신합니다. 사본을 직접 고치지 않습니다. + +사용자가 "HMDesign 패키지를 기준으로 화면을 구현해 주세요", "HMDesign SW로 화면을 만들어 주세요"처럼 요청하면 AI 코딩 도구는 이 파일의 1~7단계를 순서대로 따릅니다. 이 문서와 각 패키지의 `ai/` 문서는 실제 공개 API·CSS에서 확인한 내용만 적습니다. 여기에 없는 컴포넌트·Props·토큰은 없는 것으로 취급합니다. + +## 0. 읽는 순서 + +1. **이 파일**(어느 패키지의 사본이든 같음) +2. 선택한 패키지의 `ai/AI_USAGE.md` → `ai/COMPONENT_CATALOG.md` → `ai/DESIGN_RULES.md` → `ai/COMPOSITION_PATTERNS.md` (SW 뷰어 모드는 `AI_USAGE.md` §0 다음에 `ai/VIEWER.md`를 먼저 읽고 카탈로그의 뷰어 절을 봅니다) +3. API가 의심스러우면 그 패키지의 `dist/*.d.ts`(공개 진입점에서 export되는 것만) + +| 유형 | 패키지 | 지침 위치(설치 후) | JS 진입점 | CSS | +|---|---|---|---|---| +| ① Web UI | `@hm-design/ui` | `node_modules/@hm-design/ui/ai/` | `@hm-design/ui`, `@hm-design/ui/theme` | `@hm-design/ui/tailwind.css` + `@hm-design/ui/theme.css`(Tailwind CSS 4 필요), 선택 `@hm-design/ui/dashboard-status.css` | +| ② SW UI — 일반 모드 | `@hm-design/sw` | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 모드 선택 → 일반 모드 문서) | `@hm-design/sw` | `@hm-design/sw/styles.css` | +| ② SW UI — 뷰어 모드 | `@hm-design/sw`(같은 패키지) | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 → `VIEWER.md`) | `@hm-design/sw` | `@hm-design/sw/styles.css`(같은 파일) | +| ③ OrgChart | `@hm-design/org-chart`(Core) + React면 `@hm-design/org-chart-react` | `node_modules/@hm-design/org-chart/ai/` (React 어댑터 안내는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`) | `@hm-design/org-chart`, `@hm-design/org-chart-react`, 선택 `@hm-design/org-chart-react/hm-dialog` | `@hm-design/org-chart/engine.css`, `@hm-design/org-chart/style.css`(URL로 전달 — Shadow DOM 안에 로드) | +| 기타 | `@hm-design/center-graphic` | AI 지침 없음. 패키지 `README.md`만 | `@hm-design/center-graphic` | 자동 import | + +모든 패키지는 서로 독립입니다(`@hm-design/org-chart-react`만 Core에 의존, `@hm-design/ui`는 `/hm-dialog`를 쓸 때만 선택 peer). React·React DOM `^19`는 peer입니다. + +## 1단계. 사용 목적 확인 + +화면 구현 요청을 받으면 코드 작성 전에 **사용 유형**을 정합니다. 유형은 다음 넷이고, SW는 다시 두 모드로 나뉩니다. + +1. Web +2. SW — **SW 일반 모드**(편집용: `SWHeader`, `SWPopup` …) / **SW 뷰어 모드**(보기 전용: `SWViewerHeader`, `SWViewerMenu`, `SWViewerPanel` …) +3. OrgChart +4. 혼합 사용(영역마다 위 유형 하나) + +다음 순서로 판단하고, **판단되면 다시 묻지 않습니다.** + +1. 소비 프로젝트의 `AGENTS.md`·`CLAUDE.md` 등에 `HMDesign 사용 유형:` 설정이 있으면 그대로 따릅니다(§9). 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: …)`입니다. 값이 `SW`뿐이면 유형은 정해진 것이고 모드만 아래 4번으로 정합니다. +2. 사용자 요청이 유형을 분명히 말하면 그대로 따릅니다. + - Web: 웹 화면, 관리자·업무 화면, 목록·검색·Form, 대시보드, GNB/LNB, Dialog, Table … + - SW: 데스크톱 SW, 도면·CAD, SW Header, 툴바, 레이어/색상/선스타일, 속성창·SW Popup, 뷰어 … + - OrgChart: 조직도, 조직 계층·직원 카드, 조직 JSON/CSV/Excel 시각화 … + - 둘 이상이 함께 나오면 ④ 혼합(예: "업무 화면 안에 조직도" = Web + OrgChart). +3. 위로 정할 수 없으면 코드 작성 전에 **그대로** 묻습니다. + +> 어떤 HMDesign 디자인 시스템을 사용하시겠습니까? +> +> 1. Web +> 2. SW (일반 모드 / 뷰어 모드) +> 3. OrgChart +> 4. 혼합 사용 + +4. **SW가 정해졌거나 포함됐는데 모드가 불명확하면** 코드 작성 전에 묻습니다. 설정 값(`SW 일반`/`SW 뷰어`)이나 요청이 모드를 분명히 말하면 묻지 않습니다. 판단 근거와 질문 문구는 `@hm-design/sw/ai/AI_USAGE.md` §0을 따릅니다. 유형 질문이 필요한 경우에는 같은 메시지에서 2번 선택 시의 모드도 함께 묻습니다(한 번에 끝냄). + +> SW 화면을 어떤 모드로 만들까요? +> +> 1. SW 일반 모드 — 편집용 Header(`SWHeader`)·속성창·SW Popup +> 2. SW 뷰어 모드 — 보기 전용 Header(`SWViewerHeader`)·뷰어 메뉴·뷰어 패널 + +- "HMDesign SW로 화면을 만들어 주세요"처럼 SW만 말하고 모드 근거가 없으면 유형은 SW로 확정하고 4번의 모드 질문만 합니다. +- `package.json`에 설치된 패키지가 하나뿐이어도 그것만으로 유형을 확정하지 않습니다(설치가 덜 된 상태일 수 있음). 요청 내용과 맞을 때만 근거로 씁니다. SW 모드도 같은 패키지이므로 설치 상태로는 판단하지 않습니다. +- 정해진 유형·모드는 결과 보고(7단계)에 적고, 작업 중에 다른 유형·모드의 컴포넌트·스타일을 임의로 섞지 않습니다(5단계). +- 혼합을 고르면 영역별 패키지(예: "페이지 = Web, 가운데 영역 = OrgChart")를 확인합니다. SW 영역이 있으면 그 영역의 모드(일반/뷰어)까지 정합니다. +- **OrgChart가 포함되고 생성 방식이 없으면** 같은 메시지에서 다음도 묻습니다(이미 말했으면 묻지 않음): "조직도만 기존 페이지에 삽입할까요(Chart Only), 아니면 레이아웃까지 구성한 새 페이지 전체를 생성할까요(Full Page)?" 상세는 `@hm-design/org-chart/ai/AI_USAGE.md` §1. +- 선택한 패키지가 설치되어 있지 않으면 설치가 필요하다고 보고합니다. 다른 HMDesign 패키지나 임의 라이브러리로 대신하지 않습니다. + +## 2단계. 패키지 분석 + +1. `node_modules/@hm-design/<패키지>/package.json`의 `version`·`exports`·`peerDependencies`를 확인합니다. `exports`에 없는 경로(`src/...`, `dist/components/...`)는 import하지 않습니다. +2. 그 패키지의 `ai/` 문서를 §0 순서로 읽습니다. 필요한 절만 읽고 전체 `dist`를 훑지 않습니다. +3. 카탈로그와 실제 `dist/index.d.ts`가 다르면 **`.d.ts`가 기준**입니다. 차이를 결과 보고에 적습니다. +4. 소비 프로젝트의 기존 CSS 진입점·폰트·빌드 도구(Vite 등)·이미 쓰는 디자인 시스템을 확인합니다. 기존 프로젝트의 디자인 시스템을 바꾸지 않습니다. + +## 3단계. 화면 분석 + +요청 화면을 항목으로 나누고 항목마다 판단을 기록합니다. + +| 요청 항목 | 판단 | 근거(카탈로그의 실제 이름) | +|---|---|---| +| 예: 상단 메뉴 | 재사용 | Web `GNB` + `GNBMobileMenu` | +| 예: 레이어 선택(SW 일반) | 재사용 | SW `SWHeaderLayerMenu` | +| 예: 상단 메뉴(SW 뷰어) | Props 설정 | SW `SWViewerHeader`의 `groups` | +| 예: 검색 상자(SW 일반) | 신규 | SW 카탈로그에 없음 → `SWHeaderInput` 재사용 + 일반 모드 토큰 | + +판단 값은 **재사용**(그대로) / **Props 설정**(기존 Variant·Props) / **조합**(기존 컴포넌트 배치) / **신규**(소비 프로젝트에 최소 구현) 중 하나입니다. + +## 4단계. UI 구현 + +우선순위(위가 먼저): + +1. 선택 패키지의 기존 컴포넌트·Pattern을 그대로 사용 +2. 기존 Variant / Props / Callback으로 해결 +3. 기존 컴포넌트 조합(배치용 CSS만 소비 프로젝트에 작성) +4. 조합으로 안 되는 부분만 **소비 프로젝트에** 새로 구현 — 아래 "없는 컴포넌트 처리 3단계" + +모든 단계는 **1단계에서 정한 유형·모드 안에서만** 찾습니다. SW 뷰어 모드는 뷰어 컴포넌트(`SWViewer*`)를, SW 일반 모드는 일반 컴포넌트(`SWHeader`·`SWPopup` …)를 먼저 씁니다. 다른 모드에 같은 역할의 컴포넌트가 있어도 가져오지 않습니다. + +### 없는 컴포넌트 처리 3단계 + +| 단계 | 조건 | 할 일 | 결과 보고 | +|---|---|---|---| +| ① 재사용 | 선택 유형·모드에 컴포넌트·Variant·Props·조합이 있음 | 그대로 사용(위 1~3) | 재사용 / Props 설정 / 조합 | +| ② 같은 모드 스타일로 신규 | 컴포넌트는 없지만 그 모드의 토큰·확인값·상태 표현이 있음 | 소비 프로젝트에 최소 구현. 그 유형·모드의 토큰과 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 크기·색·상태 표현만 읽고, 안쪽에는 그 모드의 공개 컴포넌트를 재사용 | 신규 · 읽은 토큰 목록 | +| ③ HMDesign과 조화되는 새 스타일 | ②로 참고할 토큰·확인값이 없음 | HMDesign 공통 규칙(아래)과 선택 유형·모드의 가장 가까운 토큰을 기준으로 새 스타일을 구성 | 신규 · **"AI 구성 값 — 디자인 확인 필요"** 목록(속성·값·이유) | + +- 토큰·확인값이 있으면 ②에서 반드시 그것을 씁니다. ③은 참고할 값이 정말 없을 때만이며, ③에서 만든 값은 확정 디자인이 아니라 확인 대상입니다. 화면 인상을 크게 바꾸는 값(주요 색·Header 높이 등)이 필요하면 구현 전에 사용자에게 먼저 확인합니다. +- 유형·모드별 구체 토큰과 예는 각 패키지 `ai/AI_USAGE.md`에 있습니다. + +규칙: + +- `node_modules` 안 패키지 파일을 수정하지 않습니다. 패키지 `dist` 구현이나 내부 CSS 블록을 복사해 같은 컴포넌트를 다시 만들지 않습니다. +- 이미 있는 컴포넌트와 같은 역할의 컴포넌트를 새로 만들지 않습니다(예: Web에 `Dialog`가 있는데 자체 Modal 작성 금지). +- 토큰·확인값이 있는 속성에 새 값을 만들지 않습니다. 색·크기·간격·radius·그림자는 각 패키지 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 토큰·확인값을 씁니다. 값이 없을 때만 위 ③으로 구성하고 "AI 구성 값"으로 보고합니다(추측한 값을 확정값처럼 쓰지 않음). +- 공통: Font Weight는 400 / 500 / 700만 씁니다(600 없음). Light/Dark 분기를 만들지 않습니다. 새 컴포넌트 CSS에 `html`·`body`·`*` 전역 규칙을 넣지 않습니다. 새 class는 소비 프로젝트 접두사(예: `app-`)를 씁니다. +- 요청에 없는 메뉴·통계·설명·다운로드·외부 API·AI 입력 UI를 추가하지 않습니다. 필요해 보이면 제안으로만 보고합니다. + +### 없는 UI를 같은 스타일로 만들 때 확인할 항목 + +신규 항목마다 아래를 선택 유형·모드의 문서에서 찾아 그대로 적용합니다(②). 찾을 수 없는 항목은 ③으로 구성하고 "AI 구성 값 — 디자인 확인 필요"로 보고합니다. + +| 항목 | Web(`@hm-design/ui`) | SW 일반 모드(`@hm-design/sw`) | SW 뷰어 모드(`@hm-design/sw`) | OrgChart | +|---|---|---|---|---| +| 토큰·CSS 변수 | `--hm-sem-*`, `--hm-color-*`, `--hm-radius-*`(`:root`) | `--hm-sw-header-*`, `--hm-sw-property-*`(`SWTheme` 범위) | `--hm-sw-viewer-*` + 두 Header가 공유하는 `--hm-sw-header-document-*`·`object-*`·`property-*`(SW 범위) | `--hm-orgchart-*` 공개 입력(Shadow DOM 상속) | +| 색·Typography | DESIGN_RULES §2·§3 | DESIGN_RULES §2·§3 | VIEWER.md `SWViewerHeader`·디자인 변경 절 | DESIGN_RULES §2·§3 | +| 크기·여백 | DESIGN_RULES §4 | DESIGN_RULES §1 | VIEWER.md 디자인 변경 절(52px Header 등 실측값) | 카드·간격 변경 금지(승인 디자인) | +| Border·Radius·배경·그림자 | DESIGN_RULES §2·§4 | DESIGN_RULES §2·§8 | VIEWER.md `SWViewerPanel` 절(프레임은 SWPopup과 같음) | 공개 입력만 | +| 아이콘 | `lucide-react`(패키지 의존성) | 패키지 내장 SVG만, 새 아이콘은 사용자 제공 | 프로그램 제공 16px `currentColor` 아이콘, 외곽선은 `SWViewerIcon` | Core 내장 | +| 스크롤바 | `ScrollArea`(Radix), DESIGN_RULES §6 | 전용 디자인 없음 — 브라우저 기본(AI_USAGE §2) | 전용 디자인 없음 — 패널 본문 스크롤은 `SWViewerPanel` | Core 내부 Zoom/Pan | +| Hover / Active / Focus / Disabled | DESIGN_RULES §5 | DESIGN_RULES §4 | VIEWER.md `SWViewerHeader` 절 상태 표현 | Core 내장 | +| Popup·Panel | `Dialog`·`AlertDialog`·`Sheet`·`Drawer`·`Popover` | `SWPopup` + `SWPopupSection`/`SWPopupRow` | `SWViewerPanel`(+ `modal`) + `SWViewerSection`/`SWViewerField` | Core 팝업 / HM Dialog / 어댑터 | +| 동작·키보드 | Radix 동작 유지 | 카탈로그 "공통 키보드" | VIEWER.md `SWViewerMenu`·`SWViewerPanel` 키보드 | Core 키보드(Pan, Alt+M 이동 등) | + +## 5단계. 패키지별 디자인 분리 (혼합 사용 포함) + +각 패키지의 스타일 범위는 다음과 같습니다(실제 CSS 기준). + +| 패키지 | 스타일이 적용되는 범위 | 주의 | +|---|---|---| +| Web | `theme.css`의 토큰은 `:root, [data-hm-theme]`. `tailwind.css`는 Tailwind base에서 `*`(border·outline), `body`(배경·글자), `html`(글꼴)을 **문서 전체에** 적용. 앱이 import하는 `tailwindcss`의 Preflight도 전역 | Web CSS를 넣은 문서에서는 다른 영역에도 전역 초기화가 적용됨 | +| SW(일반·뷰어 공통) | 토큰은 `.hm-sw-header`와 `.hm-sw-theme`에만 정의(뷰어 토큰 `--hm-sw-viewer-*`도 같은 범위). 전역 선택자 없음. `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`은 자기 root에 `hm-sw-theme`를 가짐. 토큰 기본값은 가장 바깥 SW 범위에서만 선언되고 안쪽 SW 범위는 상속(변경은 가장 바깥 범위의 `style`, SW `AI_USAGE.md` §3.1) | 일반 모드의 Header 밖 SW 부품은 반드시 `` 안 | +| OrgChart | Core가 자기 open Shadow DOM에만 CSS 로드. 호스트 CSS selector는 안쪽에 닿지 않고 **Custom Property 상속만** 통과 | 호스트 class로 카드 모양을 바꾸려 하지 않음 | + +혼합 규칙: + +1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 Noto Sans KR(`--hm-sw-header-font-family`, 2026-10-20 확정, Dotum 기본값 철회), Web 기본 글꼴도 Noto Sans KR(`--hm-font-family-base`)이지만 토큰은 각자 쓰고, OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 토큰·값을 다른 영역에 복사하지 않습니다. +2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) + - OrgChart Full Page의 바깥 레이아웃 = Web(또는 요청된 패키지) + - OrgChart React의 직원 팝업 = 선택 `@hm-design/org-chart-react/hm-dialog`(Web `Dialog`, Web Theme CSS 필요) +3. 패키지 class(`hm-sw-*`, `hm-orgchart-*`, Web `data-slot`)를 소비 코드에서 덮어쓰지 않습니다. 배치는 `className`·`style`과 소비 프로젝트 class로 합니다. +4. **Web + SW를 한 문서에 함께 쓰면** Web의 전역 base(위 표)가 SW 화면에도 적용됩니다. SW는 자기 범위에서 버튼 등을 초기화하지만 이 조합의 시각 결과는 패키지에서 검증된 적이 없습니다(NOT VERIFIED). 이 조합이면 브라우저에서 SW 부품의 글꼴·테두리·배경을 직접 확인하고 차이를 보고합니다. 가능하면 Web CSS가 없는 SW 전용 화면(별도 entry)으로 분리합니다. +5. Web Scoped Theme(`[data-hm-theme]`)는 body Portal(Select·Popover·DatePicker 팝업)에 전달되지 않습니다. Web 영역만 다른 테마로 바꾸려면 Global Theme를 쓰거나 차이를 보고합니다. + +### SW 일반 모드 ↔ 뷰어 모드 분리 + +SW 일반 모드와 뷰어 모드는 같은 패키지·같은 CSS 파일이지만 **서로 다른 디자인**입니다. 한 화면(한 Header 영역)에는 한 모드만 씁니다. + +1. 일반 모드 화면: `SWHeader`·개별 컨트롤·`SWPopup`·`SWHeaderPropertyPanel`·`SWToolButton`/`SWToolGroup`. `SWViewer*` 컴포넌트와 `--hm-sw-viewer-*` 토큰을 쓰지 않습니다. +2. 뷰어 모드 화면: `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`과 뷰어 패널 컨트롤(`SWViewerSection`·`SWViewerField` …). `SWHeader`에 뷰어 메뉴를 억지로 넣거나 `SWPopup`을 뷰어처럼 재스타일하지 않습니다. +3. 패키지가 실제로 공유하는 부분은 혼합이 아닙니다: `SWViewerPanel`은 `SWPopup` 프레임을 그대로 렌더링하고, 두 Header는 파일명·객체 수정·속성 면 토큰(`--hm-sw-header-document-*`·`object-*`·`property-*`)을 공유합니다. 소비 코드가 이 공유를 흉내 내 다른 모드 부품을 섞어도 된다는 뜻은 아닙니다. +4. 프로그램이 두 모드를 모두 가지면 모드 전환 시 Header 컴포넌트를 바꿔 끼웁니다(파일·패널 상태는 프로그램 상태로 유지). 세부는 `@hm-design/sw/ai/AI_USAGE.md` §0과 `VIEWER.md`. + +## 6단계. 디자인 검증 + +소비 프로젝트에서 실제로 실행한 것만 PASS로 적습니다. + +1. Typecheck(`tsc --noEmit` 등)와 Production Build +2. 브라우저 렌더링: 재사용한 컴포넌트가 HM 외형으로 보이는지(CSS 진입점 누락 확인), 신규 UI가 같은 토큰을 쓰는지 +3. 상태·동작: Hover / Focus(키보드) / Disabled, Popup 열기·닫기·Escape·Focus 복귀, 선택 패키지의 핵심 동작 +4. 폭: Web 390 / 768 / 1280 / 1440px, SW 일반 모드는 대상 창 폭(Header는 반응형 More 포함), SW 뷰어 모드는 대상 창 폭과 항목 `collapseBelow`·`iconOnlyBelow` 경계 전후(More 이동·아이콘만 표시), OrgChart는 캔버스 크기·초기 Fit +5. 혼합이면 영역 경계에서 스타일 침범이 없는지, SW면 선택하지 않은 모드의 컴포넌트·토큰이 섞이지 않았는지(§5) +6. 실행하지 못한 항목은 `NOT VERIFIED`로 남깁니다. + +## 7단계. 결과 보고 형식 + +```md +## HMDesign 적용 결과 +- 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart(Chart Only|Full Page) | 혼합(영역별: …) +- 유형·모드 판단 근거: 프로젝트 설정 | 요청 문구 "…" | 사용자 답변 +- 패키지·버전: @hm-design/ui 0.1.0, … +- 재사용한 컴포넌트: …(Props 설정 포함) +- 조합한 부분: … +- AI가 새로 구현한 부분: 파일 경로 · 이유(카탈로그에 없음) · 안쪽에서 재사용한 컴포넌트 +- 적용한 디자인 토큰: --hm-… (신규 UI가 읽은 것) +- AI 구성 값 — 디자인 확인 필요: 없음 | 속성 · 값 · 이유(4단계 ③) +- 카탈로그와 .d.ts 차이: 없음 | … +- 검증: Typecheck PASS · Build PASS · 브라우저(폭/상태) … · NOT VERIFIED: … +- 제안(구현하지 않음): … +``` + +## 8. 상황별 예시 + +### 예시 A — Web 화면 (목록 + 검색) + +- 읽기: `node_modules/@hm-design/ui/ai/` → COMPOSITION_PATTERNS "목록 화면" +- 재사용: `LNB`(또는 `GNB`) 중 **하나**, `PageHeader`, `Card`, `FilterBar` + `FilterBarSearch` + `FilterBarActions`, `DataTable` + `useDataTable`, `Button` +- 신규(필요 시만): 카탈로그에 없는 콘텐츠 블록 → 소비 프로젝트 컴포넌트, `--hm-sem-*` 토큰과 `Card` 재사용 + +```css +/* src/index.css */ +@import "tailwindcss"; +@import "@hm-design/ui/tailwind.css"; +@import "@hm-design/ui/theme.css"; +``` + +```tsx +import { Button, Card, CardContent, FilterBar, FilterBarActions, FilterBarSearch, PageHeader, PageHeaderContent, PageHeaderTitle } from "@hm-design/ui" +``` + +### 예시 B0 — "HMDesign SW로 화면을 만들어 주세요" (모드 미지정) + +- 유형은 SW로 확정, 모드 근거가 없으므로 코드 작성 전에 1단계 4번의 모드 질문만 합니다. 답에 따라 B1 또는 B2로 진행합니다. +- 소비 프로젝트 설정이 `HMDesign 사용 유형: SW 일반` 또는 `SW 뷰어`이면 묻지 않고 바로 B1/B2입니다. + +### 예시 B1 — SW 일반 모드 (편집 Header + 도구 막대 + 설정 Popup) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(일반 모드) → COMPOSITION_PATTERNS "6. 파일 열기 + 도구 막대", 예제 `ai/examples/ExampleF-ViewerToolbar.tsx`(파일 이름의 Viewer는 과거 명칭이며 일반 모드 `SWHeader` 예제) +- 재사용: `SWHeader`(`documentOpenPlacement="header"`, `controls`, `tools`), `SWToolGroup` + `SWToolButton`(Model/Layout 탭, Fit 등), `SWPopup` + `SWPopupSection` + `SWPopupRow` + `SWHeaderInput`(설정 Popup), 로고(홈) 버튼 메뉴는 `SWHeader`의 `homeMenu` + `SWRecentFiles`(**일반 모드 전용**, 예제 `ExampleG-HomeMenu.tsx`) +- 신규: SW에 없는 기능(예: 검색) → 소비 프로젝트 컴포넌트, `` 안, `--hm-sw-header-*` 토큰, 안쪽 입력은 `SWHeaderInput`(예제 `ExampleD-SearchExtension.tsx`) + +```tsx +import { SWHeader, SWPopup, SWTheme, SWToolButton, SWToolGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 B2 — SW 뷰어 모드 (뷰어 Header + 메뉴 + 패널) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(뷰어 모드) → `VIEWER.md`, 예제 `ai/examples/ExampleH-ViewerMode.tsx` +- 재사용: `SWViewerHeader`(`groups` 데이터: `button`·`toggle`·`menu`·`tabs`·`switch`·`custom` 항목, `onCommand`, `trailing`에 `SWViewerStatus`·`SWViewerHeaderButton`), Dropdown은 `type: "menu"` 항목의 `entries`(단독·우클릭은 `SWViewerMenu`), 팝업은 `SWViewerPanel` + `SWViewerSection`·`SWViewerField`·`SWViewerSwitch`·`SWViewerSlider`·`SWViewerInput`·`SWViewerButton` +- 신규: 뷰어에 없는 패널 콘텐츠 → 소비 프로젝트 컴포넌트를 `SWViewerPanel`의 `children`에, 안쪽은 `SWViewerField` + `SWViewerInput` 등, 외형은 `--hm-sw-viewer-*` 토큰 +- 하지 않음: `SWHeader`·`SWPopup`을 뷰어 화면에 섞기, 로고(홈) 메뉴(`SWHomeMenu`·`SWRecentFiles`·`homeMenu`)를 뷰어 화면에 넣거나 비슷하게 만들기(홈 메뉴는 일반 모드 전용), 로고가 없다고 임의 문자·아이콘 넣기, 연결할 명령이 없는 메뉴를 가짜 동작으로 만들기(제외 또는 `disabled` + 미연결 보고) + +```tsx +import { SWViewerHeader, SWViewerPanel, SWViewerSection, SWViewerField, SWViewerSwitch, type SWViewerHeaderGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 C — 조직도만 (Chart Only) + +- 읽기: `node_modules/@hm-design/org-chart/ai/` → COMPOSITION_PATTERNS "1. Chart Only" +- 재사용: React `OrgChart`(`@hm-design/org-chart-react`) 또는 Vanilla `createOrgChart`, 데이터 `JsonOrgChartDataSource` + `validateOrgChartDataset` +- 필수 옵션: `layoutMode="auto"` + `presentationMode="chart-only"`(초기 Fit·직접 휠 Zoom이 기본) +- **추가하지 않음:** 페이지 제목·통계·설명·Zoom 버튼 바·외부 회색 배경·Navigation. Fixed Chart Only는 미지원(`TypeError`) + +```tsx +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" // Vite. 다른 도구는 실제 배포 URL +import coreUrl from "@hm-design/org-chart/style.css?url" +``` + +### 예시 D — Web + OrgChart (Full Page) + +- 영역: 페이지 레이아웃·제목·필터 = Web, 조직도 영역 = OrgChart +- 읽기: Web `ai/` + OrgChart `ai/COMPOSITION_PATTERNS.md` "2. Full Page" +- 재사용: Web `LNB`/`GNB` 중 하나, `PageHeader`, `Card`, `Select`·`Label`(회사 선택 등 요청된 컨트롤만) + OrgChart `OrgChart`(`selectedCompanyIds` 등 Props로 연결) +- 직원 팝업을 Web Dialog로: `import { OrgChart } from "@hm-design/org-chart-react/hm-dialog"` + `employeePopup="hm-dialog"`(Web CSS 진입점 필요) +- 분리: 조직도 카드·색은 OrgChart 기본 유지. Web 토큰을 조직도에 넣지 않음(바꿔야 하면 `--hm-orgchart-*` 공개 입력만) + +## 9. 소비 프로젝트 설정 — AI가 이 지침을 찾게 하기 + +AI 코딩 도구는 보통 **프로젝트 루트의** `AGENTS.md`(Codex 등)·`CLAUDE.md`(Claude Code)·도구별 규칙 파일만 자동으로 읽고 `node_modules`는 읽지 않습니다. 패키지 설치만으로 지침이 자동 적용되지는 않으므로 소비 프로젝트에서 한 번 연결합니다. + +1. 패키지에 들어 있는 `ai/AGENTS_SNIPPET.md`를 루트 `AGENTS.md`(없으면 새로 만듦)에 붙여 넣고 `HMDesign 사용 유형:` 줄을 프로젝트에 맞게 고칩니다. 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: 예 "페이지 = Web, 중앙 = OrgChart")` 중 하나입니다. SW 프로젝트면 모드까지 적어야 AI가 모드를 다시 묻지 않습니다(`SW`만 적으면 모드를 묻습니다). 정하지 않았으면 그 줄을 지워 AI가 1단계에서 묻게 합니다. + ```bash + cat node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md >> AGENTS.md + ``` + (PowerShell: `Get-Content node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md | Add-Content AGENTS.md`. 설치한 아무 HMDesign 패키지의 사본이나 같습니다.) +2. Claude Code는 `CLAUDE.md`에 `@AGENTS.md` 한 줄을 두면 같은 내용을 읽습니다. 다른 도구(Cursor 규칙 등)는 그 도구의 규칙 파일에 같은 내용을 넣습니다. +3. 패키지를 업데이트한 뒤 스니펫이 바뀌었는지 확인합니다(스니펫은 경로 안내만 하므로 보통 그대로 둡니다). + +자동으로 되지 않는 것: 패키지 설치 시 루트 파일 생성(`postinstall` 없음), 도구가 `node_modules`를 스스로 탐색하는 것. 위 연결이 없으면 사용자가 "node_modules/@hm-design/…/ai/AI_GUIDE.md를 먼저 읽어"라고 요청해야 합니다. + +**Git Submodule + npm Workspace로 연결한 경우**(Registry 없이 HMDesign 저장소를 예: `HMDesign/` 폴더에 Submodule로 고정하고 `workspaces`에 `HMDesign/packages/<패키지>`를 등록한 구성): `node_modules/@hm-design/<패키지>`는 `HMDesign/packages/<패키지>`로 연결되므로 지침 위치는 위 표와 같습니다(`HMDesign/packages/<패키지>/ai/`와 같은 파일). 공개 진입점은 `dist/`를 가리키므로 HMDesign 폴더 안에서 `npm ci`와 `npm run build:packages`를 먼저 실행해야 하며, `dist/`가 없으면 Import 오류를 컴포넌트 결함으로 보고하지 말고 빌드 필요로 보고합니다. HMDesign 저장소 루트의 `AGENTS.md`·`CLAUDE.md`는 HMDesign 개발용이므로 소비 프로젝트 지침으로 쓰지 않습니다. + +## 10. 문서 갱신 (HMDesign 저장소 유지보수자) + +컴포넌트를 추가·수정하면 같은 변경에서 해당 패키지 `ai/COMPONENT_CATALOG.md`와 필요한 `DESIGN_RULES.md`·`COMPOSITION_PATTERNS.md`를 갱신하고 `npm run check:ai-docs`를 통과시킵니다. 절차는 저장소 `docs/ai/MAINTAINING.md`(패키지 미포함)에 있습니다. diff --git a/docs/ai/MAINTAINING.md b/docs/ai/MAINTAINING.md new file mode 100644 index 0000000..c7b123d --- /dev/null +++ b/docs/ai/MAINTAINING.md @@ -0,0 +1,52 @@ +# HMDesign 패키지 AI 지침 유지보수 + +이 문서는 HMDesign 저장소 유지보수자용이며 패키지에 포함되지 않습니다. 패키지에 포함되는 AI 지침은 소비 프로젝트의 AI 코딩 도구가 읽는 **실행 규칙**이므로, 코드와 다른 내용이 남지 않게 아래 절차로 함께 갱신합니다. + +## 1. 구조 + +| 위치 | 역할 | 패키지 포함 | +|---|---|---| +| `docs/ai/AI_GUIDE.md` | 공통 진입점 원본(사용 유형 Web / SW 일반·뷰어 / OrgChart / 혼합 선택, 없는 컴포넌트 처리 3단계, 1~7단계, 패키지·SW 모드 분리, 예시 A~D, 소비 프로젝트 설정) | 사본으로 포함 | +| `docs/ai/AGENTS_SNIPPET.md` | 소비 프로젝트 루트 `AGENTS.md`에 붙일 연결 문구 원본 | 사본으로 포함 | +| `docs/ai/MAINTAINING.md` | 이 문서 | 미포함 | +| `packages/ui/ai/` | Web: `AI_USAGE`, `COMPONENT_CATALOG`, `DESIGN_RULES`, `COMPOSITION_PATTERNS` | 포함(`files`) | +| `packages/sw/ai/` | SW: 위 4종(`AI_USAGE.md` §0 = SW 일반/뷰어 모드 선택) + 뷰어 모드 전용 `VIEWER.md` + `examples/`(A~F 일반 모드, H 뷰어 모드, J 테마 설정) | 포함 | +| `packages/org-chart/ai/` | OrgChart(Core + React 어댑터 API): 위 4종 | 포함 | +| `packages/org-chart-react/ai/` | `AI_USAGE`(Core `ai/` 안내) | 포함 | +| `scripts/ai-docs.mjs` | 동기화(`--sync`)·검사(`--check`) | — | + +`@hm-design/center-graphic`에는 AI 지침이 없습니다(공통 가이드에 "README만"으로 안내). 추가하려면 같은 4종 구조로 만들고 `scripts/ai-docs.mjs`의 `packages`에 등록합니다. + +저장소 루트 `AGENTS.md`·`CLAUDE.md`는 **이 저장소를 개발하는 AI**용 규칙이고, `packages/*/ai/`는 **패키지를 설치해 쓰는 소비 프로젝트의 AI**용 규칙입니다. 내용이 겹쳐도 서로를 대신하지 않습니다. 패키지 `ai/` 문서는 패키지 밖(`../../docs/…`)을 링크하지 않습니다(설치 후 존재하지 않음). + +## 2. 컴포넌트를 추가·수정할 때 + +같은 변경(같은 Commit)에서 처리합니다. + +1. **공개 Export가 바뀌면** 해당 패키지 `ai/COMPONENT_CATALOG.md`에 이름·용도·HM Props(기본값)를 추가·수정·삭제합니다. 내부 전용 이름은 "공개하지 않은 것" 절에만 적습니다. +2. **Props·Variant 기본값·허용 조합이 바뀌면** 카탈로그 표와 `COMPOSITION_PATTERNS.md`의 예시 코드를 함께 고칩니다. +3. **토큰·CSS 값이 바뀌면** `DESIGN_RULES.md`의 표를 실제 CSS 선언과 맞춥니다(값은 CSS에서 복사, 추측 금지). +4. **새 화면 유형·조합 규칙이 생기면** `COMPOSITION_PATTERNS.md` §0 표에 행을 추가합니다. SW 뷰어 모드 컴포넌트(`SWViewer*`)를 바꾸면 `VIEWER.md`와 카탈로그의 뷰어 절을 함께 고치고, 일반/뷰어 모드 구분이 바뀌면 `packages/sw/ai/AI_USAGE.md` §0과 공통 `AI_GUIDE.md` 1단계·5단계를 같이 맞춥니다. +5. 공통 규칙(유형·SW 모드 선택·혼합·보고 형식)이 바뀌면 `docs/ai/AI_GUIDE.md`만 고치고 `npm run sync:ai-docs`로 사본을 갱신합니다. 패키지 사본을 직접 고치지 않습니다. +6. `npm run check:ai-docs`를 실행해 PASS를 확인합니다. +7. 버전을 올리면 카탈로그 첫 줄의 기준 버전을 같이 바꿉니다. + +## 3. `npm run check:ai-docs`가 검사하는 것 + +1. `docs/ai`의 공유 파일과 각 패키지 사본이 같은지(줄바꿈 CRLF/LF 차이는 무시 — `core.autocrlf=true`에서 `packages/sw`만 `.gitattributes`로 LF checkout) +2. 각 패키지 `package.json`의 `files`에 `ai`가 있는지 +3. 공개 진입점(`src/index.ts` 등, `export *` 재귀 포함)의 **모든 Export 이름이 카탈로그에 나오는지** +4. 카탈로그에 Export처럼 보이지만(기존 Export 이름으로 시작) 실제로는 없는 이름이 없는지 — 예: `DialogFancyPanel`. "공개하지 않은 것"·"없는 것"·"지원하지 않는" 절은 제외 +5. `ai/` 문서의 상대 링크가 존재하고 패키지 밖(저장소 전용 문서)을 가리키지 않는지 + +검사하지 않는 것: Props 이름·기본값·토큰 값의 정확성, 예시 코드의 컴파일. 이 부분은 리뷰와 소비 프로젝트 검증(§4)으로 확인합니다. + +## 4. 소비 프로젝트 검증 (배포 전 권장) + +1. `npm run build:packages` 후 `npm pack -w <패키지> --ignore-scripts --pack-destination <임시 폴더>` +2. 임시 소비 프로젝트(React 19 + Vite + Tailwind CSS 4)에 tarball 설치 +3. `node_modules/@hm-design/*/ai/AI_GUIDE.md`가 있는지, 링크가 설치 위치에서 열리는지 확인 +4. `COMPOSITION_PATTERNS.md`의 예시를 옮겨 `tsc --noEmit`·`vite build`·브라우저 렌더링 확인 +5. 결과와 NOT VERIFIED를 기록 + +`npm pack`의 `prepack`은 build를 다시 실행합니다. 공유 `dist`를 쓰는 build를 동시에 돌리지 않습니다. diff --git a/docs/ai/verification-2026-10-19.md b/docs/ai/verification-2026-10-19.md new file mode 100644 index 0000000..1c37bc2 --- /dev/null +++ b/docs/ai/verification-2026-10-19.md @@ -0,0 +1,81 @@ +# 패키지 AI 지침 구축 검증 기록 (2026-10-19) + +범위: 공통 진입점(`docs/ai/AI_GUIDE.md` → 각 패키지 `ai/AI_GUIDE.md`), Web(`packages/ui/ai/`)·OrgChart(`packages/org-chart/ai/`, `packages/org-chart-react/ai/`) 신규 문서, SW 기존 `ai/` 연결, 패키지 `files`에 `ai` 추가, `scripts/ai-docs.mjs`. 런타임 코드·CSS·Storybook·공개 API 변경 없음. + +## 실행한 검증 + +| 항목 | 결과 | +|---|---| +| `npm run check:ai-docs` (사본 일치, `files`, 카탈로그 ↔ 공개 Export 양방향, `ai/` 링크) | PASS | +| 검사기 음성 테스트(Export 누락, 가짜 이름 `DialogFancyPanel`, 사본 불일치, 패키지 밖 링크를 임시 주입) | 4건 모두 FAIL로 검출 후 원복, 재검사 PASS | +| `npm run build:packages` | PASS | +| `npm pack --ignore-scripts` 4종(ui 0.1.0, sw 0.2.0, org-chart 0.1.0, org-chart-react 0.1.0) | 모든 tarball에 `package/ai/AI_GUIDE.md`·`AGENTS_SNIPPET.md`와 패키지별 문서 포함 | +| 독립 소비 프로젝트(React 19.3.0, Vite 8.3.0, Tailwind CSS 4.3.3, TypeScript 7.0.2)에 tarball 설치 | `node_modules/@hm-design/*/ai/` 4곳 존재, 설치 위치 기준 상대 링크 42개 모두 해석, `AI_GUIDE.md` 4사본 동일 | +| `AI_GUIDE.md` §9의 스니펫 연결 명령(`cat … >> AGENTS.md`) | 동작 | +| 문서만 근거로 구현: Web+OrgChart 페이지(LNB ONLY, PageHeader, 신규 StatCard = Card + 토큰, FilterBar + DataTable, AlertDialog, OrgChart Full Page + `/hm-dialog`), Chart Only 미리보기, SW 뷰어(SWHeader + SWToolGroup + SWPopup, 별도 entry) | `tsc --noEmit`(strict, skipLibCheck false) PASS, `vite build` PASS | +| 브라우저(1440px) | HM 외형 렌더링(글꼴 Noto Sans KR, Card·Button 토큰 값), 조회 1건 → 초기화 3건, 삭제 확인창 열림·Escape 닫힘·Trigger Focus 복귀, 조직도 직원 카드 → Web Dialog 표시·Escape 닫힘, 회사 Select → `selectedCompanyIds` 반영, 콘솔 오류 0, 가로 넘침 없음 | +| 브라우저(390px) | LNB Desktop 숨김·LNB Mobile Header 표시, 문서 가로 넘침 없음 | +| Chart Only(1280px) | 흰 캔버스 + 노드 + 연결선만, 외부 제목·버튼·요약 없음, 중앙 Fit | +| SW 뷰어 | Popup 열림·내부 Focus·Escape 닫힘·Trigger 복귀, `--hm-sw-header-*`가 `body`에는 없고 `.hm-sw-theme` 범위에만 존재 | + +검증 프로젝트는 세션 임시 폴더에서 수행했고 저장소에 추가하지 않았다. + +## NOT VERIFIED + +- 다른 AI 코딩 도구(Codex·Cursor 등)가 소비 프로젝트의 `AGENTS.md`만 보고 스스로 `ai/` 문서를 찾아가는지. 이번 시나리오는 이 문서를 작성한 같은 AI가 수행했으므로 독립 Cold-start 검증이 아니다. +- Web CSS와 SW를 **한 문서**에서 함께 쓰는 경우의 시각 결과(문서에 NOT VERIFIED로 명시, 별도 entry 권장). +- 768px 화면, 실제 터치·스크린리더, Registry publish 후 설치. +- 문서의 Props 기본값·토큰 값 전부를 기계적으로 대조하지는 않았다(검사기는 Export 이름·링크·사본만 검사). 이번 작성은 소스를 직접 확인했다. + +## 추가 검증 — SW 일반 / 뷰어 모드 구분 (2026-10-19) + +범위: `feature/sw-viewer-header`(68fbcf6)를 merge(be7a04a)한 뒤, 사용 유형을 Web / SW(일반·뷰어) / OrgChart / 혼합으로 나누고 SW 모드 선택·혼합 금지·없는 컴포넌트 처리 3단계를 공통 가이드와 각 패키지 `ai/` 문서에 반영. 런타임 코드·CSS·Storybook·공개 API 변경 없음. 위 기록의 "SW 뷰어(SWHeader + SWToolGroup + SWPopup)"는 당시 명칭이며, 현재 기준으로는 **일반 모드 Header + 도구 막대** 구성이다(뷰어 모드 = `SWViewer*`). + +| 항목 | 결과 | +|---|---| +| `npm run sync:ai-docs` → `npm run check:ai-docs` (뷰어 Export 33개 포함 카탈로그 ↔ 공개 Export) | PASS | +| `npm run build -w packages/sw` 후 `npm pack --ignore-scripts` 4종을 임시 소비 폴더 `node_modules/@hm-design/*`에 풀어 확인 | sw tarball에 `ai/VIEWER.md`·`examples/ExampleH-ViewerMode.tsx` 포함, `dist/index.d.ts`가 `sw-viewer`를 `export *` | +| 뷰어 문서(VIEWER.md, 카탈로그 §8, DESIGN_RULES §11, PATTERNS 7, AI_USAGE §0)의 Props·토큰 이름 ↔ `sw-viewer` 소스·`sw-viewer.css` | 일치(남은 차이는 예제 변수명과 "없는 Props" 목록뿐) | +| 설치 위치 기준 시나리오 정적 검사 124건: 공통(사본 동일·상대 링크), Web(설정 → `ui/ai`, 다른 영역 이관, 3단계), SW 미지정("HMDesign SW로 화면을 만들어 주세요" → 유형 확정 + 모드 질문만, 애매하면 추측 금지), SW 일반(설정 → 묻지 않음, `SWViewer*` 금지, 예제 B·F 명칭), SW 뷰어(설정·요청 근거 → `VIEWER.md`, `SWHeader`/`SWPopup` 재스타일 금지, 주요 8개 컴포넌트가 카탈로그와 설치 `.d.ts`에 존재), OrgChart(Chart Only / Full Page 질문 1회, 승인 디자인 유지), 혼합(SW 영역 모드, 보고 형식) | 124 PASS / 0 FAIL | + +### Cold-start 검증(`be7a04a` 기준) 지적 사항 반영 + +| 지적 | 현재 작업본 | +|---|---| +| `check:ai-docs` FAIL — sw 사본 `AI_GUIDE.md`·`AGENTS_SNIPPET.md` 불일치 | 원인은 내용이 아니라 줄바꿈: `core.autocrlf=true`에서 `docs/ai`·ui·org-chart는 CRLF, `packages/sw`(`.gitattributes` `eol=lf`)는 LF로 checkout. `scripts/ai-docs.mjs` 사본 비교를 줄바꿈 무시로 변경. 작업본 스냅샷을 `git archive`(CRLF checkout 재현)로 풀어 검사 PASS, 실제 내용 차이를 넣으면 FAIL 검출 | +| `check:ai-docs` FAIL — SW 카탈로그에 `SWViewer*` 33개 누락 | 카탈로그 §8에 33개 모두 등재, 검사 PASS | +| 카탈로그 "표에 없는 이름은 공개 API 아님"과 VIEWER.md 충돌 | §8 등재로 해소, 머리말 "무엇을 쓸까"에 일반/뷰어 분기 | +| "도면 뷰어" 요청 시 예시 B(`SWHeader`+`SWPopup`)와 VIEWER.md가 다른 답 | 공통 1단계 4번·예시 B0/B1/B2, SW `AI_USAGE.md` §0(판단 순서·질문 문구·혼합 금지), 예제 B·F는 일반 모드로 명시 | +| `SWPopup` `anchorRef` 사용 시 열릴 때 Focus 미이동 | **이번 AI 지침 작업 범위 밖 — 별도 수정 대상.** 코드 수정하지 않음 | + +### 추가 검증 — 코드 예제 (변경분만, 기존 PASS 재사용) + +| 항목 | 결과 | +|---|---| +| 임시 소비 프로젝트(설치 tarball, React 19.3.0, TypeScript 7.0.2, Vite 8.3.0)에서 `COMPOSITION_PATTERNS.md` 7 코드 조각과 `VIEWER.md` §5 코드 조각을 **본문 그대로** 감싸고 자유 변수만 선언, 예제 H 포함 | `tsc --noEmit`(strict, skipLibCheck false) PASS, `vite build` PASS | +| 브라우저 1440px — PATTERNS 7 | 샘플 메뉴 열림·선택 → 파일명 표시, 도면 공간 탭 전환(`space=layout`), 설정 패널 열림 시 패널 안 Focus·Escape 닫힘·토글로 Focus 복귀, 정보 `modal` Focus·확인 닫힘, 가로 넘침 없음, 글꼴 Noto Sans KR, 콘솔 오류 0 | +| 브라우저 1440px — VIEWER.md §5 | 파일명 표시, 전체 보기 명령, 설정 패널 Focus, Switch 토글·Label 연결 | +| 800px 폭 | 항목이 More(⋯)로 이동(반응형 동작 확인, 세부 경계값 미측정) | + +### 최종 독립 Cold-start 검증 — PASS (`7621934` 기준) + +**독립 세션의 보고 결과**를 옮겨 적은 것이다(이 문서를 작성한 세션이 다시 실행한 결과가 아님). 기준 Commit `7621934f69a0324041ea59137b764117841d44b0`, 독립 세션 scratchpad의 격리 사본(`git archive 7621934`)·tarball 4종·소비 프로젝트에서 수행, 원본 폴더는 읽기만 했다. `be7a04a`→`7621934` 변경은 AI 문서와 `scripts/ai-docs.mjs` 25개 파일뿐이라 패키지 빌드·Web·OrgChart 코드 PASS는 `be7a04a` 결과를 재사용했다(두 tarball은 `ai/*.md`만 다름). + +| 항목 | 판정 | 근거(독립 세션 보고) | +|---|---|---| +| AI 문서 동기화 | PASS | `check:ai-docs` 통과(`be7a04a`의 FAIL 3건 해소). 4개 사본 `AI_GUIDE.md`는 줄끝을 LF로 맞추면 SHA-256 `1a1e0f98727f206191eadcea524ef2aa81d92e30c0a5d4fdbae635d0fbb46420`로 동일(원본 바이트는 ui·org-chart·org-chart-react CRLF, sw LF) | +| Viewer Export 33개 | PASS | 설치 `.d.ts`에서 추출해 카탈로그와 대조: 누락 0, 33개 모두 §8 | +| SW 일반/뷰어 모드 선택 | PASS | "도면 뷰어" 요청은 SW `AI_USAGE.md` §0.1 근거로 질문 없이 뷰어 모드. 모드 근거가 없는 요청은 모드만, 애매한 요청은 묻도록 되어 있음(문서 판단) | +| 컴포넌트 검색 | PASS | 뷰어 문서 순서만으로 필요한 API를 모두 찾음, 추측 API 없음, Typecheck 오류 0 | +| 신규 UI 구현 규칙(3단계) | PASS | 간격은 `--hm-sw-viewer-gap` 토큰, 토큰 없는 결과 행 정렬만 "AI 구성 값 — 디자인 확인 필요"로 보고, 뷰어 화면에 일반 모드 컴포넌트 혼입 없음(브라우저 확인) | + +실행: Typecheck·Build(4개 화면 entry) PASS. 뷰어 검색 패널 열림 Focus·검색·결과 선택·Escape 닫힘·Focus 복귀, 폭 1181 / 1179 / 901 / 899px에서 새로고침 기준 More 이동과 More에서 패널 열기 확인. + +### NOT VERIFIED + +- 실시간 `ResizeObserver` 동작: 창 폭을 바꾸는 도중의 More 재배치. 검증용 내장 브라우저의 크기 조정에서 `ResizeObserver`가 호출되지 않아 판정 불가, 새로고침 기준 동작만 확인(독립 세션 보고). +- 질문 규칙의 실제 대화 흐름(질문 → 답변 → 구현). 독립 검증도 문서 판단으로만 확인했다. +- 독립 검증에서 쓰지 않은 뷰어 기능: 단독·우클릭 `SWViewerMenu`, `iconOnlyBelow`(Switch·Slider·modal 패널은 위 코드 예제 검증에서 확인). +- SW 일반/뷰어 모드 전환을 소비 프로젝트에서 실제로 구성한 화면, SW 화면 + 조직도 조합. +- Web·OrgChart의 기존 NOT VERIFIED(Web 1280px, Hover 세부, OrgChart 키보드 Pan)는 그대로. +- `SWPopup` + `anchorRef` 열림 Focus 결함: 별도 세션에서 수정 중(이 기록의 범위 밖). diff --git a/docs/guidelines/external-install-submodule.md b/docs/guidelines/external-install-submodule.md new file mode 100644 index 0000000..7b0e248 --- /dev/null +++ b/docs/guidelines/external-install-submodule.md @@ -0,0 +1,101 @@ +# 외부 프로젝트 설치 — Git Submodule + npm Workspace + +> 2026-10-20 작성. 현재 HMDesign을 다른 React 프로젝트에서 쓰는 공식 방식입니다. npm Registry publish 없이 Git 저장소를 Submodule로 연결하고, HMDesign 안에서 패키지를 빌드한 뒤 소비 프로젝트의 npm Workspace로 연결합니다. +> 실제 적용 근거: 외부 DWG/DXF Viewer(React 19, `@hm-design/ui` + `@hm-design/sw`)가 이 절차로 연결되었습니다. 패키지 tarball 소비 검증은 `packages/sw/tests/integrated-consumer.mjs`가 별도로 수행합니다. + +## 1. 전제 + +| 항목 | 기준 | +|---|---| +| Node.js / npm | `package-lock.json`의 엔진 조건 `^20.19.0 \|\| >=22.12.0`(Node 21 제외). 검증 기록: Node 20.20.1 / npm 10.8.2(2026-10-11), Node 22.23.2 / npm 10.9.8(2026-10-20) | +| React | 소비 프로젝트 `react`·`react-dom` `^19.0.0`(모든 패키지의 peer) | +| 네트워크 | 최초 설치에 Gitea(`https://gitea.hmac.kr/b25027/HMDesign.git`)와 npm Registry 접근 필요 | +| Git | 패키지 `dist/`는 Git에 포함되지 않습니다(`.gitignore`). Clone·Commit 변경 후에는 항상 HMDesign 안에서 다시 빌드합니다. | + +## 2. Submodule 연결과 검증 Commit 고정 + +소비 프로젝트 루트에서 실행합니다. `<검증 Commit>`은 사용할 HMDesign Commit의 전체 SHA입니다(브랜치 이름을 그대로 쓰지 않습니다). + +```bash +git submodule add https://gitea.hmac.kr/b25027/HMDesign.git HMDesign +git -C HMDesign fetch origin +git -C HMDesign checkout <검증 Commit> +git add .gitmodules HMDesign +git commit -m "chore: pin HMDesign <검증 Commit>" +``` + +- 소비 프로젝트에 기록되는 것은 Submodule Commit 포인터입니다. 다른 사람·CI는 `git submodule update --init --recursive`로 같은 Commit을 받습니다. +- Submodule 안에서 HMDesign 파일을 직접 수정하지 않습니다. `git status`에 `HMDesign (modified content)` / `-dirty`가 보이면 고정 Commit과 다른 코드로 빌드된 상태입니다. 그 상태의 검증 결과는 해당 Commit의 결과로 보고하지 않습니다. + +## 3. HMDesign 안에서 설치·빌드 + +```bash +git submodule update --init --recursive +cd HMDesign +npm ci +npm run build:packages +cd .. +``` + +- `npm ci`는 HMDesign 자체 빌드 도구(Vite·TypeScript·Tailwind 등)를 `HMDesign/node_modules`에 설치합니다. 패키지 빌드 스크립트가 이 위치의 도구를 사용하므로 생략할 수 없습니다. +- `build:packages`는 `org-chart → ui → center-graphic → org-chart-react → sw` 순서로 5개 패키지의 `dist/`를 만듭니다. 필요한 패키지만 빌드할 때는 `npm run build:ui`, `npm run build:sw`를 쓸 수 있고, `org-chart-react`는 `org-chart`를 먼저 빌드해야 합니다. + +## 4. 소비 프로젝트 Workspace 연결 + +소비 프로젝트 `package.json`에 사용할 패키지만 Workspace와 dependency로 추가합니다. + +```json +{ + "workspaces": ["HMDesign/packages/ui", "HMDesign/packages/sw"], + "dependencies": { + "@hm-design/ui": "*", + "@hm-design/sw": "*", + "react": "19.3.0", + "react-dom": "19.3.0" + } +} +``` + +```bash +npm install +``` + +- `npm install` 후 `node_modules/@hm-design/<패키지>`는 `HMDesign/packages/<패키지>`를 가리키는 링크입니다. Import는 패키지 `exports`의 공개 진입점만 사용합니다(`dist`·`src` 내부 경로 금지). +- OrgChart를 쓰면 `HMDesign/packages/org-chart`(와 React에서는 `HMDesign/packages/org-chart-react`)를 추가합니다. +- Vite 소비 프로젝트는 HMDesign 저장소 안의 예제·Export용 HTML을 의존성 스캔에서 제외하도록 `optimizeDeps.entries: ['index.html']`를 지정합니다(외부 Viewer에서 확인된 설정). + +## 5. CSS Import + +| 패키지 | 앱 진입점 | +|---|---| +| Web `@hm-design/ui` | CSS entry에서 `@import "tailwindcss";` → `@import "@hm-design/ui/tailwind.css";` → `@import "@hm-design/ui/theme.css";`. Tailwind 검색 범위는 [Runtime portability](./runtime-portability.md#21-tailwind-v4-소비자-검색-범위)를 따릅니다. | +| SW `@hm-design/sw` | `import "@hm-design/sw/styles.css"`를 한 번. JS import만으로 CSS가 들어오지 않습니다. 글꼴 파일은 포함하지 않습니다(기본 Noto Sans KR). | +| OrgChart | Core CSS 두 개(`@hm-design/org-chart/engine.css`, `@hm-design/org-chart/style.css`)를 URL로 해석해 `stylesheetUrls`에 전달합니다(Shadow DOM). 문서에 import하는 것만으로는 적용되지 않습니다. | + +Web과 SW를 함께 쓰면 두 CSS의 순서는 서로의 계산 스타일을 바꾸지 않습니다(`integrated-consumer` 검증 항목). + +## 6. AI 지침 탐색 + +- 소비 프로젝트의 AI 코딩 도구는 `node_modules/@hm-design/<패키지>/ai/`(= `HMDesign/packages/<패키지>/ai/`)를 읽습니다. 진입점은 각 폴더의 `AI_GUIDE.md`이며 사용 유형(Web / SW 일반·뷰어 / OrgChart / 혼합)을 먼저 정합니다. +- 루트 `AGENTS.md`·`CLAUDE.md`는 자동으로 연결되지 않습니다. `ai/AGENTS_SNIPPET.md`의 문구를 소비 프로젝트 루트 지침에 붙입니다(방법은 `AI_GUIDE.md`의 "소비 프로젝트 설정"). +- HMDesign 저장소 루트의 `AGENTS.md`·`CLAUDE.md`는 HMDesign을 개발하는 AI용이며 소비 프로젝트 지침이 아닙니다. + +## 7. HMDesign 버전 갱신 + +```bash +git -C HMDesign fetch origin +git -C HMDesign checkout <새 검증 Commit> +cd HMDesign && npm ci && npm run build:packages && cd .. +npm install +git add HMDesign +git commit -m "chore: update HMDesign to <새 검증 Commit>" +``` + +갱신 후 소비 프로젝트의 Typecheck·Build·화면 확인을 다시 실행합니다. + +## 8. Registry 없이 사용할 때의 제약 + +- `dist/`가 Git에 없으므로 Clone·Commit 변경·CI마다 HMDesign 빌드(§3)가 필요합니다. CI에서도 Submodule 초기화와 `npm ci && npm run build:packages`를 실행합니다. +- HMDesign 빌드 도구와 소비 프로젝트 도구가 따로 설치됩니다(예: 외부 Viewer는 TypeScript 5.9·Vite 5, HMDesign은 TypeScript 7·Vite 8). 패키지는 HMDesign 도구로 빌드되고 소비 프로젝트는 결과물만 사용합니다. +- 버전 식별은 Submodule Commit SHA입니다. SW 패키지는 `dist/build-info.json`에 빌드한 Commit과 dirty 여부를 기록합니다. +- npm Registry publish는 현재 필수가 아닙니다. Registry 배포를 도입하면 이 문서와 별도로 [운영/배포 가이드](./운영-배포-가이드.md)에 절차를 둡니다. diff --git a/docs/sw/ai-template-integration-qa/ai-consumer-report.json b/docs/sw/ai-template-integration-qa/ai-consumer-report.json new file mode 100644 index 0000000..3f5a33d --- /dev/null +++ b/docs/sw/ai-template-integration-qa/ai-consumer-report.json @@ -0,0 +1,276 @@ +{ + "checks": [ + { + "name": "1 all SVG/PNG assets decode (data URI, no external path)", + "status": "PASS", + "data": { + "count": 33, + "broken": [] + } + }, + { + "name": "1 styles.css loaded; SWTheme provides tokens", + "status": "PASS", + "data": { + "height": "49px", + "font": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + } + }, + { + "name": "2 A default header 1920 geometry = Figma (49 / 0·80 / 65·310 / 377·1301 / 1680·240)", + "status": "PASS", + "data": { + "header": { + "x": 0, + "y": 0, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 0, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 0, + "w": 310, + "h": 48 + }, + "object": { + "x": 377, + "y": 0, + "w": 1301, + "h": 48 + }, + "window": { + "x": 1680, + "y": 0, + "w": 240, + "h": 48 + } + } + }, + { + "name": "2 A layer dropdown select callback", + "status": "PASS", + "data": "layer:center" + }, + { + "name": "2 A close callback", + "status": "PASS", + "data": "close" + }, + { + "name": "3 B order Logo → File → Layer → Color → K (DOM)", + "status": "PASS", + "data": [ + "뷰어 홈", + "hm-sw-header__document", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "3 B sizes keep SW rules (bar 49, home 80 overlapping file 15px, fields 234/192 x 38)", + "status": "PASS", + "data": { + "bar": { + "x": 0, + "y": 409, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 409, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 409, + "w": 310, + "h": 48 + }, + "layer": { + "x": 382, + "y": 414, + "w": 234, + "h": 38 + }, + "color": { + "x": 620, + "y": 414, + "w": 192, + "h": 38 + } + } + }, + { + "name": "3 B document dropdown New callback", + "status": "PASS", + "data": "document:new" + }, + { + "name": "3 B layer dropdown opens under the field", + "status": "PASS", + "data": "true" + }, + { + "name": "3 B Escape closes and returns focus to the field", + "status": "PASS", + "data": null + }, + { + "name": "3 B color chip callback (dropdown stays open)", + "status": "PASS", + "data": "color:red" + }, + { + "name": "3 B K guide preview on hover (animation frame advances)", + "status": "PASS", + "data": { + "guide": true + } + }, + { + "name": "3 B K click callback", + "status": "PASS", + "data": "popupGuide" + }, + { + "name": "4 C order File → 선 → 문자 → 치수 → 인쇄", + "status": "PASS", + "data": [ + "file", + "선스타일", + "문자스타일", + "치수스타일", + "인쇄" + ] + }, + { + "name": "4 C first file well has a left edge (consumer wrapper)", + "status": "PASS", + "data": "1px" + }, + { + "name": "4 C line type callback + field value", + "status": "PASS", + "data": "lineType:center" + }, + { + "name": "4 C text style callback + field value", + "status": "PASS", + "data": "textStyle:dotum" + }, + { + "name": "4 C dimension style callback", + "status": "PASS", + "data": "dimensionStyle:iso" + }, + { + "name": "4 C print callback", + "status": "PASS", + "data": "print" + }, + { + "name": "5 D new search field matches the SW field surface (height/top/border/radius/background/shadow/label)", + "status": "PASS", + "data": { + "layer": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "search": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "label": "12px", + "fieldLabel": "12px" + } + }, + { + "name": "5 D hover ring like existing fields (edge turns yellow, inside unchanged)", + "status": "PASS", + "data": { + "ring": "1", + "before": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 8, + 37, + 28 + ] + }, + "after": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 172, + 131, + 3 + ] + } + } + }, + { + "name": "5 D Enter commits through SWHeaderInput → search callback", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D search button callback uses committed value", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D Escape restores the committed value", + "status": "PASS", + "data": "WALL-01" + }, + { + "name": "5 D existing color dropdown in the same bar", + "status": "PASS", + "data": "color:blue" + }, + { + "name": "6 B Tab order = display order", + "status": "PASS", + "data": [ + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "7 no page/console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "warnings": [ + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently", + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently" + ] +} \ No newline at end of file diff --git a/docs/sw/ai-template-integration-qa/chrome-overlays-result.json b/docs/sw/ai-template-integration-qa/chrome-overlays-result.json new file mode 100644 index 0000000..cfc59d5 --- /dev/null +++ b/docs/sw/ai-template-integration-qa/chrome-overlays-result.json @@ -0,0 +1,104 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "all 28 Story IDs, names, order and tags retained", + "status": "PASS" + }, + { + "name": "other 27 Story declarations byte-identical", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "document first row is above the property Bar and clickable", + "status": "PASS" + }, + { + "name": "existing 레이어 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 색상 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 선스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 문자스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 치수스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "ByBlock mode immediately appears in Header without changing numeric RGB property", + "status": "PASS" + }, + { + "name": "direct color selection clears Header mode label", + "status": "PASS" + }, + { + "name": "small Inner layer dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 141, + "y": 345.0625, + "width": 234, + "height": 250 + } + }, + { + "name": "small Inner lower layer row hit-test is unobstructed", + "status": "PASS" + }, + { + "name": "small Inner layer selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "small Inner line dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 186, + "y": 39.0625, + "width": 189.1875, + "height": 342 + } + }, + { + "name": "small Inner line selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "small Inner color dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 175, + "y": 377.0625, + "width": 192, + "height": 182 + } + }, + { + "name": "small Inner color selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "no overlay browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [], + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/ai-template-integration-qa/chrome-result.json b/docs/sw/ai-template-integration-qa/chrome-result.json new file mode 100644 index 0000000..68a0805 --- /dev/null +++ b/docs/sw/ai-template-integration-qa/chrome-result.json @@ -0,0 +1,670 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "all 28 Story IDs, names, order and tags retained", + "status": "PASS" + }, + { + "name": "other 27 Story declarations byte-identical", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--composed-controls", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--layer-dropdown", + "sw-header--color-dropdown", + "sw-header--line-style-dropdown", + "sw-header--text-dimension-style-dropdown", + "sw-header--responsive-more", + "sw-header--layer-detail-input", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot", + "sw-header--property-fields" + ], + "status": "PASS" +} diff --git a/docs/sw/ai-template-integration-qa/window-move-motion.png b/docs/sw/ai-template-integration-qa/window-move-motion.png new file mode 100644 index 0000000..3da7a58 Binary files /dev/null and b/docs/sw/ai-template-integration-qa/window-move-motion.png differ diff --git a/docs/sw/ai-template/README.md b/docs/sw/ai-template/README.md new file mode 100644 index 0000000..60b18a5 --- /dev/null +++ b/docs/sw/ai-template/README.md @@ -0,0 +1,116 @@ +# SW AI 재사용 템플릿 — 조사·구현·검증 기록 (2026-10-19) + +> 범위: `@hm-design/sw`만. `@hm-design/ui`·조직도·Center Graphic·DWG/DXF Viewer는 변경하지 않았습니다. 작업 Worktree `D:\디자인시스템\HMDesign-SW-AI-Template`, 브랜치 `feature/sw-ai-template`, 시작 HEAD `50bf5bda8e956a4973b923d64131f2f2285bd38c`(`feature/sw-package`). +> +> AI용 사용 규칙·카탈로그·디자인 규칙·조합 패턴의 **원본은 패키지 안 [`packages/sw/ai/`](../../../packages/sw/ai/AI_USAGE.md)** 이며 npm 패키지에 포함됩니다. 이 문서는 조사 결과와 검증 기록만 담고 원본 내용을 반복하지 않습니다. + +## 1. 결론 + +- 기존 공개 Export만으로 재사용(예제 A)·조합(예제 B·C)·확장(예제 D)이 모두 가능했습니다. **런타임 소스(`packages/sw/src`)와 공개 API는 변경하지 않았습니다.** 그래서 기존 SW Header의 디자인·기능·Props·Callback은 그대로입니다. +- 변경은 패키지 배포 범위(`files`에 `ai` 추가), AI 가이드 문서 4종, 공개 API만 쓰는 예제, README 안내 1절, SW 전용 검증 스크립트 3개입니다. +- 공개 API가 부족한 부분(More, 범용 필드 면, Header 면 레이아웃 등)은 내부 Import로 우회하지 않았습니다. §3 EXPORT CANDIDATE / MISSING으로 보고합니다. + +## 2. 기존 구성 분석 요약 + +- 진입점: `src/index.ts` → `components/sw-header/index.ts`, `SWTheme`. 배포는 `exports` `"."`(ESM `dist/index.js` + `dist/index.d.ts`)와 `"./styles.css"` 두 개입니다. `main`·`types`가 있고 `module` 필드는 없습니다(ESM 전용 `"type": "module"`, `exports`가 우선). Peer는 `react`/`react-dom` `^19.0.0`, 런타임 dependency는 없습니다. +- 자산: SVG·PNG 48개는 Vite library build에서 data URI로 JS에 포함됩니다(소비 프로젝트 33개 이미지 디코드 확인). 글꼴은 포함하지 않습니다. +- CSS: 토큰은 `.hm-sw-header`와 `.hm-sw-theme`에만 정의됩니다. 컴포넌트 규칙은 대부분 `hm-sw-header__*` class 단위라서 `SWTheme` 안에서 단독 렌더링됩니다. 반응형은 `@container hm-sw-header`(12개 규칙)라 `SWHeader` 안에서만 적용됩니다. 전역 선택자는 없습니다. +- Overlay: 필드 Dropdown은 absolute(필드 아래, `z-index` 30)이고 `closest(".hm-sw-header") ?? documentElement` 기준으로 좌우를 보정하므로 Header 밖에서도 동작합니다. 속성창·K 가이드는 `position: fixed`(`useSWHeaderOverlay`)이며 Portal·Dim은 없습니다. +- `dist`에는 내부 모듈 `.d.ts`도 생성되지만 `exports`가 deep import를 막습니다. + +## 3. 분류 + +### PUBLIC READY (현재 외부 재사용 가능) + +| 컴포넌트 | 근거 | +|---|---| +| `SWHeader` | 공식 기준 템플릿. 예제 A에서 1920 좌표가 Figma와 일치(0·80 / 65·310 / 377·1301 / 1680·240, 49px) | +| `SWTheme` | 단독 사용 토큰 범위. 소비 프로젝트에서 토큰·글꼴 확인 | +| `SWHeaderHome`, `SWHeaderDocumentTitle` | 예제 B·C 렌더링, 문서 Dropdown `+ New` Callback | +| `SWHeaderLayerMenu`, `SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu` | 예제 B·C·D에서 열기·선택 Callback·Escape Focus 복귀 | +| `SWHeaderActions` | `showPrint` / `showPopupGuide`로 K만·인쇄만. K 가이드 Hover·Click | +| `SWHeaderInput`, `parseSWHeaderColor`, `parseSWHeaderNumber` | Input은 예제 D에서 Enter 확정·Escape 복원 확인. 파서는 이번 미검증 | +| `SWHeaderLayerControl` 외 필드 버튼 4종, `SWHeaderWindowControls`, `SWHeaderProperties`, `SWHeaderPropertyBar`, `SWHeaderPropertyPanel`, `SWHeaderLinePreview`, `swHeaderLinePatterns`, 공개 타입 | 공개·문서화 상태(기존 사용 가이드 §4·§8). 이번 소비 검증 범위 밖 | + +### EXPORT CANDIDATE (내부 구현 있음, 공개 API 정비 필요) + +| 내부 구현 | 재사용 가치 | 공개 전 필요한 정비 | +|---|---|---| +| `SWHeaderMore` | 조합 Header의 Overflow | tier·`data-visible`·container 규칙이 `SWHeader` 구조에 결합. 항목 visibility API 설계 필요 | +| `SWHeaderField` / `SWHeaderFieldText` | 새 필드형 컨트롤이 같은 면을 재사용(예제 D 표면 CSS 대체) | `variant`가 5개 고정 폭. 범용 폭·`children` 계약 필요 | +| `SWHeaderKGuide` | pill 없는 K 단독 버튼 | 현재 `SWHeaderActions showPrint={false}`로 대체 가능. 수요 확인 후 | +| `useSWHeaderDropdown`, `SWHeaderMenuDetail`, `SWHeaderColorChip` | 새 Dropdown 동작·`… 상세` pill·색상 칩 | 반환값 계약(ref·style·shifted)과 CSS 의존 정리 | +| Header 면(객체 수정 / 창 영역 / 막대) | 조합 Header 배치 | 현재 `SWHeader` 내부 DOM. 예제는 소비 CSS + 공개 토큰으로 구성 | + +### INTERNAL ONLY + +`SWHeaderLayerRows`, `SWHeaderColorPanelBody`, `SWHeaderLineStyleColumns`(헤더 Dropdown과 속성창 Picker의 공유 본문), `SWHeaderPropertyPickerField`, `propertyPicker`, `propertyLineTypes`, `SWHeaderLayerIconArt`, `SWHeaderLayerToggle`, `layerIconOn`, `SWHeaderCommitPresence`, `useSWHeaderOverlay`, `useSWHeaderColorMode`, `SWHeaderKGuidePreview`. 상위 공개 컴포넌트의 상태·Focus 계약에 묶여 있어 단독 공개 시 중복 상태 위험이 있습니다. + +### MISSING (SW 패키지에 없음) + +검색 컨트롤(예제 D에서 소비 프로젝트 확장으로 작성), 범용 SW Button / IconButton, 범용 Tooltip 컴포넌트(창 이동 Tooltip은 CSS 전용), 조합 Header용 반응형 More, Header 면 레이아웃 컴포넌트. + +### 발견한 재사용 제약 (코드 미변경, 문서화) + +1. `SWHeaderDocumentTitle`은 앞의 로고와 겹치는 전제로 왼쪽 테두리가 없습니다 → 첫 칸이면 소비 wrapper에 테두리(예제 C). +2. `SWHeaderDocumentTitle` 폭은 `100cqw` 기반이라 Header 밖에서는 뷰포트 폭을 기준으로 계산합니다. +3. 창 영역 배경·테두리는 `SWHeader` DOM에 있어 `SWHeaderActions`/`SWHeaderWindowControls` 단독 사용 시 소비 면이 필요합니다. +4. `body` margin 등 페이지 기본값은 소비 앱 책임입니다(첫 소비 실행에서 8px 오프셋으로 확인 → 테스트 앱에서 지정). + +## 4. 변경 파일 + +| 파일 | 내용 | +|---|---| +| `packages/sw/package.json` | `files`: `["dist"]` → `["dist", "ai"]` | +| `packages/sw/README.md` | 끝에 "AI 코딩 도구용 가이드" 절 추가(기존 본문 무변경) | +| `packages/sw/ai/AI_USAGE.md`, `COMPONENT_CATALOG.md`, `DESIGN_RULES.md`, `COMPOSITION_PATTERNS.md` | AI 가이드(배포 포함) | +| `packages/sw/ai/examples/*` | 예제 A~D, `SWSearchControl`(소비 확장), 소비 배치 CSS, 샘플 데이터 | +| `packages/sw/tests/ai-docs.check.mjs` | 문서·예제와 공개 Export·링크 일치 검사 | +| `packages/sw/tests/ai-template-consumer.mjs` | `npm pack` → 저장소 밖 독립 React 19 + TS 7 + Vite 8 프로젝트 생성, Tarball 설치, 설치된 `ai/examples` 복사, `tsc`·`vite build` | +| `packages/sw/tests/ai-template-consumer.browser.mjs` | 소비 빌드 브라우저 검증(Chrome, Playwright) | +| `docs/sw/ai-template/` | 이 기록과 `evidence/`(스크린샷 7장, `report.json`) | + +## 5. 이번에 실행한 검증 (2026-10-19) + +| 항목 | 결과 | +|---|---| +| `npm run typecheck -w @hm-design/sw` | PASS | +| `npm run build -w @hm-design/sw` | PASS(`dist/index.js` 712.25 kB, `styles.css` 102.25 kB) | +| `npm pack`(실제 tarball, Publish 없음) | PASS — 40개 파일, `ai/` 문서 4 + 예제 7, `dist`, `README.md`, `package.json` | +| `node packages/sw/tests/ai-docs.check.mjs` | 19/19 PASS — 문서에 쓴 SW 이름 전부 공개 Export, "공개하지 않은 것" 목록에 Export 없음, 예제 Import 전부 공개·deep import 없음, 패키지 상대 링크 정상 | +| 독립 소비 프로젝트 설치(`react@19.3.0`, `typescript@7.0.2`, `vite@8.3.0`, `@vitejs/plugin-react@6.1.1`) | PASS | +| 소비 프로젝트 `tsc`(strict, `noUnusedLocals`, `skipLibCheck: false`) | PASS — 설치된 패키지의 예제를 그대로 컴파일 | +| 소비 프로젝트 Production Build | PASS(번들 500 kB 경고만, 오류 없음) | +| 소비 빌드 브라우저(Chrome 1920 × 1080) | 27/27 PASS([report.json](./evidence/report.json)) | + +브라우저 27개 항목: 자산 33개 data URI 디코드 · CSS/토큰 로딩 · A 기본 Header 좌표 = Figma · A 레이어 선택 / 종료 Callback · B 순서(DOM) · B 크기(49 / 80 / 파일 x65 / 234·192 × 38) · B 문서 `+ New` · B 레이어 열림 · Escape 닫힘 + Focus 복귀 · B 색상 선택(열림 유지) · B K 가이드 Hover · B K Click · C 순서 · C 파일 왼쪽 테두리 · C 선·문자·치수 선택과 필드 값 반영 · C 인쇄 · D 검색 필드 표면 = 레이어 필드(높이·위치·테두리·radius·배경·그림자·라벨 12px) · D Hover 링(테두리만 노랑, 내부 픽셀 불변) · D Enter → 검색 · D 버튼 검색 · D Escape 복원 · D 색상 선택 · B Tab 순서 = 표시 순서 · 페이지/콘솔 오류 0. + +중간 실패와 수정: 첫 실행 24/27(소비 앱 `body` 8px margin, 예제 막대 `box-sizing`, favicon 404) → 소비 앱·예제 CSS 수정. 육안 확인 중 D의 Hover 링이 필드 전체를 덮는 문제(표준 `mask` 뒤에 `-webkit-mask` 선언) 발견 → 선언 순서 수정, 테스트에 픽셀 검사 추가 후 재실행 PASS. + +증거: [A](./evidence/A-default-1920.png) · [B](./evidence/B-viewer-1920.png) · [B 레이어](./evidence/B-layer-open.png) · [B K](./evidence/B-k-guide.png) · [C](./evidence/C-feature-1920.png) · [D](./evidence/D-search-1920.png) · [D Hover](./evidence/D-search-hover.png). + +재현: + +```bash +npm run build -w @hm-design/sw +node packages/sw/tests/ai-docs.check.mjs +node packages/sw/tests/ai-template-consumer.mjs <저장소 밖 빈 폴더> +node packages/sw/tests/ai-template-consumer.browser.mjs <같은 폴더> <증거 폴더> +``` + +## 6. NOT VERIFIED + +- Firefox·Safari에서 소비 빌드(이번에는 Chrome만). 예제 D의 mask는 표준 + prefix 둘 다 선언했으나 Firefox 미실행. +- 이번 소비 검증에서 직접 렌더링하지 않은 공개 컴포넌트: 필드 버튼 5종 단독, `SWHeaderWindowControls` 단독(창 이동 Motion), `SWHeaderProperties`, `SWHeaderPropertyBar`, `SWHeaderPropertyPanel`(13개 필드·4상태), `SWHeaderLinePreview`, 파서 함수. 기존 Storybook 검증 기록만 있습니다. +- `SWHeader`의 반응형 More·10개 폭, Colorize, 게이지바, 속성창 연결: 런타임 코드를 바꾸지 않았으므로 이번에 다시 실행하지 않았습니다(과거 PASS 기록은 기존 문서). +- Noto Sans KR 실제 로드(소비 테스트는 시스템 대체 글꼴). +- 저장소 루트 전체 `npm run typecheck`·Storybook build(SW 패키지 단위만 실행). +- `README.md`의 기존 `../../docs/...` 링크는 Tarball 안에서 열리지 않습니다(기존 상태, `ai/` 문서는 패키지 내부 링크만 사용). + +## 7. 추가 개선 후보 + +1. `SWHeaderField` 범용 폭 공개 → 새 필드형 컨트롤이 표면 CSS를 다시 쓰지 않도록. +2. 조합 Header용 More(또는 `SWHeaderMore` 공개 API) 설계. +3. `SWHeaderDocumentTitle`에 단독 첫 칸용 왼쪽 테두리 옵션 검토(기본 Header 픽셀 영향 확인 필요). +4. Header 면(막대·객체 수정·창 영역) 레이아웃 컴포넌트 검토. +5. 소비 검증을 Firefox와 속성창 단독 사용까지 확장. diff --git a/docs/sw/ai-template/evidence/A-default-1920.png b/docs/sw/ai-template/evidence/A-default-1920.png new file mode 100644 index 0000000..eb4a525 Binary files /dev/null and b/docs/sw/ai-template/evidence/A-default-1920.png differ diff --git a/docs/sw/ai-template/evidence/B-k-guide.png b/docs/sw/ai-template/evidence/B-k-guide.png new file mode 100644 index 0000000..a7a024b Binary files /dev/null and b/docs/sw/ai-template/evidence/B-k-guide.png differ diff --git a/docs/sw/ai-template/evidence/B-layer-open.png b/docs/sw/ai-template/evidence/B-layer-open.png new file mode 100644 index 0000000..fbc5dec Binary files /dev/null and b/docs/sw/ai-template/evidence/B-layer-open.png differ diff --git a/docs/sw/ai-template/evidence/B-viewer-1920.png b/docs/sw/ai-template/evidence/B-viewer-1920.png new file mode 100644 index 0000000..d2aaf22 Binary files /dev/null and b/docs/sw/ai-template/evidence/B-viewer-1920.png differ diff --git a/docs/sw/ai-template/evidence/C-feature-1920.png b/docs/sw/ai-template/evidence/C-feature-1920.png new file mode 100644 index 0000000..ebe7fc1 Binary files /dev/null and b/docs/sw/ai-template/evidence/C-feature-1920.png differ diff --git a/docs/sw/ai-template/evidence/D-search-1920.png b/docs/sw/ai-template/evidence/D-search-1920.png new file mode 100644 index 0000000..ba7f6f8 Binary files /dev/null and b/docs/sw/ai-template/evidence/D-search-1920.png differ diff --git a/docs/sw/ai-template/evidence/D-search-hover.png b/docs/sw/ai-template/evidence/D-search-hover.png new file mode 100644 index 0000000..3354dca Binary files /dev/null and b/docs/sw/ai-template/evidence/D-search-hover.png differ diff --git a/docs/sw/ai-template/evidence/report.json b/docs/sw/ai-template/evidence/report.json new file mode 100644 index 0000000..3f5a33d --- /dev/null +++ b/docs/sw/ai-template/evidence/report.json @@ -0,0 +1,276 @@ +{ + "checks": [ + { + "name": "1 all SVG/PNG assets decode (data URI, no external path)", + "status": "PASS", + "data": { + "count": 33, + "broken": [] + } + }, + { + "name": "1 styles.css loaded; SWTheme provides tokens", + "status": "PASS", + "data": { + "height": "49px", + "font": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + } + }, + { + "name": "2 A default header 1920 geometry = Figma (49 / 0·80 / 65·310 / 377·1301 / 1680·240)", + "status": "PASS", + "data": { + "header": { + "x": 0, + "y": 0, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 0, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 0, + "w": 310, + "h": 48 + }, + "object": { + "x": 377, + "y": 0, + "w": 1301, + "h": 48 + }, + "window": { + "x": 1680, + "y": 0, + "w": 240, + "h": 48 + } + } + }, + { + "name": "2 A layer dropdown select callback", + "status": "PASS", + "data": "layer:center" + }, + { + "name": "2 A close callback", + "status": "PASS", + "data": "close" + }, + { + "name": "3 B order Logo → File → Layer → Color → K (DOM)", + "status": "PASS", + "data": [ + "뷰어 홈", + "hm-sw-header__document", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "3 B sizes keep SW rules (bar 49, home 80 overlapping file 15px, fields 234/192 x 38)", + "status": "PASS", + "data": { + "bar": { + "x": 0, + "y": 409, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 409, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 409, + "w": 310, + "h": 48 + }, + "layer": { + "x": 382, + "y": 414, + "w": 234, + "h": 38 + }, + "color": { + "x": 620, + "y": 414, + "w": 192, + "h": 38 + } + } + }, + { + "name": "3 B document dropdown New callback", + "status": "PASS", + "data": "document:new" + }, + { + "name": "3 B layer dropdown opens under the field", + "status": "PASS", + "data": "true" + }, + { + "name": "3 B Escape closes and returns focus to the field", + "status": "PASS", + "data": null + }, + { + "name": "3 B color chip callback (dropdown stays open)", + "status": "PASS", + "data": "color:red" + }, + { + "name": "3 B K guide preview on hover (animation frame advances)", + "status": "PASS", + "data": { + "guide": true + } + }, + { + "name": "3 B K click callback", + "status": "PASS", + "data": "popupGuide" + }, + { + "name": "4 C order File → 선 → 문자 → 치수 → 인쇄", + "status": "PASS", + "data": [ + "file", + "선스타일", + "문자스타일", + "치수스타일", + "인쇄" + ] + }, + { + "name": "4 C first file well has a left edge (consumer wrapper)", + "status": "PASS", + "data": "1px" + }, + { + "name": "4 C line type callback + field value", + "status": "PASS", + "data": "lineType:center" + }, + { + "name": "4 C text style callback + field value", + "status": "PASS", + "data": "textStyle:dotum" + }, + { + "name": "4 C dimension style callback", + "status": "PASS", + "data": "dimensionStyle:iso" + }, + { + "name": "4 C print callback", + "status": "PASS", + "data": "print" + }, + { + "name": "5 D new search field matches the SW field surface (height/top/border/radius/background/shadow/label)", + "status": "PASS", + "data": { + "layer": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "search": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "label": "12px", + "fieldLabel": "12px" + } + }, + { + "name": "5 D hover ring like existing fields (edge turns yellow, inside unchanged)", + "status": "PASS", + "data": { + "ring": "1", + "before": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 8, + 37, + 28 + ] + }, + "after": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 172, + 131, + 3 + ] + } + } + }, + { + "name": "5 D Enter commits through SWHeaderInput → search callback", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D search button callback uses committed value", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D Escape restores the committed value", + "status": "PASS", + "data": "WALL-01" + }, + { + "name": "5 D existing color dropdown in the same bar", + "status": "PASS", + "data": "color:blue" + }, + { + "name": "6 B Tab order = display order", + "status": "PASS", + "data": [ + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "7 no page/console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "warnings": [ + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently", + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently" + ] +} \ No newline at end of file diff --git a/docs/sw/detail-button-qa/baseline-result.json b/docs/sw/detail-button-qa/baseline-result.json new file mode 100644 index 0000000..5e8ad73 --- /dev/null +++ b/docs/sw/detail-button-qa/baseline-result.json @@ -0,0 +1,47 @@ +{ + "mode": "baseline", + "browser": "155.0.8059.79", + "checks": [ + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": {}, + "storyIds": [ + "sw-header--overview", + "sw-header--default", + "sw-header--controls", + "sw-header--interactive-states", + "sw-header--responsive", + "sw-header--window-move-motion", + "sw-header--composed-controls", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--layer-dropdown", + "sw-header--color-dropdown", + "sw-header--line-style-dropdown", + "sw-header--text-dimension-style-dropdown", + "sw-header--responsive-more", + "sw-header--text-stroke", + "sw-header--layer-detail-input", + "sw-header--dynamic-data", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot" + ], + "status": "PASS" +} \ No newline at end of file diff --git a/docs/sw/detail-button-qa/baseline-story-ids.json b/docs/sw/detail-button-qa/baseline-story-ids.json new file mode 100644 index 0000000..9656d58 --- /dev/null +++ b/docs/sw/detail-button-qa/baseline-story-ids.json @@ -0,0 +1 @@ +["sw-header--overview","sw-header--default","sw-header--controls","sw-header--interactive-states","sw-header--responsive","sw-header--window-move-motion","sw-header--composed-controls","sw-header--logo-slot","sw-header--document-dropdown","sw-header--layer-dropdown","sw-header--color-dropdown","sw-header--line-style-dropdown","sw-header--text-dimension-style-dropdown","sw-header--responsive-more","sw-header--text-stroke","sw-header--layer-detail-input","sw-header--dynamic-data","sw-header--property-panel","sw-header--property-panel-variants","sw-header--k-guide","sw-header--additional-hover","sw-header--property-bar","sw-header--dynamic-controls","sw-header--colorize","sw-header--composition","sw-header--property-panel-none","sw-header--property-panel-all","sw-header--property-panel-circle","sw-header--property-panel-expanded","sw-header--property-panel-compare","sw-header--property-shape-slot"] \ No newline at end of file diff --git a/docs/sw/detail-button-qa/baseline.json b/docs/sw/detail-button-qa/baseline.json new file mode 100644 index 0000000..0c9b2c2 --- /dev/null +++ b/docs/sw/detail-button-qa/baseline.json @@ -0,0 +1,23836 @@ +{ + "default-1920": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-1800": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-1440": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-1180": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-1080": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-900": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-768": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-640": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-520": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "default-390": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-1920": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1920, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1920, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 901, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 915.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 915.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 927.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 939.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 951.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 963.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 985.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 985.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 985.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1083.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1083.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1133.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1133.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1189, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1201, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1252.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1252.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1357, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1369, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1441, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1441, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1521, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1521, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1521, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1521, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1599, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1600, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1680, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1683, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1685, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1693.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1726, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1768, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1796, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1796, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1812.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1809.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1828.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1856, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1856, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1867, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1888, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-1800": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1800, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1800, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 190, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 190, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 150, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 235, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 257, + "y": 0, + "width": 1301, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 257, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 347, + "y": 5, + "width": 1054, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 347, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 360, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 360, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 363, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 367, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 367, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 367, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 367, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 367, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 367, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 363, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 380, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 400, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 428, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 428, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 428, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 585, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 598, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 599, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 670, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 670, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 670, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 781, + "y": 5, + "width": 284, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 795.90625, + "y": 22, + "width": 58, + "height": 4, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 795.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 807.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 819.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 831.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 843.90625, + "y": 22, + "width": 10, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 865.90625, + "y": 9, + "width": 185.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 865.90625, + "y": 9, + "width": 85.1875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 865.90625, + "y": 9, + "width": 85.1875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 865.90625, + "y": 23, + "width": 85.1875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 963.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 963.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 963.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1013.09375, + "y": 9, + "width": 38, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1013.09375, + "y": 9, + "width": 38, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1013.09375, + "y": 23, + "width": 38, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 1069, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 1081, + "y": 12, + "width": 39.8125, + "height": 24, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1132.8125, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1132.8125, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1132.8125, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 1237, + "y": 5, + "width": 164, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 1249, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 1249, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 1249, + "y": 16.5, + "width": 60, + "height": 15, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 1321, + "y": 9, + "width": 67.625, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 1321, + "y": 9, + "width": 67.625, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 1321, + "y": 23, + "width": 67.625, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1401, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1401, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1401, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1401, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1479, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1480, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1560, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1563, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1565, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1573.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1573.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1606, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1606, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1606, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1606, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1648, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1676, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1676, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1676, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1692.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1689.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1708.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1736, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1736, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1747, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1768, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1768, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1768, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-1440": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1440, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1440, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 310, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 270, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 355, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 377, + "y": 0, + "width": 821, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 377, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 467, + "y": 5, + "width": 430, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 467, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 480, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 480, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 483, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 487, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 487, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 483, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 500, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 520, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 548, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 548, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 705, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 718, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 719, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 790, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 790, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 901, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 901, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 912, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 912.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 918.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 924.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 1041, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 1041, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 1041, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1041, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 1119, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 1120, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 1200, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 1203, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 1205, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1213.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1213.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 1246, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 1246, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1246, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1246, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1288, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1316, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1316, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1316, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1332.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1329.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1348.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1376, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1376, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1387, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1408, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1408, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1408, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-1180": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1180, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1180, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 150, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 150, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 110, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 195, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 217, + "y": 0, + "width": 721, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 217, + "y": 14, + "width": 90, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 307, + "y": 5, + "width": 430, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 307, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 320, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 320, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 323, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 327, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 327, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 327, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 327, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 327, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 327, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 323, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 340, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 360, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 388, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 388, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 388, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 545, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 558, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 559, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 630, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 630, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 630, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 741, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 741, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 752, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 752.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 758.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 764.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 781, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 781, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 781, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 781, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 859, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 860, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 940, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 943, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 945, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 953.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 953.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 986, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 986, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 986, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 986, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 1028, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 1056, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 1056, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1056, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 1072.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 1069.42822265625, + "y": 23.43248748779297, + "width": 20.7373046875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 1088.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1116, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1116, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1127, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1148, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1148, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1148, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-1080": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 1080, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 1080, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 136, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 136, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 96, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 181, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 203, + "y": 0, + "width": 635, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 204, + "y": 5, + "width": 434, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 208, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 221, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 221, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 224, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 228, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 228, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 228, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 228, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 228, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 228, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 224, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 241, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 261, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 289, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 289, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 289, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 446, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 459, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 460, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 531, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 531, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 531, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 642, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 642, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 653, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 653.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 659.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 665.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 681, + "y": 6, + "width": 157, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 681, + "y": 6, + "width": 157, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 681, + "y": 25, + "width": 157, + "height": 19, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 681, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 759, + "y": 28.5, + "width": 1, + "height": 12, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 760, + "y": 25, + "width": 78, + "height": 19, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 840, + "y": 0, + "width": 240, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 843, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 845, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 853.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 853.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 886, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 886, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 886, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 886, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 928, + "y": 0, + "width": 88, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 956, + "y": 13, + "width": 32, + "height": 30, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 956, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 956, + "y": 13, + "width": 28, + "height": 22.84375, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 972.25, + "y": 26.25, + "width": 15.09375, + "height": 15.5625, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 969.4282836914062, + "y": 23.43248748779297, + "width": 20.7371826171875, + "height": 21.197525024414062, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 988.75, + "y": 14.5, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 1016, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 1016, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 1027, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 1048, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 1048, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 1048, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-900": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 900, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 900, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 175, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 175, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 135, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 220, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 242, + "y": 0, + "width": 480, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 243, + "y": 5, + "width": 434, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 247, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 260, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 260, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 263, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 267, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 267, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 267, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 267, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 267, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 267, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 263, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 280, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 300, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 328, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 328, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 328, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 485, + "y": 5, + "width": 192, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 498, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 499, + "y": 15, + "width": 58, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 570, + "y": 9, + "width": 71.96875, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 570, + "y": 9, + "width": 71.96875, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 570, + "y": 23, + "width": 71.96875, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 679, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 679, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 690, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 690.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 696.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 702.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 724, + "y": 0, + "width": 176, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 727, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 729, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 737.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 737.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 770, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 770, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 770, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 770, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 812, + "y": 0, + "width": 24, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 837, + "y": 11, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 836, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 836, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 847, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 868, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 868, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 868, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-768": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 768, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 768, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 239, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 239, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 199, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 284, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 306, + "y": 0, + "width": 284, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 307, + "y": 5, + "width": 238, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 311, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 324, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 324, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 327, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 331, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 331, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 331, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 331, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 331, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 331, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 327, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 344, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 364, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 392, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 392, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 392, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 547, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 547, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 558, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 558.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 564.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 570.4000244140625, + "y": 22.399999618530273, + "width": 3.199951171875, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 592, + "y": 0, + "width": 176, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 595, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 597, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 605.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 605.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 638, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 638, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 638, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 638, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 680, + "y": 0, + "width": 24, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 705, + "y": 11, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 704, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 704, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 715, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 736, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 736, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 736, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-640": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 640, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 640, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 111, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 111, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 71, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 156, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 178, + "y": 0, + "width": 284, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 179, + "y": 5, + "width": 238, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 183, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 196, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 196, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 199, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 203, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 203, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 203, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 203, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 203, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 203, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 199, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 216, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 236, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 264, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 264, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 264, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 419, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 419, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 430, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 430.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 436.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 442.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 464, + "y": 0, + "width": 176, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 467, + "y": 3, + "width": 85, + "height": 42, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 469, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 477.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 477.59375, + "y": 13.234375, + "width": 22.796875, + "height": 21.6875, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 510, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 510, + "y": 5, + "width": 40, + "height": 38, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 510, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 510, + "y": 5, + "width": 40, + "height": 38, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 552, + "y": 0, + "width": 24, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 577, + "y": 11, + "width": 45, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 576, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 576, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 587, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 608, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 608, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 608, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-520": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 520, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 520, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 103, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 103, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 67, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 152, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 170, + "y": 0, + "width": 284, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 171, + "y": 5, + "width": 238, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 175, + "y": 5, + "width": 234, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 188, + "y": 14, + "width": 60, + "height": 20, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 188, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 191, + "y": 15, + "width": 14, + "height": 18, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 195, + "y": 27, + "width": 6, + "height": 5, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 195, + "y": 27, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 195, + "y": 28, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 195, + "y": 29, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 195, + "y": 30, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 195, + "y": 31, + "width": 6, + "height": 1, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 191, + "y": 15, + "width": 14, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 208, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 228, + "y": 14, + "width": 20, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 256, + "y": 9, + "width": 139.4375, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 256, + "y": 9, + "width": 139.4375, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 256, + "y": 23, + "width": 139.4375, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 411, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 411, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 422, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 422.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 428.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 434.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 456, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 456, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 456, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 467, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 488, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 488, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 488, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "controls-390": [ + { + "tag": "HEADER", + "class": "hm-sw-header", + "x": 0, + "y": 0, + "width": 390, + "height": 49, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(6, 6, 6)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__bar", + "x": 0, + "y": 0, + "width": 390, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__home", + "x": 0, + "y": 0, + "width": 80, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__home-bg-hover", + "x": -8, + "y": -12, + "width": 92, + "height": 72, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__logo", + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 12, + "y": 16, + "width": 32, + "height": 17, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__document", + "x": 65, + "y": 0, + "width": 96, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__document-button", + "x": 65, + "y": 0, + "width": 96, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__document-name", + "x": 70, + "y": 14, + "width": 60, + "height": 20, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__arrow", + "x": 145, + "y": 22, + "width": 7, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(240, 247, 245)", + "background": "rgb(71, 175, 145)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__object-area", + "x": 163, + "y": 0, + "width": 161, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__mode", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__fields", + "x": 164, + "y": 5, + "width": 117, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--layer", + "x": 168, + "y": 5, + "width": 113, + "height": 38, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icons", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-icon hm-sw-header__layer-icon--composite", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-union", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__layer-bars", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(131, 137, 141)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(217, 217, 217)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-ellipse", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__layer-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 181, + "y": 9, + "width": 89, + "height": 30, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 181, + "y": 9, + "width": 89, + "height": 14, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 181, + "y": 23, + "width": 89, + "height": 16, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--color", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__chip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 229, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--line-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__linetype", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "I", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(255, 255, 255)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__line-values", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--text-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__font-name", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__field hm-sw-header__field--dimension-style", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__dimension-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-default", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__dimension-icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-text", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-label", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__field-value", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__more", + "x": 281, + "y": 5, + "width": 38, + "height": 38, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__more-trigger", + "x": 281, + "y": 5, + "width": 38, + "height": 38, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "svg", + "class": null, + "x": 292, + "y": 22, + "width": 16, + "height": 4, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 292.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 298.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "circle", + "class": null, + "x": 304.3999938964844, + "y": 22.399999618530273, + "width": 3.20001220703125, + "height": 3.200000762939453, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-caption", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__properties-row", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__properties-divider", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__toggle", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window", + "x": 326, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__actions", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--print", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-k-guide", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__action hm-sw-header__action--guide", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "inline-block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__motion", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__motion-icon", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-window", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-cursor", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "none", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": null, + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": "hm-sw-header__motion-tooltip", + "x": 0, + "y": 0, + "width": 0, + "height": 0, + "display": "flex", + "visibility": "visible", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0.8)" + }, + { + "tag": "DIV", + "class": "hm-sw-header__window-buttons", + "x": 326, + "y": 0, + "width": 64, + "height": 48, + "display": "flex", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--minimize", + "x": 326, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "SPAN", + "class": null, + "x": 337, + "y": 23, + "width": 10, + "height": 2, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgb(173, 176, 175)" + }, + { + "tag": "BUTTON", + "class": "hm-sw-header__window-button hm-sw-header__window-button--close", + "x": 358, + "y": 0, + "width": 32, + "height": 48, + "display": "grid", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon", + "x": 358, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "visible", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + }, + { + "tag": "IMG", + "class": "hm-sw-header__icon-hover", + "x": 358, + "y": 0, + "width": 32, + "height": 48, + "display": "block", + "visibility": "hidden", + "color": "rgb(246, 244, 242)", + "background": "rgba(0, 0, 0, 0)" + } + ], + "textDefault": { + "background": "rgba(197, 177, 158, 0.15)", + "color": "rgb(255, 255, 255)", + "opacity": "1", + "border": "0px none rgb(255, 255, 255)", + "radius": "24px", + "shadow": "none", + "textColor": "rgb(255, 255, 255)", + "textOpacity": "0.35", + "textStroke": "0px", + "iconOpacity": "1", + "iconContent": "normal", + "height": 24, + "width": 142, + "outline": "oklab(0.462622 -0.0726663 0.0150061 / 0.5) none 3px", + "disabled": false + }, + "textHover": { + "background": "rgba(197, 177, 158, 0.25)", + "color": "rgb(255, 255, 255)", + "opacity": "1", + "border": "0px none rgb(255, 255, 255)", + "radius": "25px", + "shadow": "none", + "textColor": "rgb(255, 255, 255)", + "textOpacity": "0.35", + "textStroke": "0px", + "iconOpacity": "1", + "iconContent": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='ico_layer'%3e%3cpath%20id='Union'%20opacity='0.35'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M1%201H11V3H13V10V13H10H3V11H1V1ZM3%2010H10V3V2H2V10H3Z'%20fill='white'/%3e%3c/g%3e%3c/svg%3e\")", + "height": 24, + "width": 142, + "outline": "oklab(0.462622 -0.0726663 0.0150061 / 0.5) none 3px", + "disabled": false + } +} \ No newline at end of file diff --git a/docs/sw/detail-button-qa/capture-result.json b/docs/sw/detail-button-qa/capture-result.json new file mode 100644 index 0000000..f96997c --- /dev/null +++ b/docs/sw/detail-button-qa/capture-result.json @@ -0,0 +1,14 @@ +{ + "mode": "capture", + "browser": "155.0.8059.79", + "checks": [ + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": {}, + "status": "PASS" +} \ No newline at end of file diff --git a/docs/sw/detail-button-qa/comparison-default.png b/docs/sw/detail-button-qa/comparison-default.png new file mode 100644 index 0000000..1833e50 Binary files /dev/null and b/docs/sw/detail-button-qa/comparison-default.png differ diff --git a/docs/sw/detail-button-qa/comparison-pointer-hover.png b/docs/sw/detail-button-qa/comparison-pointer-hover.png new file mode 100644 index 0000000..8d20992 Binary files /dev/null and b/docs/sw/detail-button-qa/comparison-pointer-hover.png differ diff --git a/docs/sw/detail-button-qa/guard.json b/docs/sw/detail-button-qa/guard.json new file mode 100644 index 0000000..42acee2 --- /dev/null +++ b/docs/sw/detail-button-qa/guard.json @@ -0,0 +1,2788 @@ +{ + "fingerprintFiles": [ + "src/sw/sw-header.stories.tsx", + "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "packages/sw/src/assets/layer-detail.svg", + "src/components/story-page.tsx", + "src/components/story-page.css", + "src/sw/sw-stories.css", + "src/sw/assets/sw-header-logo-placeholder.svg", + "src/sw/assets/figma-reference/btn-detail-layer-26-10767.png", + "src/sw/assets/figma-reference/input-26-11656.png", + ".storybook/preview.tsx", + ".storybook/pseudo-states.ts", + "src/theme/designer-preview.tsx", + "themes/default.json", + "src/index.css", + "src/hm-theme.css", + "src/sw/sw-header.stories.tsx" + ], + "sourceFingerprint": "33e9f2b002cfff109a08aa319c22fb6e1826fcf90ba4b6326c0b321babcfb8cd", + "contractFiles": [ + "packages/ui/src/index.ts", + "packages/ui/package.json", + "packages/center-graphic/src/index.ts", + "packages/center-graphic/package.json", + "scripts/ai-generation-guard.mjs", + "scripts/guard-navigation-analysis.mjs", + "scripts/guard-theme-analysis.mjs", + "scripts/guard-style-analysis.mjs", + "scripts/guard-style-evidence.mjs", + "scripts/guard-evidence.mjs", + "packages/ui/src/components/ui/accordion.tsx", + "packages/ui/src/components/ui/alert-dialog.tsx", + "packages/ui/src/components/ui/alert.tsx", + "packages/ui/src/components/ui/aspect-ratio.tsx", + "packages/ui/src/components/ui/avatar.tsx", + "packages/ui/src/components/ui/badge.tsx", + "packages/ui/src/components/ui/breadcrumb.tsx", + "packages/ui/src/components/ui/button.tsx", + "packages/ui/src/components/ui/calendar.tsx", + "packages/ui/src/components/ui/card.tsx", + "packages/ui/src/components/ui/carousel.tsx", + "packages/ui/src/components/ui/checkbox.tsx", + "packages/ui/src/components/ui/collapsible.tsx", + "packages/ui/src/components/ui/combobox.tsx", + "packages/ui/src/components/ui/command.tsx", + "packages/ui/src/components/ui/context-menu.tsx", + "packages/ui/src/components/ui/date-picker.tsx", + "packages/ui/src/components/ui/dialog.tsx", + "packages/ui/src/components/ui/drawer.tsx", + "packages/ui/src/components/ui/dropdown-menu.tsx", + "packages/ui/src/components/ui/hover-card.tsx", + "packages/ui/src/components/ui/input.tsx", + "packages/ui/src/components/ui/label.tsx", + "packages/ui/src/components/ui/menubar.tsx", + "packages/ui/src/components/ui/navigation-menu.tsx", + "packages/ui/src/components/ui/pagination.tsx", + "packages/ui/src/components/ui/popover.tsx", + "packages/ui/src/components/ui/progress.tsx", + "packages/ui/src/components/ui/radio-group.tsx", + "packages/ui/src/components/ui/resizable.tsx", + "packages/ui/src/components/ui/scroll-area.tsx", + "packages/ui/src/components/ui/select.tsx", + "packages/ui/src/components/ui/separator.tsx", + "packages/ui/src/components/ui/sheet.tsx", + "packages/ui/src/components/ui/skeleton.tsx", + "packages/ui/src/components/ui/slider.tsx", + "packages/ui/src/components/ui/sonner.tsx", + "packages/ui/src/components/ui/switch.tsx", + "packages/ui/src/components/ui/table.tsx", + "packages/ui/src/components/ui/tabs.tsx", + "packages/ui/src/components/ui/textarea.tsx", + "packages/ui/src/components/ui/toggle-group.tsx", + "packages/ui/src/components/ui/toggle.tsx", + "packages/ui/src/components/ui/tooltip.tsx", + "packages/ui/src/components/ui/use-connected-popup-ref.ts", + "packages/ui/src/index.ts", + "packages/ui/src/lib/utils.ts", + "packages/ui/src/patterns/dashboard-layout/dashboard-layout.tsx", + "packages/ui/src/patterns/dashboard-layout/index.ts", + "packages/ui/src/patterns/dashboard-status/contract.ts", + "packages/ui/src/patterns/dashboard-status/dashboard-status.css", + "packages/ui/src/patterns/dashboard-status/index.ts", + "packages/ui/src/patterns/data-table/data-table.tsx", + "packages/ui/src/patterns/data-table/index.ts", + "packages/ui/src/patterns/filter-bar/filter-bar.tsx", + "packages/ui/src/patterns/filter-bar/index.ts", + "packages/ui/src/patterns/gnb/gnb.tsx", + "packages/ui/src/patterns/gnb/index.ts", + "packages/ui/src/patterns/lnb/index.ts", + "packages/ui/src/patterns/lnb/lnb-mobile.tsx", + "packages/ui/src/patterns/lnb/lnb.tsx", + "packages/ui/src/patterns/loading-screen/index.ts", + "packages/ui/src/patterns/loading-screen/loading-screen.tsx", + "packages/ui/src/patterns/page-header/index.ts", + "packages/ui/src/patterns/page-header/page-header.tsx", + "packages/ui/src/tailwind.css", + "packages/ui/src/theme/accordion.css", + "packages/ui/src/theme/alert-dialog.css", + "packages/ui/src/theme/alert.css", + "packages/ui/src/theme/avatar.css", + "packages/ui/src/theme/badge.css", + "packages/ui/src/theme/breadcrumb.css", + "packages/ui/src/theme/button.css", + "packages/ui/src/theme/calendar.css", + "packages/ui/src/theme/card.css", + "packages/ui/src/theme/carousel.css", + "packages/ui/src/theme/checkbox.css", + "packages/ui/src/theme/collapsible.css", + "packages/ui/src/theme/combobox.css", + "packages/ui/src/theme/command.css", + "packages/ui/src/theme/context-menu.css", + "packages/ui/src/theme/contract.ts", + "packages/ui/src/theme/dashboard-layout.css", + "packages/ui/src/theme/data-table.css", + "packages/ui/src/theme/date-picker.css", + "packages/ui/src/theme/default-values.generated.ts", + "packages/ui/src/theme/default.css", + "packages/ui/src/theme/dialog.css", + "packages/ui/src/theme/drawer.css", + "packages/ui/src/theme/dropdown-menu.css", + "packages/ui/src/theme/filter-bar.css", + "packages/ui/src/theme/gnb.css", + "packages/ui/src/theme/hover-card.css", + "packages/ui/src/theme/index.ts", + "packages/ui/src/theme/input.css", + "packages/ui/src/theme/label.css", + "packages/ui/src/theme/lnb.css", + "packages/ui/src/theme/loader.ts", + "packages/ui/src/theme/loading-screen.css", + "packages/ui/src/theme/menubar.css", + "packages/ui/src/theme/navigation-menu.css", + "packages/ui/src/theme/overlay.css", + "packages/ui/src/theme/page-header.css", + "packages/ui/src/theme/pagination.css", + "packages/ui/src/theme/popover.css", + "packages/ui/src/theme/primitives.css", + "packages/ui/src/theme/progress.css", + "packages/ui/src/theme/radio-group.css", + "packages/ui/src/theme/requests.ts", + "packages/ui/src/theme/resizable.css", + "packages/ui/src/theme/runtime.ts", + "packages/ui/src/theme/scroll-area.css", + "packages/ui/src/theme/select.css", + "packages/ui/src/theme/separator.css", + "packages/ui/src/theme/sheet.css", + "packages/ui/src/theme/skeleton.css", + "packages/ui/src/theme/slider.css", + "packages/ui/src/theme/sonner.css", + "packages/ui/src/theme/switch.css", + "packages/ui/src/theme/table.css", + "packages/ui/src/theme/tabs.css", + "packages/ui/src/theme/textarea.css", + "packages/ui/src/theme/toggle-group.css", + "packages/ui/src/theme/toggle.css", + "packages/ui/src/theme/tooltip.css", + "packages/ui/src/theme.css", + "packages/center-graphic/src/components/CenterInformationDisplay.css", + "packages/center-graphic/src/components/CenterInformationDisplay.tsx", + "packages/center-graphic/src/components/CenterRepresentation.css", + "packages/center-graphic/src/components/CenterRepresentation.tsx", + "packages/center-graphic/src/components/CenterSpatialInformation.css", + "packages/center-graphic/src/components/CenterSpatialInformation.tsx", + "packages/center-graphic/src/components/CenterTitle.css", + "packages/center-graphic/src/components/CenterTitle.tsx", + "packages/center-graphic/src/components/CompactFacilityConnection.css", + "packages/center-graphic/src/components/CompactFacilityConnection.tsx", + "packages/center-graphic/src/components/FacilityBatch.css", + "packages/center-graphic/src/components/FacilityBatch.tsx", + "packages/center-graphic/src/components/TunnelFacility.css", + "packages/center-graphic/src/components/TunnelFacility.tsx", + "packages/center-graphic/src/env.d.ts", + "packages/center-graphic/src/index.ts", + "packages/center-graphic/src/reference.ts" + ], + "contractFingerprint": "36a1a21575262f886420a7a378cf8eced5b846187296b299ef7c624ee924a1d2", + "schemaVersion": 2, + "status": "NOT VERIFIED", + "staticStatus": "NOT VERIFIED", + "runtimeStatus": "NOT VERIFIED", + "runtimeRequired": false, + "profile": "STORYBOOK", + "scope": "PARTIAL", + "mode": null, + "target": "D:\\디자인시스템\\HMDesign-SW", + "contractSource": "D:\\디자인시스템\\HMDesign-SW", + "checkedFiles": [ + ".storybook/preview.tsx", + ".storybook/pseudo-states.ts", + "packages/sw/src/assets/layer-detail.svg", + "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "src/components/story-page.css", + "src/components/story-page.tsx", + "src/hm-theme.css", + "src/index.css", + "src/sw/assets/figma-reference/btn-detail-layer-26-10767.png", + "src/sw/assets/figma-reference/input-26-11656.png", + "src/sw/assets/sw-header-logo-placeholder.svg", + "src/sw/sw-header.stories.tsx", + "src/sw/sw-stories.css", + "src/theme/designer-preview.tsx", + "themes/default.json" + ], + "checkedGroups": [ + { + "name": "Navigation", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + } + ], + "basis": "See issue evidence" + }, + { + "name": "Storybook / Production", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + } + ], + "basis": "See issue evidence" + }, + { + "name": "Storybook CSS Entry", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + } + ], + "basis": "See issue evidence" + }, + { + "name": "Official Component Import", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + } + ], + "basis": "See issue evidence" + }, + { + "name": "Theme Token", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + }, + { + "code": "TOKEN-001", + "file": "src/sw/sw-stories.css", + "line": 11 + }, + { + "code": "TOKEN-001", + "file": "src/sw/sw-stories.css", + "line": 17 + }, + { + "code": "TOKEN-001", + "file": "src/sw/sw-stories.css", + "line": 22 + }, + { + "code": "TOKEN-001", + "file": "src/sw/sw-stories.css", + "line": 35 + }, + { + "code": "TOKEN-001", + "file": "src/sw/sw-stories.css", + "line": 48 + }, + { + "code": "TOKEN-002", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 142 + }, + { + "code": "TOKEN-002", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 153 + }, + { + "code": "TOKEN-002", + "file": "src/components/story-page.tsx", + "line": 13 + }, + { + "code": "TOKEN-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 111 + }, + { + "code": "TOKEN-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 512 + } + ], + "basis": "See issue evidence" + }, + { + "name": "Component Reuse", + "status": "NOT VERIFIED", + "evidence": [ + { + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10 + }, + { + "code": "REUSE-004", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 142 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1155 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1156 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1299 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1300 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1301 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1302 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1307 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1308 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1309 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1442 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1443 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1444 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1445 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1448 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1449 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1450 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1451 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1452 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1453 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1454 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1455 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1456 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1489 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1519 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1520 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1521 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1522 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1523 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1524 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1525 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1526 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1527 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1528 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1553 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1553 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1554 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1555 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1556 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1557 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1558 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1559 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1560 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1561 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1626 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1629 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1629 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1632 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1633 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1634 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1635 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1639 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1640 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1727 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1728 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1731 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1732 + }, + { + "code": "REUSE-004", + "file": "src/sw/sw-header.stories.tsx", + "line": 1733 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx", + "line": 1 + }, + { + "code": "SCOPE-001", + "file": "packages/sw/src/theme/sw.css", + "line": 1 + } + ], + "basis": "See issue evidence" + } + ], + "checkedHMElements": [], + "tokenEvidence": [ + { + "entry": "src/sw/sw-header.stories.tsx", + "definitionCount": 1208, + "definitions": [ + "--hm-accordion-content-font-size", + "--hm-accordion-content-line-height", + "--hm-accordion-content-padding-bottom", + "--hm-accordion-content-text", + "--hm-accordion-disabled-opacity", + "--hm-accordion-divider-color", + "--hm-accordion-divider-width", + "--hm-accordion-icon-color", + "--hm-accordion-icon-size", + "--hm-accordion-text", + "--hm-accordion-trigger-font-size", + "--hm-accordion-trigger-font-weight", + "--hm-accordion-trigger-gap", + "--hm-accordion-trigger-line-height", + "--hm-accordion-trigger-min-height", + "--hm-accordion-trigger-padding-y", + "--hm-alert-border-width", + "--hm-alert-default-background", + "--hm-alert-default-border-color", + "--hm-alert-default-description-color", + "--hm-alert-default-title-color", + "--hm-alert-description-font-size", + "--hm-alert-description-font-weight", + "--hm-alert-description-line-height", + "--hm-alert-destructive-background", + "--hm-alert-destructive-border-color", + "--hm-alert-destructive-description-color", + "--hm-alert-destructive-title-color", + "--hm-alert-dialog-actions-gap", + "--hm-alert-dialog-actions-margin-top", + "--hm-alert-dialog-background", + "--hm-alert-dialog-border-color", + "--hm-alert-dialog-border-width", + "--hm-alert-dialog-description-color", + "--hm-alert-dialog-description-font-size", + "--hm-alert-dialog-description-line-height", + "--hm-alert-dialog-edge", + "--hm-alert-dialog-header-gap", + "--hm-alert-dialog-padding", + "--hm-alert-dialog-radius", + "--hm-alert-dialog-shadow", + "--hm-alert-dialog-text", + "--hm-alert-dialog-title-font-size", + "--hm-alert-dialog-title-font-weight", + "--hm-alert-dialog-title-line-height", + "--hm-alert-dialog-width", + "--hm-alert-icon-size", + "--hm-alert-padding-x", + "--hm-alert-padding-y", + "--hm-alert-radius", + "--hm-alert-title-font-size", + "--hm-alert-title-font-weight", + "--hm-alert-title-line-height", + "--hm-avatar-fallback-background", + "--hm-avatar-fallback-font-size", + "--hm-avatar-fallback-font-size-lg", + "--hm-avatar-fallback-font-size-md", + "--hm-avatar-fallback-font-size-sm", + "--hm-avatar-fallback-font-weight", + "--hm-avatar-fallback-text", + "--hm-avatar-radius", + "--hm-avatar-size", + "--hm-avatar-size-lg", + "--hm-avatar-size-md", + "--hm-avatar-size-sm", + "--hm-badge-border-width", + "--hm-badge-default-background", + "--hm-badge-default-border-color", + "--hm-badge-default-text", + "--hm-badge-destructive-background", + "--hm-badge-destructive-border-color", + "--hm-badge-destructive-text", + "--hm-badge-font-size", + "--hm-badge-font-weight", + "--hm-badge-line-height", + "--hm-badge-outline-background", + "--hm-badge-outline-border-color", + "--hm-badge-outline-text", + "--hm-badge-padding-x", + "--hm-badge-padding-y", + "--hm-badge-radius", + "--hm-badge-secondary-background", + "--hm-badge-secondary-border-color", + "--hm-badge-secondary-text", + "--hm-beige", + "--hm-beige-light", + "--hm-black", + "--hm-breadcrumb-ellipsis-size", + "--hm-breadcrumb-focus-radius", + "--hm-breadcrumb-font-size", + "--hm-breadcrumb-font-weight", + "--hm-breadcrumb-gap", + "--hm-breadcrumb-line-height", + "--hm-breadcrumb-link-color", + "--hm-breadcrumb-link-hover-color", + "--hm-breadcrumb-page-color", + "--hm-breadcrumb-page-font-weight", + "--hm-breadcrumb-separator-color", + "--hm-breadcrumb-separator-size", + "--hm-brown", + "--hm-brown-dark-1", + "--hm-brown-dark-2", + "--hm-brown-dark-3", + "--hm-brown-default", + "--hm-brown-light-1", + "--hm-brown-light-2", + "--hm-brown-light-3", + "--hm-brown-light-4", + "--hm-button-bevel", + "--hm-button-border-width", + "--hm-button-brand-background", + "--hm-button-brand-bevel", + "--hm-button-brand-border", + "--hm-button-brand-brown-background", + "--hm-button-brand-brown-border", + "--hm-button-brand-green-background", + "--hm-button-brand-green-border", + "--hm-button-brand-orange-background", + "--hm-button-brand-orange-border", + "--hm-button-disabled-opacity", + "--hm-button-font-family", + "--hm-button-font-size", + "--hm-button-font-size-lg", + "--hm-button-font-size-md", + "--hm-button-font-size-sm", + "--hm-button-height", + "--hm-button-height-lg", + "--hm-button-height-md", + "--hm-button-height-sm", + "--hm-button-line-height", + "--hm-button-line-height-lg", + "--hm-button-line-height-md", + "--hm-button-line-height-sm", + "--hm-button-outline-brown-ink", + "--hm-button-outline-green-ink", + "--hm-button-outline-ink", + "--hm-button-outline-red-ink", + "--hm-button-outline-red-surface", + "--hm-button-outline-surface", + "--hm-button-padding-x", + "--hm-button-padding-x-lg", + "--hm-button-padding-x-md", + "--hm-button-padding-x-sm", + "--hm-button-radius", + "--hm-button-solid-background", + "--hm-button-solid-border", + "--hm-button-solid-brown-background", + "--hm-button-solid-brown-border", + "--hm-button-solid-gray-background", + "--hm-button-solid-gray-border", + "--hm-button-solid-green-background", + "--hm-button-solid-green-border", + "--hm-button-solid-orange-background", + "--hm-button-solid-orange-border", + "--hm-button-solid-red-background", + "--hm-button-solid-red-border", + "--hm-button-state-overlay", + "--hm-button-state-surface", + "--hm-button-text", + "--hm-button-weight-brand", + "--hm-button-weight-standard", + "--hm-calendar-caption-font-size", + "--hm-calendar-caption-font-weight", + "--hm-calendar-caption-height", + "--hm-calendar-caption-line-height", + "--hm-calendar-day-font-size", + "--hm-calendar-day-hover-background", + "--hm-calendar-day-line-height", + "--hm-calendar-day-radius", + "--hm-calendar-day-size", + "--hm-calendar-disabled-opacity", + "--hm-calendar-month-gap", + "--hm-calendar-nav-hover-background", + "--hm-calendar-nav-icon-size", + "--hm-calendar-nav-radius", + "--hm-calendar-nav-size", + "--hm-calendar-outside-color", + "--hm-calendar-outside-opacity", + "--hm-calendar-padding", + "--hm-calendar-range-edge-background", + "--hm-calendar-range-edge-text", + "--hm-calendar-range-middle-background", + "--hm-calendar-range-middle-text", + "--hm-calendar-selected-background", + "--hm-calendar-selected-text", + "--hm-calendar-text", + "--hm-calendar-today-background", + "--hm-calendar-today-font-weight", + "--hm-calendar-weekday-color", + "--hm-calendar-weekday-font-size", + "--hm-calendar-weekday-font-weight", + "--hm-calendar-weekday-line-height", + "--hm-card-border-color", + "--hm-card-border-color-on-content", + "--hm-card-border-width", + "--hm-card-header-gap", + "--hm-card-padding", + "--hm-card-radius", + "--hm-card-surface", + "--hm-card-surface-content", + "--hm-card-text", + "--hm-card-title-color", + "--hm-card-title-font-size", + "--hm-card-title-font-weight", + "--hm-card-title-line-height", + "--hm-carousel-control-background", + "--hm-carousel-control-border-color", + "--hm-carousel-control-border-width", + "--hm-carousel-control-hover-background", + "--hm-carousel-control-icon-size", + "--hm-carousel-control-inset", + "--hm-carousel-control-size", + "--hm-carousel-control-text", + "--hm-carousel-disabled-opacity", + "--hm-carousel-gap", + "--hm-checkbox-background", + "--hm-checkbox-border-color", + "--hm-checkbox-border-width", + "--hm-checkbox-checked-background", + "--hm-checkbox-checked-border-color", + "--hm-checkbox-checked-hover-overlay", + "--hm-checkbox-error-border-color", + "--hm-checkbox-hover-border-color", + "--hm-checkbox-icon-size", + "--hm-checkbox-indicator-color", + "--hm-checkbox-radius", + "--hm-checkbox-size", + "--hm-collapsible-content-font-size", + "--hm-collapsible-content-gap", + "--hm-collapsible-content-line-height", + "--hm-collapsible-content-text", + "--hm-collapsible-disabled-opacity", + "--hm-collapsible-icon-color", + "--hm-collapsible-icon-size", + "--hm-collapsible-trigger-font-size", + "--hm-collapsible-trigger-font-weight", + "--hm-collapsible-trigger-gap", + "--hm-collapsible-trigger-line-height", + "--hm-collapsible-trigger-text", + "--hm-color-action-cancel", + "--hm-color-action-destructive", + "--hm-color-action-destructive-hover", + "--hm-color-action-overlay-active", + "--hm-color-action-overlay-hover", + "--hm-color-action-shadow-dark", + "--hm-color-action-shadow-light", + "--hm-color-border-control", + "--hm-color-border-default", + "--hm-color-border-focus", + "--hm-color-primary", + "--hm-color-primary-active", + "--hm-color-primary-hover", + "--hm-color-surface-content", + "--hm-color-surface-default", + "--hm-color-surface-subtle", + "--hm-color-text-inverse", + "--hm-color-text-placeholder", + "--hm-color-text-primary", + "--hm-color-text-secondary", + "--hm-combobox-background", + "--hm-combobox-border-color", + "--hm-combobox-border-width", + "--hm-combobox-check-size", + "--hm-combobox-disabled-opacity", + "--hm-combobox-focus-border-color", + "--hm-combobox-font-size", + "--hm-combobox-font-size-lg", + "--hm-combobox-font-size-md", + "--hm-combobox-gap", + "--hm-combobox-height", + "--hm-combobox-height-lg", + "--hm-combobox-height-md", + "--hm-combobox-icon-color", + "--hm-combobox-icon-size", + "--hm-combobox-line-height", + "--hm-combobox-line-height-lg", + "--hm-combobox-line-height-md", + "--hm-combobox-option-font-size", + "--hm-combobox-option-line-height", + "--hm-combobox-option-state-background", + "--hm-combobox-option-state-text", + "--hm-combobox-padding-x", + "--hm-combobox-placeholder", + "--hm-combobox-popup-radius", + "--hm-combobox-popup-shadow", + "--hm-combobox-radius", + "--hm-combobox-seam-color", + "--hm-combobox-text", + "--hm-command-background", + "--hm-command-disabled-opacity", + "--hm-command-divider-color", + "--hm-command-empty-color", + "--hm-command-empty-padding-y", + "--hm-command-group-label-color", + "--hm-command-group-label-font-size", + "--hm-command-group-label-font-weight", + "--hm-command-group-label-line-height", + "--hm-command-highlight-background", + "--hm-command-highlight-text", + "--hm-command-input-font-size", + "--hm-command-input-gap", + "--hm-command-input-height", + "--hm-command-input-icon-color", + "--hm-command-input-icon-size", + "--hm-command-input-line-height", + "--hm-command-input-padding-x", + "--hm-command-input-placeholder", + "--hm-command-item-font-size", + "--hm-command-item-gap", + "--hm-command-item-height", + "--hm-command-item-line-height", + "--hm-command-item-padding-x", + "--hm-command-item-radius", + "--hm-command-list-max-height", + "--hm-command-list-padding", + "--hm-command-radius", + "--hm-command-shortcut-color", + "--hm-command-shortcut-font-size", + "--hm-command-text", + "--hm-context-menu-background", + "--hm-context-menu-border-color", + "--hm-context-menu-border-width", + "--hm-context-menu-destructive-highlight-background", + "--hm-context-menu-destructive-text", + "--hm-context-menu-font-size", + "--hm-context-menu-font-weight", + "--hm-context-menu-highlight-background", + "--hm-context-menu-highlight-text", + "--hm-context-menu-indicator-size", + "--hm-context-menu-item-gap", + "--hm-context-menu-item-height", + "--hm-context-menu-item-padding-x", + "--hm-context-menu-item-radius", + "--hm-context-menu-label-color", + "--hm-context-menu-label-font-size", + "--hm-context-menu-label-font-weight", + "--hm-context-menu-label-line-height", + "--hm-context-menu-line-height", + "--hm-context-menu-padding", + "--hm-context-menu-radio-dot-size", + "--hm-context-menu-radius", + "--hm-context-menu-separator-color", + "--hm-context-menu-shadow", + "--hm-context-menu-shortcut-color", + "--hm-context-menu-shortcut-font-size", + "--hm-context-menu-text", + "--hm-control-height-md", + "--hm-danger", + "--hm-dashboard-background", + "--hm-dashboard-compact-background", + "--hm-dashboard-content-background", + "--hm-dashboard-content-shadow-side", + "--hm-dashboard-content-shadow-top", + "--hm-dashboard-content-side-radius", + "--hm-dashboard-content-top-radius", + "--hm-dashboard-gap", + "--hm-dashboard-header-background", + "--hm-dashboard-height", + "--hm-dashboard-min-width", + "--hm-dashboard-nav-focus-outline", + "--hm-dashboard-nav-text", + "--hm-dashboard-nav-text-secondary", + "--hm-dashboard-nav-text-stroke-color", + "--hm-dashboard-nav-text-stroke-width", + "--hm-dashboard-padding", + "--hm-dashboard-sidebar-width", + "--hm-data-table-empty-color", + "--hm-data-table-empty-padding-y", + "--hm-data-table-footer-gap", + "--hm-data-table-footer-padding-top", + "--hm-data-table-skeleton-height", + "--hm-data-table-sort-active-color", + "--hm-data-table-sort-gap", + "--hm-data-table-sort-icon-size", + "--hm-data-table-summary-color", + "--hm-data-table-summary-font-size", + "--hm-date-picker-background", + "--hm-date-picker-border-color", + "--hm-date-picker-border-width", + "--hm-date-picker-disabled-opacity", + "--hm-date-picker-focus-border-color", + "--hm-date-picker-font-size", + "--hm-date-picker-font-size-lg", + "--hm-date-picker-font-size-md", + "--hm-date-picker-gap", + "--hm-date-picker-height", + "--hm-date-picker-height-lg", + "--hm-date-picker-height-md", + "--hm-date-picker-icon-color", + "--hm-date-picker-icon-size", + "--hm-date-picker-line-height", + "--hm-date-picker-line-height-lg", + "--hm-date-picker-line-height-md", + "--hm-date-picker-padding-x", + "--hm-date-picker-placeholder", + "--hm-date-picker-radius", + "--hm-date-picker-text", + "--hm-dialog-actions-gap", + "--hm-dialog-app-footer-height", + "--hm-dialog-app-header-height", + "--hm-dialog-background", + "--hm-dialog-body-font-size", + "--hm-dialog-body-line-height", + "--hm-dialog-border-color", + "--hm-dialog-border-width", + "--hm-dialog-description-color", + "--hm-dialog-description-font-size", + "--hm-dialog-description-line-height", + "--hm-dialog-divider-color", + "--hm-dialog-edge", + "--hm-dialog-footer-padding-top", + "--hm-dialog-header-gap", + "--hm-dialog-header-padding-bottom", + "--hm-dialog-padding", + "--hm-dialog-radius", + "--hm-dialog-shadow", + "--hm-dialog-text", + "--hm-dialog-title-font-size", + "--hm-dialog-title-font-weight", + "--hm-dialog-title-line-height", + "--hm-drawer-background", + "--hm-drawer-body-font-size", + "--hm-drawer-body-line-height", + "--hm-drawer-border-color", + "--hm-drawer-border-width", + "--hm-drawer-description-color", + "--hm-drawer-description-font-size", + "--hm-drawer-description-line-height", + "--hm-drawer-edge-gap", + "--hm-drawer-footer-gap", + "--hm-drawer-handle-color", + "--hm-drawer-handle-height", + "--hm-drawer-handle-margin-top", + "--hm-drawer-handle-width", + "--hm-drawer-header-gap", + "--hm-drawer-max-height", + "--hm-drawer-padding", + "--hm-drawer-radius", + "--hm-drawer-shadow", + "--hm-drawer-text", + "--hm-drawer-title-font-size", + "--hm-drawer-title-font-weight", + "--hm-drawer-title-line-height", + "--hm-drawer-width", + "--hm-dropdown-menu-background", + "--hm-dropdown-menu-border-color", + "--hm-dropdown-menu-border-width", + "--hm-dropdown-menu-destructive-highlight-background", + "--hm-dropdown-menu-destructive-text", + "--hm-dropdown-menu-font-size", + "--hm-dropdown-menu-font-weight", + "--hm-dropdown-menu-highlight-background", + "--hm-dropdown-menu-highlight-text", + "--hm-dropdown-menu-indicator-size", + "--hm-dropdown-menu-item-gap", + "--hm-dropdown-menu-item-height", + "--hm-dropdown-menu-item-padding-x", + "--hm-dropdown-menu-item-radius", + "--hm-dropdown-menu-label-color", + "--hm-dropdown-menu-label-font-size", + "--hm-dropdown-menu-label-font-weight", + "--hm-dropdown-menu-label-line-height", + "--hm-dropdown-menu-line-height", + "--hm-dropdown-menu-padding", + "--hm-dropdown-menu-radio-dot-size", + "--hm-dropdown-menu-radius", + "--hm-dropdown-menu-separator-color", + "--hm-dropdown-menu-shadow", + "--hm-dropdown-menu-shortcut-color", + "--hm-dropdown-menu-shortcut-font-size", + "--hm-dropdown-menu-text", + "--hm-field-border", + "--hm-filter-bar-control-width", + "--hm-filter-bar-gap", + "--hm-filter-bar-narrow-breakpoint", + "--hm-filter-bar-search-clear-color", + "--hm-filter-bar-search-icon-color", + "--hm-filter-bar-search-icon-gap", + "--hm-filter-bar-search-icon-inset", + "--hm-filter-bar-search-icon-size", + "--hm-filter-bar-search-text-end", + "--hm-filter-bar-search-text-start", + "--hm-filter-bar-search-width", + "--hm-font-family-base", + "--hm-font-size-button-md", + "--hm-font-weight-bold", + "--hm-font-weight-medium", + "--hm-gnb-background", + "--hm-gnb-brand-eyebrow-size", + "--hm-gnb-brand-eyebrow-spacing", + "--hm-gnb-brand-gap", + "--hm-gnb-brand-name-size", + "--hm-gnb-brand-padding-end", + "--hm-gnb-brand-text-gap", + "--hm-gnb-column-gap", + "--hm-gnb-content-menu-color", + "--hm-gnb-current-background", + "--hm-gnb-current-text", + "--hm-gnb-focus-outline", + "--hm-gnb-height", + "--hm-gnb-hover-background", + "--hm-gnb-join", + "--hm-gnb-logo-max-height", + "--hm-gnb-menu-font-size", + "--hm-gnb-menu-font-weight", + "--hm-gnb-menu-gap", + "--hm-gnb-menu-inset-top", + "--hm-gnb-menu-join", + "--hm-gnb-menu-min-width", + "--hm-gnb-menu-padding-x", + "--hm-gnb-menu-radius", + "--hm-gnb-mobile-focus-ring", + "--hm-gnb-mobile-group-gap", + "--hm-gnb-mobile-group-label-color", + "--hm-gnb-mobile-link-current-background", + "--hm-gnb-mobile-link-current-font-weight", + "--hm-gnb-mobile-link-current-text", + "--hm-gnb-mobile-link-font-size", + "--hm-gnb-mobile-link-font-weight", + "--hm-gnb-mobile-link-height", + "--hm-gnb-mobile-link-hover-background", + "--hm-gnb-mobile-link-hover-text", + "--hm-gnb-mobile-link-line-height", + "--hm-gnb-mobile-link-padding-x", + "--hm-gnb-mobile-link-radius", + "--hm-gnb-mobile-link-text", + "--hm-gnb-mobile-nested-gap", + "--hm-gnb-mobile-nested-indent", + "--hm-gnb-open-background", + "--hm-gnb-open-text", + "--hm-gnb-padding-x", + "--hm-gnb-panel-background", + "--hm-gnb-panel-item-font-size", + "--hm-gnb-panel-item-hover-background", + "--hm-gnb-panel-item-hover-text", + "--hm-gnb-panel-item-line-height", + "--hm-gnb-panel-item-min-height", + "--hm-gnb-panel-item-padding", + "--hm-gnb-panel-item-text", + "--hm-gnb-panel-radius", + "--hm-gnb-panel-shadow", + "--hm-gnb-text", + "--hm-gnb-text-secondary", + "--hm-gnb-text-stroke-color", + "--hm-gnb-text-stroke-width", + "--hm-gnb-user-description-size", + "--hm-gnb-user-gap", + "--hm-gnb-user-name-size", + "--hm-gnb-user-radius", + "--hm-gnb-user-text-max-width", + "--hm-gnb-z-index", + "--hm-green", + "--hm-green-dark-1", + "--hm-green-dark-2", + "--hm-green-dark-3", + "--hm-green-deep", + "--hm-green-default", + "--hm-green-light", + "--hm-green-light-1", + "--hm-green-light-2", + "--hm-green-light-3", + "--hm-green-light-4", + "--hm-green-tint", + "--hm-green-tone-1", + "--hm-green-tone-2", + "--hm-green-tone-3", + "--hm-green-tone-4", + "--hm-hover-card-background", + "--hm-hover-card-border-color", + "--hm-hover-card-border-width", + "--hm-hover-card-font-size", + "--hm-hover-card-font-weight", + "--hm-hover-card-line-height", + "--hm-hover-card-padding", + "--hm-hover-card-radius", + "--hm-hover-card-shadow", + "--hm-hover-card-text", + "--hm-hover-card-width", + "--hm-ink", + "--hm-input-background", + "--hm-input-border-color", + "--hm-input-border-width", + "--hm-input-error-border-color", + "--hm-input-focus-border-color", + "--hm-input-font-size", + "--hm-input-font-size-lg", + "--hm-input-font-size-md", + "--hm-input-font-size-sm", + "--hm-input-font-weight", + "--hm-input-height", + "--hm-input-height-lg", + "--hm-input-height-md", + "--hm-input-height-sm", + "--hm-input-line-height", + "--hm-input-line-height-lg", + "--hm-input-line-height-md", + "--hm-input-line-height-sm", + "--hm-input-padding-x", + "--hm-input-padding-x-lg", + "--hm-input-padding-x-md", + "--hm-input-padding-x-sm", + "--hm-input-placeholder", + "--hm-input-radius", + "--hm-input-state-border-width", + "--hm-input-text", + "--hm-label-font-size", + "--hm-label-font-weight", + "--hm-label-line-height", + "--hm-label-text", + "--hm-lnb-background", + "--hm-lnb-background-end", + "--hm-lnb-brand-eyebrow-size", + "--hm-lnb-brand-eyebrow-spacing", + "--hm-lnb-brand-gap", + "--hm-lnb-brand-name-size", + "--hm-lnb-brand-padding-bottom", + "--hm-lnb-brand-padding-x", + "--hm-lnb-brand-text-gap", + "--hm-lnb-current-background", + "--hm-lnb-current-depth", + "--hm-lnb-current-radius", + "--hm-lnb-current-text", + "--hm-lnb-focus-outline", + "--hm-lnb-group-arrow-size", + "--hm-lnb-group-current-text", + "--hm-lnb-group-open-background", + "--hm-lnb-group-open-line", + "--hm-lnb-group-padding-bottom", + "--hm-lnb-group-radius", + "--hm-lnb-hover-background", + "--hm-lnb-inset-end", + "--hm-lnb-inset-start", + "--hm-lnb-item-font-size", + "--hm-lnb-item-font-weight", + "--hm-lnb-item-gap", + "--hm-lnb-item-icon-opacity", + "--hm-lnb-item-icon-size", + "--hm-lnb-item-icon-stroke", + "--hm-lnb-item-line-height", + "--hm-lnb-item-min-height", + "--hm-lnb-item-padding-start", + "--hm-lnb-item-radius", + "--hm-lnb-item-text-shadow", + "--hm-lnb-item-text-stroke-width", + "--hm-lnb-join", + "--hm-lnb-mobile-background", + "--hm-lnb-mobile-focus-ring", + "--hm-lnb-mobile-group-gap", + "--hm-lnb-mobile-group-label-color", + "--hm-lnb-mobile-height", + "--hm-lnb-mobile-join", + "--hm-lnb-mobile-link-current-background", + "--hm-lnb-mobile-link-current-font-weight", + "--hm-lnb-mobile-link-current-text", + "--hm-lnb-mobile-link-font-size", + "--hm-lnb-mobile-link-font-weight", + "--hm-lnb-mobile-link-height", + "--hm-lnb-mobile-link-hover-background", + "--hm-lnb-mobile-link-hover-text", + "--hm-lnb-mobile-link-line-height", + "--hm-lnb-mobile-link-padding-x", + "--hm-lnb-mobile-link-radius", + "--hm-lnb-mobile-link-text", + "--hm-lnb-mobile-nested-gap", + "--hm-lnb-mobile-nested-indent", + "--hm-lnb-nav-padding-top", + "--hm-lnb-padding-bottom", + "--hm-lnb-padding-top", + "--hm-lnb-profile-description-size", + "--hm-lnb-profile-gap", + "--hm-lnb-profile-name-size", + "--hm-lnb-profile-padding-top", + "--hm-lnb-profile-padding-x", + "--hm-lnb-subitem-padding-start", + "--hm-lnb-subitem-surface-inset", + "--hm-lnb-text", + "--hm-lnb-text-secondary", + "--hm-lnb-text-stroke-color", + "--hm-lnb-third-connector", + "--hm-lnb-third-connector-color", + "--hm-lnb-third-connector-current-color", + "--hm-lnb-third-connector-length", + "--hm-lnb-third-connector-width", + "--hm-lnb-third-connector-x", + "--hm-lnb-third-current-font-weight", + "--hm-lnb-third-font-weight", + "--hm-lnb-third-line", + "--hm-lnb-third-line-end", + "--hm-lnb-third-line-height", + "--hm-lnb-third-min-height", + "--hm-lnb-third-padding-block", + "--hm-lnb-third-padding-start", + "--hm-lnb-width", + "--hm-loading-screen-background", + "--hm-loading-screen-foreground", + "--hm-loading-screen-gap", + "--hm-loading-screen-inline-padding-block", + "--hm-loading-screen-inline-padding-inline", + "--hm-loading-screen-inline-radius", + "--hm-loading-screen-inline-shadow", + "--hm-loading-screen-z-index", + "--hm-loading-spinner-bar-color", + "--hm-loading-spinner-bar-count", + "--hm-loading-spinner-bar-height", + "--hm-loading-spinner-bar-min-opacity", + "--hm-loading-spinner-bar-width", + "--hm-loading-spinner-duration", + "--hm-loading-spinner-size", + "--hm-loading-spinner-stagger", + "--hm-loading-text-color", + "--hm-loading-text-font-size", + "--hm-loading-text-font-weight", + "--hm-loading-text-letter-spacing", + "--hm-menubar-background", + "--hm-menubar-border-color", + "--hm-menubar-border-width", + "--hm-menubar-content-background", + "--hm-menubar-content-border-color", + "--hm-menubar-content-border-width", + "--hm-menubar-content-padding", + "--hm-menubar-content-radius", + "--hm-menubar-content-shadow", + "--hm-menubar-destructive-highlight-background", + "--hm-menubar-destructive-text", + "--hm-menubar-font-size", + "--hm-menubar-gap", + "--hm-menubar-height", + "--hm-menubar-highlight-background", + "--hm-menubar-highlight-text", + "--hm-menubar-indicator-size", + "--hm-menubar-item-gap", + "--hm-menubar-item-height", + "--hm-menubar-item-padding-x", + "--hm-menubar-item-radius", + "--hm-menubar-label-color", + "--hm-menubar-label-font-size", + "--hm-menubar-label-font-weight", + "--hm-menubar-label-line-height", + "--hm-menubar-line-height", + "--hm-menubar-padding", + "--hm-menubar-radio-dot-size", + "--hm-menubar-radius", + "--hm-menubar-separator-color", + "--hm-menubar-shortcut-color", + "--hm-menubar-shortcut-font-size", + "--hm-menubar-text", + "--hm-menubar-trigger-font-size", + "--hm-menubar-trigger-font-weight", + "--hm-menubar-trigger-highlight-background", + "--hm-menubar-trigger-line-height", + "--hm-menubar-trigger-padding-x", + "--hm-menubar-trigger-radius", + "--hm-muted", + "--hm-navigation-menu-active-background", + "--hm-navigation-menu-active-font-weight", + "--hm-navigation-menu-active-text", + "--hm-navigation-menu-background", + "--hm-navigation-menu-border-color", + "--hm-navigation-menu-border-width", + "--hm-navigation-menu-content-min-width", + "--hm-navigation-menu-content-padding", + "--hm-navigation-menu-description-color", + "--hm-navigation-menu-description-font-size", + "--hm-navigation-menu-description-line-height", + "--hm-navigation-menu-disabled-opacity", + "--hm-navigation-menu-font-size", + "--hm-navigation-menu-font-weight", + "--hm-navigation-menu-gap", + "--hm-navigation-menu-height", + "--hm-navigation-menu-hover-background", + "--hm-navigation-menu-hover-text", + "--hm-navigation-menu-icon-size", + "--hm-navigation-menu-item-gap", + "--hm-navigation-menu-item-padding", + "--hm-navigation-menu-item-radius", + "--hm-navigation-menu-line-height", + "--hm-navigation-menu-padding-x", + "--hm-navigation-menu-radius", + "--hm-navigation-menu-shadow", + "--hm-navigation-menu-surface-radius", + "--hm-navigation-menu-text", + "--hm-neutral-gray-500", + "--hm-orange-dark-1", + "--hm-orange-dark-2", + "--hm-orange-dark-3", + "--hm-orange-default", + "--hm-orange-light-1", + "--hm-orange-light-2", + "--hm-orange-light-3", + "--hm-orange-light-4", + "--hm-page-header-actions-gap", + "--hm-page-header-breadcrumb-gap", + "--hm-page-header-description-color", + "--hm-page-header-description-font-size", + "--hm-page-header-description-gap", + "--hm-page-header-description-line-height", + "--hm-page-header-gap", + "--hm-page-header-margin-bottom", + "--hm-page-header-title-color", + "--hm-page-header-title-font-size", + "--hm-page-header-title-font-weight", + "--hm-page-header-title-line-height", + "--hm-pagination-active-background", + "--hm-pagination-active-font-weight", + "--hm-pagination-active-text", + "--hm-pagination-disabled-opacity", + "--hm-pagination-ellipsis-color", + "--hm-pagination-font-size", + "--hm-pagination-font-weight", + "--hm-pagination-gap", + "--hm-pagination-height", + "--hm-pagination-hover-background", + "--hm-pagination-hover-text", + "--hm-pagination-icon-size", + "--hm-pagination-line-height", + "--hm-pagination-min-width", + "--hm-pagination-padding-x", + "--hm-pagination-radius", + "--hm-pagination-text", + "--hm-popover-background", + "--hm-popover-border-color", + "--hm-popover-border-width", + "--hm-popover-font-size", + "--hm-popover-font-weight", + "--hm-popover-line-height", + "--hm-popover-padding", + "--hm-popover-radius", + "--hm-popover-shadow", + "--hm-popover-text", + "--hm-popover-width", + "--hm-progress-height", + "--hm-progress-indicator-background", + "--hm-progress-radius", + "--hm-progress-track-background", + "--hm-radio-background", + "--hm-radio-border-color", + "--hm-radio-border-width", + "--hm-radio-checked-border-color", + "--hm-radio-dot-color", + "--hm-radio-dot-size", + "--hm-radio-error-border-color", + "--hm-radio-group-gap", + "--hm-radio-group-gap-horizontal", + "--hm-radio-hover-border-color", + "--hm-radio-size", + "--hm-radius-button", + "--hm-radius-container", + "--hm-radius-control-md", + "--hm-radius-input", + "--hm-radius-select", + "--hm-red-danger", + "--hm-resizable-active-color", + "--hm-resizable-disabled-opacity", + "--hm-resizable-divider-color", + "--hm-resizable-divider-width", + "--hm-resizable-focus-color", + "--hm-resizable-grip-background", + "--hm-resizable-grip-border-color", + "--hm-resizable-grip-height", + "--hm-resizable-grip-icon-color", + "--hm-resizable-grip-icon-size", + "--hm-resizable-grip-radius", + "--hm-resizable-grip-width", + "--hm-resizable-halo-width", + "--hm-resizable-hover-color", + "--hm-scroll-area-scrollbar-size", + "--hm-scroll-area-thumb-background", + "--hm-scroll-area-thumb-hover-background", + "--hm-scroll-area-thumb-radius", + "--hm-select-background", + "--hm-select-border-color", + "--hm-select-border-width", + "--hm-select-content-shadow", + "--hm-select-control-height", + "--hm-select-control-height-lg", + "--hm-select-control-height-md", + "--hm-select-disabled-opacity", + "--hm-select-focus-border-color", + "--hm-select-font-size", + "--hm-select-font-size-lg", + "--hm-select-font-size-md", + "--hm-select-font-weight", + "--hm-select-gap", + "--hm-select-indicator-color", + "--hm-select-line-height", + "--hm-select-line-height-lg", + "--hm-select-line-height-md", + "--hm-select-option-font-size", + "--hm-select-option-font-size-lg", + "--hm-select-option-font-size-md", + "--hm-select-option-height", + "--hm-select-option-height-lg", + "--hm-select-option-height-md", + "--hm-select-option-line-height", + "--hm-select-option-line-height-lg", + "--hm-select-option-line-height-md", + "--hm-select-option-state-background", + "--hm-select-option-state-text", + "--hm-select-padding-x", + "--hm-select-placeholder", + "--hm-select-radius", + "--hm-select-seam-color", + "--hm-select-text", + "--hm-sem-accent", + "--hm-sem-action-border-stop-0", + "--hm-sem-action-border-stop-100", + "--hm-sem-action-border-stop-50", + "--hm-sem-action-cancel", + "--hm-sem-action-destructive", + "--hm-sem-action-primary", + "--hm-sem-action-surface-stop-0", + "--hm-sem-action-surface-stop-100", + "--hm-sem-action-surface-stop-30", + "--hm-sem-action-surface-stop-65", + "--hm-sem-bg-brand", + "--hm-sem-bg-brown", + "--hm-sem-bg-content", + "--hm-sem-bg-orange", + "--hm-sem-bg-subtle", + "--hm-sem-bg-surface", + "--hm-sem-border-action-primary", + "--hm-sem-brand-bg-stop-0", + "--hm-sem-brand-bg-stop-100", + "--hm-sem-brand-bg-stop-12", + "--hm-sem-brand-bg-stop-42", + "--hm-sem-brand-bg-stop-78", + "--hm-sem-brown-bg-stop-0", + "--hm-sem-brown-bg-stop-100", + "--hm-sem-brown-bg-stop-12", + "--hm-sem-brown-bg-stop-42", + "--hm-sem-brown-bg-stop-78", + "--hm-sem-fg-placeholder", + "--hm-sem-fg-primary", + "--hm-sem-fg-secondary", + "--hm-sem-floating-background", + "--hm-sem-floating-border-color", + "--hm-sem-floating-border-width", + "--hm-sem-floating-radius", + "--hm-sem-floating-shadow", + "--hm-sem-on-accent", + "--hm-sem-on-action-primary", + "--hm-sem-on-state-active", + "--hm-sem-orange-bg-stop-0", + "--hm-sem-orange-bg-stop-100", + "--hm-sem-orange-bg-stop-12", + "--hm-sem-orange-bg-stop-42", + "--hm-sem-orange-bg-stop-78", + "--hm-sem-overlay-background", + "--hm-sem-palette-beige-light", + "--hm-sem-palette-black", + "--hm-sem-palette-brown-dark-1", + "--hm-sem-palette-brown-dark-2", + "--hm-sem-palette-brown-dark-3", + "--hm-sem-palette-brown-deep", + "--hm-sem-palette-brown-default", + "--hm-sem-palette-brown-highlight", + "--hm-sem-palette-brown-light-1", + "--hm-sem-palette-brown-light-2", + "--hm-sem-palette-brown-light-3", + "--hm-sem-palette-brown-light-4", + "--hm-sem-palette-gray", + "--hm-sem-palette-gray-dark", + "--hm-sem-palette-green-dark-1", + "--hm-sem-palette-green-dark-2", + "--hm-sem-palette-green-dark-3", + "--hm-sem-palette-green-default", + "--hm-sem-palette-green-light-1", + "--hm-sem-palette-green-light-2", + "--hm-sem-palette-green-light-3", + "--hm-sem-palette-green-light-4", + "--hm-sem-palette-green-tint", + "--hm-sem-palette-green-tone-1", + "--hm-sem-palette-green-tone-2", + "--hm-sem-palette-green-tone-3", + "--hm-sem-palette-green-tone-4", + "--hm-sem-palette-indicator", + "--hm-sem-palette-neutral-gray-500", + "--hm-sem-palette-orange-border", + "--hm-sem-palette-orange-border-deep", + "--hm-sem-palette-orange-dark", + "--hm-sem-palette-orange-dark-1", + "--hm-sem-palette-orange-dark-2", + "--hm-sem-palette-orange-dark-3", + "--hm-sem-palette-orange-deep", + "--hm-sem-palette-orange-default", + "--hm-sem-palette-orange-light", + "--hm-sem-palette-orange-light-1", + "--hm-sem-palette-orange-light-2", + "--hm-sem-palette-orange-light-3", + "--hm-sem-palette-orange-light-4", + "--hm-sem-palette-orange-mid", + "--hm-sem-palette-red-danger", + "--hm-sem-palette-warm-neutral-dark", + "--hm-sem-palette-warm-neutral-light", + "--hm-sem-palette-warm-neutral-mid", + "--hm-sem-palette-warm-neutral-muted", + "--hm-sem-palette-warm-neutral-pale", + "--hm-sem-palette-warm-neutral-secondary", + "--hm-sem-palette-white", + "--hm-sem-palette-yellow-accent", + "--hm-sem-state-active", + "--hm-sem-status-error", + "--hm-sem-stroke-default", + "--hm-sem-stroke-input-default", + "--hm-sem-stroke-input-focus", + "--hm-sem-surface-action-primary", + "--hm-sem-surface-highlight", + "--hm-separator-color", + "--hm-separator-thickness", + "--hm-sheet-background", + "--hm-sheet-body-font-size", + "--hm-sheet-body-line-height", + "--hm-sheet-border-color", + "--hm-sheet-border-width", + "--hm-sheet-close-clearance", + "--hm-sheet-description-color", + "--hm-sheet-description-font-size", + "--hm-sheet-description-line-height", + "--hm-sheet-edge-gap", + "--hm-sheet-footer-gap", + "--hm-sheet-header-gap", + "--hm-sheet-padding", + "--hm-sheet-radius", + "--hm-sheet-shadow", + "--hm-sheet-text", + "--hm-sheet-title-font-size", + "--hm-sheet-title-font-weight", + "--hm-sheet-title-line-height", + "--hm-sheet-width", + "--hm-skeleton-background", + "--hm-skeleton-radius", + "--hm-slider-disabled-opacity", + "--hm-slider-range-background", + "--hm-slider-thumb-background", + "--hm-slider-thumb-border-color", + "--hm-slider-thumb-border-width", + "--hm-slider-thumb-focus-halo-color", + "--hm-slider-thumb-halo-color", + "--hm-slider-thumb-halo-size", + "--hm-slider-thumb-halo-size-active", + "--hm-slider-thumb-size", + "--hm-slider-track-background", + "--hm-slider-track-size", + "--hm-switch-height", + "--hm-switch-hover-overlay", + "--hm-switch-off-background", + "--hm-switch-on-background", + "--hm-switch-thumb-color", + "--hm-switch-thumb-offset", + "--hm-switch-thumb-size", + "--hm-switch-width", + "--hm-tab-arrow-background", + "--hm-tab-arrow-border-color", + "--hm-tab-arrow-disabled-opacity", + "--hm-tab-arrow-icon-color", + "--hm-tab-arrow-icon-size", + "--hm-tab-arrow-size", + "--hm-tab-background", + "--hm-tab-border-color", + "--hm-tab-border-width", + "--hm-tab-fill-curve-radius", + "--hm-tab-fill-face", + "--hm-tab-fill-line-color", + "--hm-tab-fill-panel", + "--hm-tab-font-size", + "--hm-tab-font-weight", + "--hm-tab-height", + "--hm-tab-hover-overlay", + "--hm-tab-hover-text", + "--hm-tab-line-height", + "--hm-tab-padding-x", + "--hm-tab-radius-top", + "--hm-tab-selected-background", + "--hm-tab-selected-border-color", + "--hm-tab-selected-text", + "--hm-tab-text", + "--hm-tab-transition-duration", + "--hm-table-background", + "--hm-table-caption-color", + "--hm-table-caption-font-size", + "--hm-table-caption-gap", + "--hm-table-caption-line-height", + "--hm-table-cell-padding-x", + "--hm-table-cell-padding-y", + "--hm-table-divider-color", + "--hm-table-divider-width", + "--hm-table-font-size", + "--hm-table-font-weight", + "--hm-table-footer-background", + "--hm-table-footer-font-weight", + "--hm-table-header-background", + "--hm-table-header-border-bottom", + "--hm-table-header-border-top", + "--hm-table-header-font-size", + "--hm-table-header-font-weight", + "--hm-table-header-text", + "--hm-table-line-height", + "--hm-table-min-width", + "--hm-table-row-hover-background", + "--hm-table-row-selected-background", + "--hm-table-text", + "--hm-textarea-background", + "--hm-textarea-border-color", + "--hm-textarea-border-width", + "--hm-textarea-error-border-color", + "--hm-textarea-focus-border-color", + "--hm-textarea-font-size", + "--hm-textarea-font-weight", + "--hm-textarea-line-height", + "--hm-textarea-min-height", + "--hm-textarea-padding-block", + "--hm-textarea-padding-inline", + "--hm-textarea-placeholder", + "--hm-textarea-radius", + "--hm-textarea-state-border-width", + "--hm-textarea-text", + "--hm-toast-action-background", + "--hm-toast-action-font-size", + "--hm-toast-action-font-weight", + "--hm-toast-action-height", + "--hm-toast-action-padding-x", + "--hm-toast-action-radius", + "--hm-toast-action-text", + "--hm-toast-background", + "--hm-toast-border-color", + "--hm-toast-border-width", + "--hm-toast-cancel-background", + "--hm-toast-cancel-text", + "--hm-toast-close-background", + "--hm-toast-close-border-color", + "--hm-toast-close-text", + "--hm-toast-description-color", + "--hm-toast-description-font-size", + "--hm-toast-description-font-weight", + "--hm-toast-description-line-height", + "--hm-toast-error-border-color", + "--hm-toast-error-text", + "--hm-toast-font-family", + "--hm-toast-gap", + "--hm-toast-icon-color", + "--hm-toast-icon-size", + "--hm-toast-padding", + "--hm-toast-radius", + "--hm-toast-shadow", + "--hm-toast-text", + "--hm-toast-title-font-size", + "--hm-toast-title-font-weight", + "--hm-toast-title-line-height", + "--hm-toast-width", + "--hm-toggle-disabled-opacity", + "--hm-toggle-font-size", + "--hm-toggle-font-weight", + "--hm-toggle-gap", + "--hm-toggle-group-border-color", + "--hm-toggle-group-border-width", + "--hm-toggle-group-disabled-opacity", + "--hm-toggle-group-font-size", + "--hm-toggle-group-font-weight", + "--hm-toggle-group-gap", + "--hm-toggle-group-height-lg", + "--hm-toggle-group-height-md", + "--hm-toggle-group-height-sm", + "--hm-toggle-group-hover-background", + "--hm-toggle-group-item-height", + "--hm-toggle-group-item-padding-x", + "--hm-toggle-group-line-height", + "--hm-toggle-group-off-background", + "--hm-toggle-group-off-text", + "--hm-toggle-group-on-background", + "--hm-toggle-group-on-text", + "--hm-toggle-group-padding-x-lg", + "--hm-toggle-group-padding-x-md", + "--hm-toggle-group-padding-x-sm", + "--hm-toggle-group-radius", + "--hm-toggle-height", + "--hm-toggle-height-lg", + "--hm-toggle-height-md", + "--hm-toggle-height-sm", + "--hm-toggle-hover-background", + "--hm-toggle-line-height", + "--hm-toggle-off-background", + "--hm-toggle-off-text", + "--hm-toggle-on-background", + "--hm-toggle-on-text", + "--hm-toggle-outline-border-color", + "--hm-toggle-outline-border-width", + "--hm-toggle-padding-x", + "--hm-toggle-padding-x-lg", + "--hm-toggle-padding-x-md", + "--hm-toggle-padding-x-sm", + "--hm-toggle-radius", + "--hm-tooltip-background", + "--hm-tooltip-font-size", + "--hm-tooltip-font-weight", + "--hm-tooltip-line-height", + "--hm-tooltip-max-width", + "--hm-tooltip-padding-x", + "--hm-tooltip-padding-y", + "--hm-tooltip-radius", + "--hm-tooltip-text", + "--hm-warm-neutral-dark", + "--hm-warm-neutral-light", + "--hm-warm-neutral-mid", + "--hm-warm-neutral-muted", + "--hm-warm-neutral-pale", + "--hm-warm-neutral-secondary", + "--hm-white", + "--hm-yellow-accent" + ], + "references": [ + { + "name": "--sb-page-gutter", + "file": "src/components/story-page.css", + "line": 10, + "fallback": false, + "origin": "CONSUMER", + "status": "PASS" + }, + { + "name": "--hm-font-family-base", + "file": "src/components/story-page.css", + "line": 11, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-sem-fg-primary", + "file": "src/components/story-page.css", + "line": 12, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--sb-page-max-width", + "file": "src/components/story-page.css", + "line": 17, + "fallback": false, + "origin": "CONSUMER", + "status": "PASS" + }, + { + "name": "--sb-page-gutter", + "file": "src/components/story-page.css", + "line": 17, + "fallback": false, + "origin": "CONSUMER", + "status": "PASS" + }, + { + "name": "--hm-sem-stroke-input-default", + "file": "src/components/story-page.css", + "line": 24, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-label-font-size", + "file": "src/components/story-page.css", + "line": 25, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-label-line-height", + "file": "src/components/story-page.css", + "line": 26, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-sem-fg-secondary", + "file": "src/components/story-page.css", + "line": 31, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-button-font-size-sm", + "file": "src/components/story-page.css", + "line": 32, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-font-weight-bold", + "file": "src/components/story-page.css", + "line": 33, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-page-header-title-font-size", + "file": "src/components/story-page.css", + "line": 37, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-page-header-title-line-height", + "file": "src/components/story-page.css", + "line": 38, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-page-header-title-font-weight", + "file": "src/components/story-page.css", + "line": 39, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-input-font-weight", + "file": "src/components/story-page.css", + "line": 41, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-sem-stroke-input-default", + "file": "src/components/story-page.css", + "line": 47, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-card-title-font-size", + "file": "src/components/story-page.css", + "line": 52, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-card-title-line-height", + "file": "src/components/story-page.css", + "line": 53, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-card-title-font-weight", + "file": "src/components/story-page.css", + "line": 54, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-sem-fg-secondary", + "file": "src/components/story-page.css", + "line": 58, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-label-font-size", + "file": "src/components/story-page.css", + "line": 59, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-label-line-height", + "file": "src/components/story-page.css", + "line": 60, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-input-font-weight", + "file": "src/components/story-page.css", + "line": 61, + "fallback": false, + "origin": "PUBLIC", + "status": "PASS" + }, + { + "name": "--hm-sw-header-object-background", + "file": "src/sw/sw-stories.css", + "line": 11, + "fallback": false, + "origin": "UNRESOLVED", + "status": "NOT VERIFIED" + }, + { + "name": "--hm-sw-header-field-height", + "file": "src/sw/sw-stories.css", + "line": 17, + "fallback": false, + "origin": "UNRESOLVED", + "status": "NOT VERIFIED" + }, + { + "name": "--hm-sw-header-document-background", + "file": "src/sw/sw-stories.css", + "line": 22, + "fallback": false, + "origin": "UNRESOLVED", + "status": "NOT VERIFIED" + }, + { + "name": "--hm-sw-header-layer-menu-background", + "file": "src/sw/sw-stories.css", + "line": 35, + "fallback": false, + "origin": "UNRESOLVED", + "status": "NOT VERIFIED" + }, + { + "name": "--hm-sw-header-layer-menu-background", + "file": "src/sw/sw-stories.css", + "line": 48, + "fallback": false, + "origin": "UNRESOLVED", + "status": "NOT VERIFIED" + } + ], + "dynamic": [ + { + "id": "src/sw/sw-header.stories.tsx:111:6039:STYLE_VALUE", + "ruleId": "TOKEN-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 111, + "kind": "STYLE_VALUE", + "expression": "width", + "status": "NOT VERIFIED" + }, + { + "id": "src/sw/sw-header.stories.tsx:512:28017:STYLE_VALUE", + "ruleId": "TOKEN-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 512, + "kind": "STYLE_VALUE", + "expression": "width", + "status": "NOT VERIFIED" + }, + { + "id": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx:142:6093:CLASS_NAME", + "ruleId": "TOKEN-002", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 142, + "kind": "CLASS_NAME", + "expression": "[\"hm-sw-header__menu-detail\", className].filter(Boolean).join(\" \")", + "status": "NOT VERIFIED" + }, + { + "id": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx:153:6697:STYLE_VALUE", + "ruleId": "TOKEN-002", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 153, + "kind": "STYLE_VALUE", + "expression": "color", + "status": "NOT VERIFIED" + }, + { + "id": "src/components/story-page.tsx:13:798:CLASS_NAME", + "ruleId": "TOKEN-002", + "file": "src/components/story-page.tsx", + "line": 13, + "kind": "CLASS_NAME", + "expression": "className ? `sb-page ${className}` : \"sb-page\"", + "status": "NOT VERIFIED" + } + ], + "incomplete": true + } + ], + "styleEvidence": { + "staticStatus": "PASS", + "runtimeStatus": "NOT VERIFIED", + "designIntentStatus": "PASS", + "finalStatus": "NOT VERIFIED", + "checks": [] + }, + "issues": [ + { + "severity": "NOT VERIFIED", + "code": "ENTRY-002", + "file": "src/sw/sw-header.stories.tsx", + "line": 10, + "message": "Unresolved production import: @hm-design/sw/styles.css" + }, + { + "severity": "NOT VERIFIED", + "code": "REUSE-004", + "file": "packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx", + "line": 142, + "message": "Native
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows a single Dropdown link directly under Header, no Composed Controls submenu", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "menuCorrectionBaseCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/integrated-improvement-qa/baseline-dropdown-consolidation/story-inventory.json b/docs/sw/integrated-improvement-qa/baseline-dropdown-consolidation/story-inventory.json new file mode 100644 index 0000000..e019ca9 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-dropdown-consolidation/story-inventory.json @@ -0,0 +1,639 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/after-index.json b/docs/sw/integrated-improvement-qa/baseline-overview/after-index.json new file mode 100644 index 0000000..1359483 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-overview/after-index.json @@ -0,0 +1,152 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + } +] diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/before-index.json b/docs/sw/integrated-improvement-qa/baseline-overview/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-overview/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/chrome-result.json b/docs/sw/integrated-improvement-qa/baseline-overview/chrome-result.json new file mode 100644 index 0000000..14763d0 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-overview/chrome-result.json @@ -0,0 +1,656 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "24 retained Story IDs, names and tags; only approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "retained non-Overview declarations byte-identical; relocated composition separately verified", + "status": "FAIL" + }, + { + "name": "retired Dropdown IDs absent", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--composed-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ], + "status": "FAIL" +} diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/manager-story-order.json b/docs/sw/integrated-improvement-qa/baseline-overview/manager-story-order.json new file mode 100644 index 0000000..756b232 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-overview/manager-story-order.json @@ -0,0 +1,11 @@ +[ + "sw-header--composed-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" +] diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-expanded.png b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-expanded.png new file mode 100644 index 0000000..9afb4cf Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-expanded.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-scrolled.png b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-scrolled.png new file mode 100644 index 0000000..dc5d847 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after-scrolled.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/overview-after.png b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after.png new file mode 100644 index 0000000..8a64869 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-overview/overview-after.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/overview-manager.png b/docs/sw/integrated-improvement-qa/baseline-overview/overview-manager.png new file mode 100644 index 0000000..f44c5ac Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-overview/overview-manager.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-overview/overview-narrow.png b/docs/sw/integrated-improvement-qa/baseline-overview/overview-narrow.png new file mode 100644 index 0000000..134f239 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-overview/overview-narrow.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1280-end.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1280-end.png new file mode 100644 index 0000000..fca3565 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1280-end.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1440-end.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1440-end.png new file mode 100644 index 0000000..d3d82b0 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-1440-end.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-390-end.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-390-end.png new file mode 100644 index 0000000..9fc5f41 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-390-end.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-768-end.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-768-end.png new file mode 100644 index 0000000..4686f20 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/compare-768-end.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1280.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1280.png new file mode 100644 index 0000000..71b3615 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1280.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1440.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1440.png new file mode 100644 index 0000000..af06cb7 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-1440.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-390.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-390.png new file mode 100644 index 0000000..66cf027 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-390.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-768.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-768.png new file mode 100644 index 0000000..2a55839 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/dropdown-768.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-sidebar.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-sidebar.png new file mode 100644 index 0000000..df26275 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-sidebar.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-story-order.json b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-story-order.json new file mode 100644 index 0000000..11e2001 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/manager-story-order.json @@ -0,0 +1,38 @@ +[ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] +] diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1280.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1280.png new file mode 100644 index 0000000..4fd85cb Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1280.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1440.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1440.png new file mode 100644 index 0000000..4301028 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-1440.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-390.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-390.png new file mode 100644 index 0000000..caa2b39 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-390.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-768.png b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-768.png new file mode 100644 index 0000000..5eb5417 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/overview-768.png differ diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/result.json b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/result.json new file mode 100644 index 0000000..d32fdf5 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/result.json @@ -0,0 +1,1140 @@ +{ + "baseCommit": "c8e5fbeebc26fba92998fc5ddcd28c6c110e452d", + "checks": [ + { + "name": "inventory: 19 -> 10 SW Stories, 338 -> 329 total", + "status": "PASS", + "data": { + "before": [ + 338, + 19 + ], + "after": [ + 329, + 10 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + } + }, + { + "name": "inventory: the nine requested IDs existed before and are absent now", + "status": "PASS" + }, + { + "name": "inventory: retained SW IDs, names, titles, tags and order unchanged", + "status": "PASS", + "data": [ + "sw-header--composed-controls", + "sw-header--detail-buttons", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ] + }, + { + "name": "inventory: every non-removed index entry identical (docs and other packages included)", + "status": "PASS" + }, + { + "name": "inventory: Dropdown keeps sw-header--composed-controls / Dropdown / SW/Header", + "status": "PASS" + }, + { + "name": "inventory: comparison keeps its ID and name", + "status": "PASS" + }, + { + "name": "source: the nine Story exports are removed", + "status": "PASS" + }, + { + "name": "source: retained exports (Stories and ComposedDemo) byte-identical", + "status": "PASS", + "data": [] + }, + { + "name": "source: runtime, public API, AI template, other packages, Overview, Dropdown CSF, assets and Storybook config untouched", + "status": "PASS", + "data": "" + }, + { + "name": "sidebar: retained non-verification Stories in index order with their names", + "status": "PASS", + "data": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + { + "name": "sidebar: none of the nine removed menu IDs or names remain", + "status": "PASS", + "data": [ + "Layer Detail · Input", + "Property Panel", + "Additional Hover", + "Property Bar", + "Dynamic Controls", + "Colorize", + "Composition (Visibility · Order)", + "Property Panel · 형상 Slot", + "Property Panel · 필드 13개" + ] + }, + { + "name": "removed URL renders no SW Story", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "Overview 390: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 768: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1280: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1440: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview: layer Dropdown opens", + "status": "PASS" + }, + { + "name": "Overview: Escape closes Dropdown and restores focus", + "status": "PASS" + }, + { + "name": "Overview: layer Detail callback (former Layer Detail page) and close", + "status": "PASS" + }, + { + "name": "Overview: btn_colorize 24 × 24 calls onColorPick and closes (former Colorize page)", + "status": "PASS", + "data": { + "x": 700, + "y": 324.25, + "width": 24, + "height": 24 + } + }, + { + "name": "Overview: property Bar Enter commits through callback", + "status": "PASS" + }, + { + "name": "Overview: property Bar validation keeps min=0", + "status": "PASS" + }, + { + "name": "Overview: panel opens with the shared Bar value", + "status": "PASS" + }, + { + "name": "Overview: Escape closes panel and returns focus to its trigger", + "status": "PASS" + }, + { + "name": "Dropdown: five fields plus the 상세보기 group (6 controls)", + "status": "PASS" + }, + { + "name": "Dropdown 390: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 768: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown: text style selection reflected in field and status", + "status": "PASS" + }, + { + "name": "Dropdown: line style selection reflected", + "status": "PASS" + }, + { + "name": "Compare 390: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 390: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 390: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 768: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 768: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 768: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1280: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1280: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1280: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1440: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1440: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1440: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare: editable Input caret #E60403 (former Layer Detail · Input page)", + "status": "PASS" + }, + { + "name": "Compare: Input Enter commits only in its own panel", + "status": "PASS" + }, + { + "name": "Compare: Input Escape cancels", + "status": "PASS" + }, + { + "name": "Compare: layer Dropdown selection commits via callback", + "status": "PASS" + }, + { + "name": "Compare: Escape closes the Dropdown and returns focus", + "status": "PASS" + }, + { + "name": "Motion: one section 「단계별 진행 (3배 확대)」 with nine stages at zoom 3", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "Motion: rest stage static, timed stages hold three paused animations", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "inventory": { + "before": [ + 338, + 19 + ], + "after": [ + 329, + 10 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + "sidebar": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ], + "compare390": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare768": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1280": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1440": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/story-inventory-after.json b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/story-inventory-after.json new file mode 100644 index 0000000..ee24331 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/baseline-storybook-unused-removal/story-inventory-after.json @@ -0,0 +1,106 @@ +{ + "total": 329, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + } + ] +} diff --git a/docs/sw/integrated-improvement-qa/build-reproducibility/build-reproducibility-result.json b/docs/sw/integrated-improvement-qa/build-reproducibility/build-reproducibility-result.json new file mode 100644 index 0000000..c28be14 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/build-reproducibility/build-reproducibility-result.json @@ -0,0 +1,114 @@ +{ + "status": "PASS", + "commit": "5faa1f1ffe89eb7aeb4aaec81ac5bb2d0f4fced9", + "notLf": [], + "buildCommit": "5faa1f1ffe89eb7aeb4aaec81ac5bb2d0f4fced9+reproducibility-check", + "runs": [ + { + "checkout": "LF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\lf", + "attempt": 1, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "e98cc5eda023d135cac4d3d30b545461016e3f63a90bf9558b999fddf3982506", + "fileCount": 29 + }, + { + "checkout": "LF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\lf", + "attempt": 2, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "e98cc5eda023d135cac4d3d30b545461016e3f63a90bf9558b999fddf3982506", + "fileCount": 29 + }, + { + "checkout": "LF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\deeper\\path\\lf", + "attempt": 1, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "e98cc5eda023d135cac4d3d30b545461016e3f63a90bf9558b999fddf3982506", + "fileCount": 29 + }, + { + "checkout": "LF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\deeper\\path\\lf", + "attempt": 2, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "e98cc5eda023d135cac4d3d30b545461016e3f63a90bf9558b999fddf3982506", + "fileCount": 29 + }, + { + "checkout": "CRLF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\crlf-copy", + "attempt": 1, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "2e1b8ee4048a7ce579dc2fdc3d420309315bae7f4d8cef85db30bf2adbabaec1", + "fileCount": 29 + }, + { + "checkout": "CRLF", + "path": "C:\\Users\\user\\AppData\\Local\\Temp\\claude\\D---------HMDesign-SW\\9f00c085-5295-455b-8864-1b75de666f9d\\scratchpad\\repro-final\\crlf-copy", + "attempt": 2, + "tarball": "hm-design-sw-0.2.0.tgz", + "tarballSha256": "2e1b8ee4048a7ce579dc2fdc3d420309315bae7f4d8cef85db30bf2adbabaec1", + "fileCount": 29 + } + ], + "referenceFiles": { + "dist/build-info.json": "efd00e884702f6a30b322ad03f7cf18ab146ad1e74f68640ee5e7e3ae1dbd34a", + "dist/components/sw-header/components/SWHeaderActions.d.ts": "c572d028522a56ac4bf1a5d7eb3d6e260b718fa3cac197d87757ec49f508af34", + "dist/components/sw-header/components/SWHeaderColorMenu.d.ts": "ff361ed274150c32a8a6931b31348b85de0463db642bd8c6af3c1bbb79fa5fda", + "dist/components/sw-header/components/SWHeaderDocumentTitle.d.ts": "ca96a9b886740d5b68b852d7494c35fe139c22df74f4fd13d342638a1b6ea439", + "dist/components/sw-header/components/SWHeaderDropdown.d.ts": "06ce5aa914826b6dc85df923a24baded80d16f43aebce39845f5b18d9d996504", + "dist/components/sw-header/components/SWHeaderField.d.ts": "741fdd1b0e7da4cf8f7adeaec021eb4eb103d7312f34e80135d00c3510159901", + "dist/components/sw-header/components/SWHeaderFields.d.ts": "43950332583b4c74231a793e18651b45494165626cc45e3dfcf50169ec189edc", + "dist/components/sw-header/components/SWHeaderHome.d.ts": "8696aa8f79f6e248ab5eacff363c180d382e58d2c37400cdf26a2446d43a6d3f", + "dist/components/sw-header/components/SWHeaderInput.d.ts": "6b379ee70b9bcbf6e9a0808ca891b86838a9bfa355bfa12f036088b26241dd9c", + "dist/components/sw-header/components/SWHeaderKGuide.d.ts": "093b413bf398f0172596469d6fb5b40f254fb2dbc9b141bd143d7ef9e2127f42", + "dist/components/sw-header/components/SWHeaderLayerIcons.d.ts": "84cf3ca7f8c89d679bcaa407790ce450d978a93be93e5de03caa029333d27fb0", + "dist/components/sw-header/components/SWHeaderLayerMenu.d.ts": "0fb65b14f52cd2abf54e74ea09ed4b783fe1665416dfd910bd6cd7d3e1995711", + "dist/components/sw-header/components/SWHeaderLineStyleMenu.d.ts": "d8ca8fc2543a1313793ceaa0e9e852f04dd6107027b2c51efcc080db60c34d29", + "dist/components/sw-header/components/SWHeaderMore.d.ts": "eba0b89eade44dd384db6d3da016c5b0c8b0544bed269918fbeb091dbdb93430", + "dist/components/sw-header/components/SWHeaderProperties.d.ts": "20ae22aac2d49c546d23c726ce5f210bd0f89024d60f24b2d75d9eba9524704f", + "dist/components/sw-header/components/SWHeaderPropertyBar.d.ts": "38fcf8305edfa6ff15917520cdbb446ac69d5200b17f5524304d106b8aeb7b91", + "dist/components/sw-header/components/SWHeaderPropertyFields.d.ts": "1277b0f3df27eac1f21c4ffb5554b95ed122d280b171f691259c50d7bbb7a037", + "dist/components/sw-header/components/SWHeaderPropertyPanel.d.ts": "dddffda48785d8fffc6d9c90f759f3287e939375cfc86887b1a9f75458d04309", + "dist/components/sw-header/components/SWHeaderStyleListMenus.d.ts": "6bbcf310fda8deed5c607fc85e8fb730b84c743a5a85be68d2549afa0341891d", + "dist/components/sw-header/components/SWHeaderWindowControls.d.ts": "db8bfbd14340e03c28e407f58fc08cef55b9eef49f406ba53fc50e994f5f0834", + "dist/components/sw-header/index.d.ts": "7f9a5677f64ae26ae97906b32425ba8fa22cd64d5d8e239a67cc44ef7ce85688", + "dist/components/sw-header/SWHeader.d.ts": "3adac1db372451d9f86a6f6df1df0e9696cd40c3ed7945531ee378da122136d8", + "dist/components/sw-header/types.d.ts": "5cafbb6ba475e988fe9aa0eca0eefd620c68e2c79e134e949d342df8ee3e9448", + "dist/components/sw-popup/SWPopup.d.ts": "c19e8372931cb81187c306c22c25a2e47bcfe3f3f25f849d458f972d87d361e8", + "dist/components/sw-theme/SWTheme.d.ts": "cdcc2e7c4b80241afa4d0b7c3da671b7086c16f9b9c231c1927c931757e4244c", + "dist/components/sw-tool/SWTool.d.ts": "23b1eb156578cd3f1dee325afbd81988d88c4a3f421f7350a0e8c47c652e804c", + "dist/index.d.ts": "d185a69b7bf04400a6c114d2694bf853b367d20e168f5a78cfbb78ce04aa21a6", + "dist/index.js": "363c9b3e0cff61306ac183a91d11241ef9acbed850efbda0948c2ac5a9d93a1d", + "dist/styles.css": "4c419e9776c51f9cce0f33fa7b9064f839f4a87311a3d3f8d2712eba3ed1c7d7" + }, + "differences": [ + { + "run": "LF #2", + "tarballSame": true, + "differentFiles": [] + }, + { + "run": "LF #1", + "tarballSame": true, + "differentFiles": [] + }, + { + "run": "LF #2", + "tarballSame": true, + "differentFiles": [] + }, + { + "run": "CRLF #1", + "tarballSame": false, + "differentFiles": [] + }, + { + "run": "CRLF #2", + "tarballSame": false, + "differentFiles": [] + } + ] +} diff --git a/docs/sw/integrated-improvement-qa/consumer/integrated-consumer-result.json b/docs/sw/integrated-improvement-qa/consumer/integrated-consumer-result.json new file mode 100644 index 0000000..866acd1 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/consumer/integrated-consumer-result.json @@ -0,0 +1,683 @@ +{ + "browser": "155.0.8059.80", + "checks": [ + { + "name": "sw-first: every SVG/PNG asset decodes", + "status": "PASS", + "data": 54 + }, + { + "name": "sw-first F: Open next to the logo with documentOpenLabel", + "status": "PASS" + }, + { + "name": "sw-first F: Open calls onDocumentOpen", + "status": "PASS", + "data": "document:open" + }, + { + "name": "sw-first F: document dropdown without + New and Open (both hidden or placed)", + "status": "PASS" + }, + { + "name": "sw-first F: layer rows have no freeze / lock buttons", + "status": "PASS" + }, + { + "name": "sw-first F: Model / Layout radio group by keyboard", + "status": "PASS", + "data": "view:layout" + }, + { + "name": "sw-first F: 2.5D toggle", + "status": "PASS" + }, + { + "name": "sw-first F: Fit pill", + "status": "PASS" + }, + { + "name": "sw-first F 640px: Open moved into More (measured), works there, no overflow", + "status": "PASS", + "data": { + "narrow": { + "open": 0, + "overflow": 0, + "height": 49 + }, + "inMore": true + } + }, + { + "name": "sw-first F 1920px again: Open returns next to the logo", + "status": "PASS" + }, + { + "name": "sw-first E: SW popup frame (314, #E4DBC9, #A67D03)", + "status": "PASS", + "data": { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)" + } + }, + { + "name": "sw-first E: row input commits", + "status": "PASS", + "data": "name:평면도-02" + }, + { + "name": "sw-first E: layer dropdown inside the popup is a fixed overlay", + "status": "PASS" + }, + { + "name": "sw-first E: layer selection callback", + "status": "PASS", + "data": "layer:dim" + }, + { + "name": "sw-first UI in popup: Switch", + "status": "PASS", + "data": "ui:snap:false" + }, + { + "name": "sw-first UI in popup: Select (portal)", + "status": "PASS", + "data": "ui:unit:cm" + }, + { + "name": "sw-first UI in popup: Slider", + "status": "PASS", + "data": "ui:opacity:70" + }, + { + "name": "sw-first UI in popup: Button", + "status": "PASS", + "data": "ui:apply" + }, + { + "name": "sw-first Escape outside closes only the last used popup", + "status": "PASS", + "data": "ui:close" + }, + { + "name": "sw-first Escape inside a popup closes that popup", + "status": "PASS", + "data": "popup:close" + }, + { + "name": "ui-first: every SVG/PNG asset decodes", + "status": "PASS", + "data": 54 + }, + { + "name": "ui-first F: Open next to the logo with documentOpenLabel", + "status": "PASS" + }, + { + "name": "ui-first F: Open calls onDocumentOpen", + "status": "PASS", + "data": "document:open" + }, + { + "name": "ui-first F: document dropdown without + New and Open (both hidden or placed)", + "status": "PASS" + }, + { + "name": "ui-first F: layer rows have no freeze / lock buttons", + "status": "PASS" + }, + { + "name": "ui-first F: Model / Layout radio group by keyboard", + "status": "PASS", + "data": "view:layout" + }, + { + "name": "ui-first F: 2.5D toggle", + "status": "PASS" + }, + { + "name": "ui-first F: Fit pill", + "status": "PASS" + }, + { + "name": "ui-first F 640px: Open moved into More (measured), works there, no overflow", + "status": "PASS", + "data": { + "narrow": { + "open": 0, + "overflow": 0, + "height": 49 + }, + "inMore": true + } + }, + { + "name": "ui-first F 1920px again: Open returns next to the logo", + "status": "PASS" + }, + { + "name": "ui-first E: SW popup frame (314, #E4DBC9, #A67D03)", + "status": "PASS", + "data": { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)" + } + }, + { + "name": "ui-first E: row input commits", + "status": "PASS", + "data": "name:평면도-02" + }, + { + "name": "ui-first E: layer dropdown inside the popup is a fixed overlay", + "status": "PASS" + }, + { + "name": "ui-first E: layer selection callback", + "status": "PASS", + "data": "layer:dim" + }, + { + "name": "ui-first UI in popup: Switch", + "status": "PASS", + "data": "ui:snap:false" + }, + { + "name": "ui-first UI in popup: Select (portal)", + "status": "PASS", + "data": "ui:unit:cm" + }, + { + "name": "ui-first UI in popup: Slider", + "status": "PASS", + "data": "ui:opacity:70" + }, + { + "name": "ui-first UI in popup: Button", + "status": "PASS", + "data": "ui:apply" + }, + { + "name": "ui-first Escape outside closes only the last used popup", + "status": "PASS", + "data": "ui:close" + }, + { + "name": "ui-first Escape inside a popup closes that popup", + "status": "PASS", + "data": "popup:close" + }, + { + "name": "stylesheet order (SW first / UI first) changes no computed SW or UI style", + "status": "PASS", + "data": { + "differences": [], + "missing": [] + } + }, + { + "name": "no page/console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": { + "sw-first": { + "header": { + "w": 1920, + "h": 49, + "background-color": "rgb(6, 6, 6)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "field": { + "w": 234, + "h": 38, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(0deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.45) 26.41%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.45) 100%)", + "border-top": "1px solid rgb(8, 37, 28)", + "border-radius": "3px", + "box-shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px 10px 0px 12px", + "margin": "0px" + }, + "documentButton": { + "w": 310, + "h": 48, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(14, 76, 58)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(240, 247, 245)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 12px 0px 5px", + "margin": "0px" + }, + "toggle": { + "w": 78, + "h": 19, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(246, 244, 242)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px", + "margin": "0px" + }, + "open": { + "w": 77.6, + "h": 48, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(14, 76, 58)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(240, 247, 245)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 12px 0px 5px", + "margin": "0px" + }, + "toolText": { + "w": 61.1, + "h": 19, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(255, 198, 0)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(255, 198, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 8px", + "margin": "0px" + }, + "toolPill": { + "w": 40, + "h": 38, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(8, 37, 28)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "popup": { + "w": 314, + "h": 306, + "background-color": "rgb(228, 219, 201)", + "background-image": "none", + "border-top": "1px solid rgb(166, 125, 3)", + "border-radius": "4px", + "box-shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "popupTitle": { + "w": 261, + "h": 16, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(255, 198, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 4px 0px 0px", + "margin": "0px 0px 0px 7px" + }, + "popupRow": { + "w": 292, + "h": 32, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px 6px", + "margin": "0px" + }, + "popupInput": { + "w": 184, + "h": 26, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(230, 4, 3)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(230, 4, 3)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "500", + "padding": "0px", + "margin": "0px" + }, + "searchInput": { + "w": 66.8, + "h": 20, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(230, 4, 3)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(230, 4, 3)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "2px 4px 2px 6px", + "margin": "0px" + }, + "uiButton": { + "w": 298, + "h": 28, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(31, 130, 101) 0%, rgb(22, 92, 71) 30%, rgb(17, 72, 56) 65%, rgb(8, 36, 28) 100%), linear-gradient(rgb(10, 34, 29) 0%, rgb(52, 218, 170) 50%, rgb(8, 36, 28) 100%)", + "border-top": "1px solid rgba(0, 0, 0, 0)", + "border-radius": "4px", + "box-shadow": "rgba(0, 0, 0, 0) 0px 0px 0px 0px, color(srgb 1 1 1 / 0.1) 0px 1px 1px 0px inset, color(srgb 0 0 0 / 0.25) 0px -1px 2px 0px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px", + "color": "rgb(255, 255, 255)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", sans-serif", + "font-size": "12px", + "font-weight": "700", + "padding": "3.5px 10px", + "margin": "0px" + }, + "uiSwitch": { + "w": 36, + "h": 20, + "background-color": "rgb(38, 102, 81)", + "background-image": "none", + "border-top": "0px none rgb(0, 0, 0)", + "border-radius": "9999px", + "box-shadow": "none", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "uiSelect": { + "w": 86.2, + "h": 44, + "background-color": "rgb(255, 255, 255)", + "background-image": "none", + "border-top": "1px solid rgb(222, 219, 210)", + "border-radius": "4px", + "box-shadow": "none", + "color": "rgb(10, 34, 29)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "16px", + "font-weight": "400", + "padding": "0px 12px", + "margin": "0px" + } + }, + "ui-first": { + "header": { + "w": 1920, + "h": 49, + "background-color": "rgb(6, 6, 6)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "field": { + "w": 234, + "h": 38, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(0deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.45) 26.41%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.45) 100%)", + "border-top": "1px solid rgb(8, 37, 28)", + "border-radius": "3px", + "box-shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px 10px 0px 12px", + "margin": "0px" + }, + "documentButton": { + "w": 310, + "h": 48, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(14, 76, 58)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(240, 247, 245)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 12px 0px 5px", + "margin": "0px" + }, + "toggle": { + "w": 78, + "h": 19, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(246, 244, 242)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px", + "margin": "0px" + }, + "open": { + "w": 77.6, + "h": 48, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(14, 76, 58)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(240, 247, 245)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 12px 0px 5px", + "margin": "0px" + }, + "toolText": { + "w": 61.1, + "h": 19, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(255, 198, 0)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(255, 198, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 8px", + "margin": "0px" + }, + "toolPill": { + "w": 40, + "h": 38, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9, 39, 30) 8.69%, rgb(11, 50, 39) 25.43%, rgb(14, 61, 47) 51.25%, rgb(11, 50, 39) 80.03%, rgb(10, 43, 33) 89.76%, rgb(8, 24, 19) 100%)", + "border-top": "1px solid rgb(8, 37, 28)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(246, 244, 242)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "popup": { + "w": 314, + "h": 306, + "background-color": "rgb(228, 219, 201)", + "background-image": "none", + "border-top": "1px solid rgb(166, 125, 3)", + "border-radius": "4px", + "box-shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "popupTitle": { + "w": 261, + "h": 16, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(255, 198, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "0px 4px 0px 0px", + "margin": "0px 0px 0px 7px" + }, + "popupRow": { + "w": 292, + "h": 32, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px solid rgb(154, 146, 132)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px 6px", + "margin": "0px" + }, + "popupInput": { + "w": 184, + "h": 26, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(230, 4, 3)", + "border-radius": "0px", + "box-shadow": "none", + "color": "rgb(230, 4, 3)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "500", + "padding": "0px", + "margin": "0px" + }, + "searchInput": { + "w": 66.8, + "h": 20, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "none", + "border-top": "0px none rgb(230, 4, 3)", + "border-radius": "2px", + "box-shadow": "none", + "color": "rgb(230, 4, 3)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "700", + "padding": "2px 4px 2px 6px", + "margin": "0px" + }, + "uiButton": { + "w": 298, + "h": 28, + "background-color": "rgba(0, 0, 0, 0)", + "background-image": "linear-gradient(rgb(31, 130, 101) 0%, rgb(22, 92, 71) 30%, rgb(17, 72, 56) 65%, rgb(8, 36, 28) 100%), linear-gradient(rgb(10, 34, 29) 0%, rgb(52, 218, 170) 50%, rgb(8, 36, 28) 100%)", + "border-top": "1px solid rgba(0, 0, 0, 0)", + "border-radius": "4px", + "box-shadow": "rgba(0, 0, 0, 0) 0px 0px 0px 0px, color(srgb 1 1 1 / 0.1) 0px 1px 1px 0px inset, color(srgb 0 0 0 / 0.25) 0px -1px 2px 0px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px", + "color": "rgb(255, 255, 255)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", sans-serif", + "font-size": "12px", + "font-weight": "700", + "padding": "3.5px 10px", + "margin": "0px" + }, + "uiSwitch": { + "w": 36, + "h": 20, + "background-color": "rgb(38, 102, 81)", + "background-image": "none", + "border-top": "0px none rgb(0, 0, 0)", + "border-radius": "9999px", + "box-shadow": "none", + "color": "rgb(0, 0, 0)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "14px", + "font-weight": "400", + "padding": "0px", + "margin": "0px" + }, + "uiSelect": { + "w": 86.2, + "h": 44, + "background-color": "rgb(255, 255, 255)", + "background-image": "none", + "border-top": "1px solid rgb(222, 219, 210)", + "border-radius": "4px", + "box-shadow": "none", + "color": "rgb(10, 34, 29)", + "font-family": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "font-size": "16px", + "font-weight": "400", + "padding": "0px 12px", + "margin": "0px" + } + } + } +} diff --git a/docs/sw/integrated-improvement-qa/consumer/sw-first-1920.png b/docs/sw/integrated-improvement-qa/consumer/sw-first-1920.png new file mode 100644 index 0000000..af36716 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/consumer/sw-first-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/consumer/ui-first-1920.png b/docs/sw/integrated-improvement-qa/consumer/ui-first-1920.png new file mode 100644 index 0000000..af36716 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/consumer/ui-first-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/A-default-1920.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/A-default-1920.png new file mode 100644 index 0000000..eb4a525 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/A-default-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-k-guide.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-k-guide.png new file mode 100644 index 0000000..1a42c41 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-k-guide.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-layer-open.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-layer-open.png new file mode 100644 index 0000000..fbc5dec Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-layer-open.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-viewer-1920.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-viewer-1920.png new file mode 100644 index 0000000..d2aaf22 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/B-viewer-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/C-feature-1920.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/C-feature-1920.png new file mode 100644 index 0000000..ebe7fc1 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/C-feature-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-1920.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-1920.png new file mode 100644 index 0000000..ba7f6f8 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-1920.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-hover.png b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-hover.png new file mode 100644 index 0000000..3354dca Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/D-search-hover.png differ diff --git a/docs/sw/integrated-improvement-qa/final-ai-template-consumer/report.json b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/report.json new file mode 100644 index 0000000..3f5a33d --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-ai-template-consumer/report.json @@ -0,0 +1,276 @@ +{ + "checks": [ + { + "name": "1 all SVG/PNG assets decode (data URI, no external path)", + "status": "PASS", + "data": { + "count": 33, + "broken": [] + } + }, + { + "name": "1 styles.css loaded; SWTheme provides tokens", + "status": "PASS", + "data": { + "height": "49px", + "font": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + } + }, + { + "name": "2 A default header 1920 geometry = Figma (49 / 0·80 / 65·310 / 377·1301 / 1680·240)", + "status": "PASS", + "data": { + "header": { + "x": 0, + "y": 0, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 0, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 0, + "w": 310, + "h": 48 + }, + "object": { + "x": 377, + "y": 0, + "w": 1301, + "h": 48 + }, + "window": { + "x": 1680, + "y": 0, + "w": 240, + "h": 48 + } + } + }, + { + "name": "2 A layer dropdown select callback", + "status": "PASS", + "data": "layer:center" + }, + { + "name": "2 A close callback", + "status": "PASS", + "data": "close" + }, + { + "name": "3 B order Logo → File → Layer → Color → K (DOM)", + "status": "PASS", + "data": [ + "뷰어 홈", + "hm-sw-header__document", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "3 B sizes keep SW rules (bar 49, home 80 overlapping file 15px, fields 234/192 x 38)", + "status": "PASS", + "data": { + "bar": { + "x": 0, + "y": 409, + "w": 1920, + "h": 49 + }, + "home": { + "x": 0, + "y": 409, + "w": 80, + "h": 48 + }, + "document": { + "x": 65, + "y": 409, + "w": 310, + "h": 48 + }, + "layer": { + "x": 382, + "y": 414, + "w": 234, + "h": 38 + }, + "color": { + "x": 620, + "y": 414, + "w": 192, + "h": 38 + } + } + }, + { + "name": "3 B document dropdown New callback", + "status": "PASS", + "data": "document:new" + }, + { + "name": "3 B layer dropdown opens under the field", + "status": "PASS", + "data": "true" + }, + { + "name": "3 B Escape closes and returns focus to the field", + "status": "PASS", + "data": null + }, + { + "name": "3 B color chip callback (dropdown stays open)", + "status": "PASS", + "data": "color:red" + }, + { + "name": "3 B K guide preview on hover (animation frame advances)", + "status": "PASS", + "data": { + "guide": true + } + }, + { + "name": "3 B K click callback", + "status": "PASS", + "data": "popupGuide" + }, + { + "name": "4 C order File → 선 → 문자 → 치수 → 인쇄", + "status": "PASS", + "data": [ + "file", + "선스타일", + "문자스타일", + "치수스타일", + "인쇄" + ] + }, + { + "name": "4 C first file well has a left edge (consumer wrapper)", + "status": "PASS", + "data": "1px" + }, + { + "name": "4 C line type callback + field value", + "status": "PASS", + "data": "lineType:center" + }, + { + "name": "4 C text style callback + field value", + "status": "PASS", + "data": "textStyle:dotum" + }, + { + "name": "4 C dimension style callback", + "status": "PASS", + "data": "dimensionStyle:iso" + }, + { + "name": "4 C print callback", + "status": "PASS", + "data": "print" + }, + { + "name": "5 D new search field matches the SW field surface (height/top/border/radius/background/shadow/label)", + "status": "PASS", + "data": { + "layer": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "search": { + "h": 38, + "top": 1232, + "border": "1px rgb(8, 37, 28)", + "radius": "3px", + "bg": "linear-gradient(0deg, rgba(0, 0, 0, 0.45", + "shadow": "rgba(9, 39, 30, 0.7) 0px 1px 4px 0px" + }, + "label": "12px", + "fieldLabel": "12px" + } + }, + { + "name": "5 D hover ring like existing fields (edge turns yellow, inside unchanged)", + "status": "PASS", + "data": { + "ring": "1", + "before": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 8, + 37, + 28 + ] + }, + "after": { + "inside": [ + 18, + 50, + 39 + ], + "edge": [ + 172, + 131, + 3 + ] + } + } + }, + { + "name": "5 D Enter commits through SWHeaderInput → search callback", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D search button callback uses committed value", + "status": "PASS", + "data": "search:WALL-01" + }, + { + "name": "5 D Escape restores the committed value", + "status": "PASS", + "data": "WALL-01" + }, + { + "name": "5 D existing color dropdown in the same bar", + "status": "PASS", + "data": "color:blue" + }, + { + "name": "6 B Tab order = display order", + "status": "PASS", + "data": [ + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "팝업 가이드" + ] + }, + { + "name": "7 no page/console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "warnings": [ + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently", + "Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently" + ] +} \ No newline at end of file diff --git a/docs/sw/integrated-improvement-qa/final-overview/after-index.json b/docs/sw/integrated-improvement-qa/final-overview/after-index.json new file mode 100644 index 0000000..a204206 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-overview/after-index.json @@ -0,0 +1,180 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentOpen" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HiddenSubControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + } +] diff --git a/docs/sw/integrated-improvement-qa/final-overview/before-index.json b/docs/sw/integrated-improvement-qa/final-overview/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-overview/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/integrated-improvement-qa/final-overview/chrome-result.json b/docs/sw/integrated-improvement-qa/final-overview/chrome-result.json new file mode 100644 index 0000000..5da3aa6 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-overview/chrome-result.json @@ -0,0 +1,659 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "24 retained Story IDs, names and tags; only approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "retained non-Overview declarations byte-identical; relocated composition separately verified", + "status": "FAIL" + }, + { + "name": "retired Dropdown IDs absent", + "status": "PASS" + }, + { + "name": "package production source untouched except the integrated-improvement files", + "status": "PASS", + "data": [] + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--composed-controls", + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ], + "status": "FAIL" +} diff --git a/docs/sw/integrated-improvement-qa/final-overview/manager-story-order.json b/docs/sw/integrated-improvement-qa/final-overview/manager-story-order.json new file mode 100644 index 0000000..d63978f --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-overview/manager-story-order.json @@ -0,0 +1,13 @@ +[ + "sw-header--composed-controls", + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" +] diff --git a/docs/sw/integrated-improvement-qa/final-overview/overview-after-expanded.png b/docs/sw/integrated-improvement-qa/final-overview/overview-after-expanded.png new file mode 100644 index 0000000..9afb4cf Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-overview/overview-after-expanded.png differ diff --git a/docs/sw/integrated-improvement-qa/final-overview/overview-after-scrolled.png b/docs/sw/integrated-improvement-qa/final-overview/overview-after-scrolled.png new file mode 100644 index 0000000..dc5d847 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-overview/overview-after-scrolled.png differ diff --git a/docs/sw/integrated-improvement-qa/final-overview/overview-after.png b/docs/sw/integrated-improvement-qa/final-overview/overview-after.png new file mode 100644 index 0000000..8a64869 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-overview/overview-after.png differ diff --git a/docs/sw/integrated-improvement-qa/final-overview/overview-manager.png b/docs/sw/integrated-improvement-qa/final-overview/overview-manager.png new file mode 100644 index 0000000..f44c5ac Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-overview/overview-manager.png differ diff --git a/docs/sw/integrated-improvement-qa/final-overview/overview-narrow.png b/docs/sw/integrated-improvement-qa/final-overview/overview-narrow.png new file mode 100644 index 0000000..134f239 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-overview/overview-narrow.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1280-end.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1280-end.png new file mode 100644 index 0000000..fca3565 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1280-end.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1440-end.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1440-end.png new file mode 100644 index 0000000..d3d82b0 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-1440-end.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-390-end.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-390-end.png new file mode 100644 index 0000000..9fc5f41 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-390-end.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-768-end.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-768-end.png new file mode 100644 index 0000000..4686f20 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/compare-768-end.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1280.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1280.png new file mode 100644 index 0000000..71b3615 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1280.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1440.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1440.png new file mode 100644 index 0000000..af06cb7 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-1440.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-390.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-390.png new file mode 100644 index 0000000..66cf027 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-390.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-768.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-768.png new file mode 100644 index 0000000..2a55839 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/dropdown-768.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-sidebar.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-sidebar.png new file mode 100644 index 0000000..28cedf6 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-sidebar.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-story-order.json b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-story-order.json new file mode 100644 index 0000000..cc84dcd --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/manager-story-order.json @@ -0,0 +1,46 @@ +[ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] +] diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1280.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1280.png new file mode 100644 index 0000000..4fd85cb Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1280.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1440.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1440.png new file mode 100644 index 0000000..4301028 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-1440.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-390.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-390.png new file mode 100644 index 0000000..caa2b39 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-390.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-768.png b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-768.png new file mode 100644 index 0000000..5eb5417 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/overview-768.png differ diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/result.json b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/result.json new file mode 100644 index 0000000..93a3f53 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/result.json @@ -0,0 +1,1190 @@ +{ + "baseCommit": "c8e5fbeebc26fba92998fc5ddcd28c6c110e452d", + "checks": [ + { + "name": "inventory: 19 -> 10 retained SW/Header Stories, 338 -> 329 total plus only the integrated-improvement Stories", + "status": "PASS", + "data": { + "before": [ + 338, + 19 + ], + "after": [ + 334, + 12 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ], + "added": [ + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-popup--custom-content", + "sw-popup--multiple-popups", + "sw-tool--tool-buttons" + ] + } + }, + { + "name": "inventory: the nine requested IDs existed before and are absent now", + "status": "PASS" + }, + { + "name": "inventory: retained SW IDs, names, titles, tags and order unchanged", + "status": "PASS", + "data": [ + "sw-header--composed-controls", + "sw-header--detail-buttons", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ] + }, + { + "name": "inventory: every non-removed index entry identical (docs and other packages included)", + "status": "PASS" + }, + { + "name": "inventory: Dropdown keeps sw-header--composed-controls / Dropdown / SW/Header", + "status": "PASS" + }, + { + "name": "inventory: comparison keeps its ID and name", + "status": "PASS" + }, + { + "name": "source: the nine Story exports are removed", + "status": "PASS" + }, + { + "name": "source: retained exports (Stories and ComposedDemo) byte-identical", + "status": "PASS", + "data": [] + }, + { + "name": "source: other packages, Overview, Dropdown CSF, assets and Storybook config untouched; SW package only within the integrated-improvement files", + "status": "PASS", + "data": { + "unexpected": [], + "integrated": 23 + } + }, + { + "name": "sidebar: retained non-verification Stories in index order with their names", + "status": "PASS", + "data": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + { + "name": "sidebar: none of the nine removed menu IDs or names remain", + "status": "PASS", + "data": [ + "Layer Detail · Input", + "Property Panel", + "Additional Hover", + "Property Bar", + "Dynamic Controls", + "Colorize", + "Composition (Visibility · Order)", + "Property Panel · 형상 Slot", + "Property Panel · 필드 13개" + ] + }, + { + "name": "removed URL renders no SW Story", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--document-open", + "status": "PASS" + }, + { + "name": "render sw-header--hidden-sub-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "Overview 390: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 768: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1280: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1440: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview: layer Dropdown opens", + "status": "PASS" + }, + { + "name": "Overview: Escape closes Dropdown and restores focus", + "status": "PASS" + }, + { + "name": "Overview: layer Detail callback (former Layer Detail page) and close", + "status": "PASS" + }, + { + "name": "Overview: btn_colorize 24 × 24 calls onColorPick and closes (former Colorize page)", + "status": "PASS", + "data": { + "x": 700, + "y": 324.25, + "width": 24, + "height": 24 + } + }, + { + "name": "Overview: property Bar Enter commits through callback", + "status": "PASS" + }, + { + "name": "Overview: property Bar validation keeps min=0", + "status": "PASS" + }, + { + "name": "Overview: panel opens with the shared Bar value", + "status": "PASS" + }, + { + "name": "Overview: Escape closes panel and returns focus to its trigger", + "status": "PASS" + }, + { + "name": "Dropdown: five fields plus the 상세보기 group (6 controls)", + "status": "PASS" + }, + { + "name": "Dropdown 390: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 768: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown: text style selection reflected in field and status", + "status": "PASS" + }, + { + "name": "Dropdown: line style selection reflected", + "status": "PASS" + }, + { + "name": "Compare 390: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 390: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 390: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 768: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 768: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 768: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1280: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1280: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1280: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1440: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1440: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1440: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare: editable Input caret #E60403 (former Layer Detail · Input page)", + "status": "PASS" + }, + { + "name": "Compare: Input Enter commits only in its own panel", + "status": "PASS" + }, + { + "name": "Compare: Input Escape cancels", + "status": "PASS" + }, + { + "name": "Compare: layer Dropdown selection commits via callback", + "status": "PASS" + }, + { + "name": "Compare: Escape closes the Dropdown and returns focus", + "status": "PASS" + }, + { + "name": "Motion: one section 「단계별 진행 (3배 확대)」 with nine stages at zoom 3", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "Motion: rest stage static, timed stages hold three paused animations", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "inventory": { + "before": [ + 338, + 19 + ], + "after": [ + 334, + 12 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + "sidebar": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ], + "compare390": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare768": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1280": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1440": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/story-inventory-after.json b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/story-inventory-after.json new file mode 100644 index 0000000..847d527 --- /dev/null +++ b/docs/sw/integrated-improvement-qa/final-storybook-unused-removal/story-inventory-after.json @@ -0,0 +1,126 @@ +{ + "total": 334, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + } + ] +} diff --git a/docs/sw/integrated-improvement-qa/verify/composed-open.png b/docs/sw/integrated-improvement-qa/verify/composed-open.png new file mode 100644 index 0000000..30aed34 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/composed-open.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/composed-responsive.png b/docs/sw/integrated-improvement-qa/verify/composed-responsive.png new file mode 100644 index 0000000..2866a98 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/composed-responsive.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/hidden-document-new.png b/docs/sw/integrated-improvement-qa/verify/hidden-document-new.png new file mode 100644 index 0000000..96a1d9f Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/hidden-document-new.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/hidden-layer-states.png b/docs/sw/integrated-improvement-qa/verify/hidden-layer-states.png new file mode 100644 index 0000000..354b838 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/hidden-layer-states.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/integrated-improvement-result.json b/docs/sw/integrated-improvement-qa/verify/integrated-improvement-result.json new file mode 100644 index 0000000..a4c6cad --- /dev/null +++ b/docs/sw/integrated-improvement-qa/verify/integrated-improvement-result.json @@ -0,0 +1,1286 @@ +{ + "browser": "155.0.8059.80", + "checks": [ + { + "name": "menu (default): no Open next to the logo", + "status": "PASS" + }, + { + "name": "menu (default): dropdown footer keeps + New and Open", + "status": "PASS" + }, + { + "name": "header: Open takes the file name place right of the logo (same junction offset, 48px)", + "status": "PASS", + "data": { + "home": { + "x": 360, + "y": 851.5, + "w": 80, + "h": 48, + "right": 440 + }, + "openBox": { + "x": 425, + "y": 851.5, + "w": 58.265625, + "h": 48, + "right": 483.265625 + }, + "junction": -15 + } + }, + { + "name": "header: file name follows Open without overlap", + "status": "PASS", + "data": { + "openBox": { + "x": 425, + "y": 851.5, + "w": 58.265625, + "h": 48, + "right": 483.265625 + }, + "docBox": { + "x": 485.265625, + "y": 851.5, + "w": 249.734375, + "h": 48, + "right": 735 + } + } + }, + { + "name": "header: Open uses hm-sw-header__document-button (same surface, color, weight as the file name)", + "status": "PASS", + "data": { + "styles": { + "cls": "hm-sw-header__document-button", + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "5px", + "borderL": "0px", + "borderR": "1px" + }, + "fileStyles": { + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "12px" + } + } + }, + { + "name": "D-1: file name after Open starts with 12px padding", + "status": "PASS", + "data": { + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "12px" + } + }, + { + "name": "header: Open hover turns only the text #FFC600", + "status": "PASS" + }, + { + "name": "header: dropdown footer has + New only (no duplicate Open)", + "status": "PASS" + }, + { + "name": "header: Open calls onDocumentOpen", + "status": "PASS" + }, + { + "name": "documentOpenLabel is the Open text", + "status": "PASS" + }, + { + "name": "responsive 1920: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2280, + "barRight": 2280, + "overlap": false, + "open": 58.265625, + "doc": 249.734375, + "layer": 234, + "more": false + } + }, + { + "name": "responsive 1920: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 1920: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1800: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2160, + "barRight": 2160, + "overlap": false, + "open": 58.265625, + "doc": 190, + "layer": 234, + "more": false + } + }, + { + "name": "responsive 1800: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 1800: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1440: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1800, + "barRight": 1800, + "overlap": false, + "open": 58.265625, + "doc": 310, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1440: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 1440: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1180: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1540, + "barRight": 1540, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1180: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 1180: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1080: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1440, + "barRight": 1440, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1080: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 1080: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 900: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1260, + "barRight": 1260, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 900: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 900: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 768: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1128, + "barRight": 1128, + "overlap": false, + "open": 58.265625, + "doc": 178.734375, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 768: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 768: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 640: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1000, + "barRight": 1000, + "overlap": false, + "open": 58.265625, + "doc": 96, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 640: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 58.265625, + "inMore": null + } + }, + { + "name": "responsive 640: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 520: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 880, + "barRight": 880, + "overlap": false, + "open": 0, + "doc": 103, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 520: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 520: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 390: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 750, + "barRight": 750, + "overlap": false, + "open": 0, + "doc": 96, + "layer": 113, + "more": true + } + }, + { + "name": "responsive 390: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "resize: collapsed Open returns once when the header grows (measured, with hysteresis)", + "status": "PASS", + "data": [ + [ + 520, + 0 + ], + [ + 560, + 0 + ], + [ + 600, + 1 + ], + [ + 640, + 1 + ], + [ + 680, + 1 + ], + [ + 720, + 1 + ], + [ + 760, + 1 + ], + [ + 820, + 1 + ], + [ + 900, + 1 + ], + [ + 1080, + 1 + ] + ] + }, + { + "name": "hidden documentNew: footer keeps Open on its right side", + "status": "PASS", + "data": { + "footer": { + "x": 424, + "y": 442.5, + "w": 310, + "h": 40, + "right": 734 + }, + "action": { + "x": 675.96875, + "y": 451, + "w": 50.03125, + "h": 24, + "right": 726 + } + } + }, + { + "name": "hidden documentNew + documentOpen: no footer", + "status": "PASS" + }, + { + "name": "hidden layerFreeze / layerLock: field draws the bulb only, two empty 20px places", + "status": "PASS", + "data": [ + { + "empty": false, + "w": 20 + }, + { + "empty": true, + "w": 20 + }, + { + "empty": true, + "w": 20 + } + ] + }, + { + "name": "hidden layerFreeze / layerLock: rows have no snowflake / lock button, places kept", + "status": "PASS", + "data": [ + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + }, + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + }, + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + } + ] + }, + { + "name": "hidden layer states: the bulb still reports its callback", + "status": "PASS" + }, + { + "name": "composed: Open right of the logo at the same junction offset as SWHeader", + "status": "PASS", + "data": { + "cHome": { + "x": 360, + "y": 6118.5, + "w": 80, + "h": 48, + "right": 440 + }, + "cOpen": { + "x": 425, + "y": 6118.5, + "w": 58.265625, + "h": 48, + "right": 483.265625 + } + } + }, + { + "name": "composed: file name after Open has 12px padding", + "status": "PASS" + }, + { + "name": "composed: Open callback", + "status": "PASS" + }, + { + "name": "composed: showOpen={false} removes Open from the dropdown", + "status": "PASS" + }, + { + "name": "composed responsive 1920: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1800: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1440: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1180: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1080: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 900: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 768: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 768: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "composed responsive 640: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 640: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "composed responsive 520: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 520: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "composed responsive 390: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 390: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "tool: Model / Layout is a radio group", + "status": "PASS" + }, + { + "name": "tool: arrow key moves focus and selects Layout", + "status": "PASS" + }, + { + "name": "tool: 2.5D toggle reports and shows pressed (#FFC600)", + "status": "PASS" + }, + { + "name": "tool: text buttons are the 속성Bar toggle look (700, 19px row, 12px caption)", + "status": "PASS", + "data": { + "text": { + "weight": "700", + "h": 19 + }, + "ref": "12px" + } + }, + { + "name": "tool: pill button is 40 x 38 with the yellow ring and hover icon", + "status": "PASS", + "data": { + "pillBox": { + "x": 1467.234375, + "y": 336, + "w": 40, + "h": 38, + "right": 1507.234375 + }, + "hover": { + "ring": "1", + "icon": "hidden", + "hoverIcon": "visible" + } + } + }, + { + "name": "tool: pill click callback", + "status": "PASS" + }, + { + "name": "tool: pill accessible name from its text", + "status": "PASS" + }, + { + "name": "tool: document look keeps the logo junction in a composed bar", + "status": "PASS", + "data": { + "tHome": { + "x": 360, + "y": 491.5, + "w": 80, + "h": 48, + "right": 440 + }, + "tOpen": { + "x": 425, + "y": 491.5, + "w": 58.265625, + "h": 48, + "right": 483.265625 + } + } + }, + { + "name": "popup: SWPopup frames match the property window frame (314, surface, border, radius, title)", + "status": "PASS", + "data": [ + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + } + ] + }, + { + "name": "popup content: SWHeaderInput rows commit through the host callbacks", + "status": "PASS" + }, + { + "name": "popup content: SWPopupRow is the property row (72px label, 32px row, 28px box)", + "status": "PASS", + "data": { + "label": "72px", + "minH": "32px", + "box": "28px" + } + }, + { + "name": "popup content: HM UI Switch works inside", + "status": "PASS" + }, + { + "name": "popup content: HM UI Select (portal) works inside", + "status": "PASS" + }, + { + "name": "popup content: HM UI Slider works inside", + "status": "PASS", + "data": "Callback: name=평면도-02 → scale=50 → snap=false → unit=cm → opacity=70" + }, + { + "name": "popup content: HM UI Button works inside", + "status": "PASS" + }, + { + "name": "popup dropdown: SW layer dropdown opens right under its field (fixed overlay) and is not clipped", + "status": "PASS", + "data": { + "fieldBox": { + "x": 387, + "y": 548.5, + "w": 234, + "h": 38, + "right": 621 + }, + "menuBox": { + "x": 387, + "y": 586.5, + "w": 234, + "h": 160, + "right": 621 + }, + "hit": true + } + }, + { + "name": "popup dropdown: selection callback, list closes, popup stays", + "status": "PASS" + }, + { + "name": "popup dropdown: SW color dropdown becomes a fixed overlay", + "status": "PASS" + }, + { + "name": "popup dropdown: color chip callback", + "status": "PASS" + }, + { + "name": "popup dropdown: Escape closes the dropdown only", + "status": "PASS" + }, + { + "name": "object popup: read-only rows", + "status": "PASS" + }, + { + "name": "object popup: number row commits", + "status": "PASS" + }, + { + "name": "object popup: compact row uses the 41px hug field", + "status": "PASS", + "data": { + "cls": "hm-sw-header__input hm-sw-property__compact", + "w": 26.53125 + } + }, + { + "name": "property panel + children: children follow the property groups in the same body", + "status": "PASS", + "data": [ + "공통", + "메모" + ] + }, + { + "name": "property panel + children: child content callback", + "status": "PASS" + }, + { + "name": "popup: close button calls onClose", + "status": "PASS" + }, + { + "name": "short popup: dropdown extends past the popup and stays fully visible (no clipping)", + "status": "PASS", + "data": { + "bBox": { + "x": 706, + "y": 264.5, + "w": 314, + "h": 110, + "right": 1020 + }, + "menuB": { + "x": 717, + "y": 363.5, + "w": 234, + "h": 160, + "right": 951 + }, + "bHit": true + } + }, + { + "name": "several popups: Escape in a dropdown closes only the dropdown", + "status": "PASS" + }, + { + "name": "several popups: Escape on an edited input cancels the edit only", + "status": "PASS" + }, + { + "name": "several popups: Escape inside a popup closes that popup only", + "status": "PASS", + "data": "Callback: close(a)" + }, + { + "name": "several popups: Escape outside closes only the top popup (last used: B)", + "status": "PASS", + "data": "Callback: close(a) → close(b)" + }, + { + "name": "several popups: the popup used last becomes the top", + "status": "PASS", + "data": "Callback: close(a) → close(b) → close(a)" + }, + { + "name": "long content: the body scrolls inside the frame and the last row is reachable", + "status": "PASS", + "data": { + "scroll": { + "sh": 1000, + "ch": 328, + "overflow": "auto" + }, + "lastVisible": true + } + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "junction": -15, + "responsive": [ + { + "width": 1920, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2280, + "barRight": 2280, + "overlap": false, + "open": 58.265625, + "doc": 249.734375, + "layer": 234, + "more": false, + "inMore": null + }, + { + "width": 1800, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2160, + "barRight": 2160, + "overlap": false, + "open": 58.265625, + "doc": 190, + "layer": 234, + "more": false, + "inMore": null + }, + { + "width": 1440, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1800, + "barRight": 1800, + "overlap": false, + "open": 58.265625, + "doc": 310, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 1180, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1540, + "barRight": 1540, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 1080, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1440, + "barRight": 1440, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 900, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1260, + "barRight": 1260, + "overlap": false, + "open": 58.265625, + "doc": 120, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 768, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1128, + "barRight": 1128, + "overlap": false, + "open": 58.265625, + "doc": 178.734375, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 640, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1000, + "barRight": 1000, + "overlap": false, + "open": 58.265625, + "doc": 96, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 520, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 880, + "barRight": 880, + "overlap": false, + "open": 0, + "doc": 103, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 390, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 750, + "barRight": 750, + "overlap": false, + "open": 0, + "doc": 96, + "layer": 113, + "more": true, + "inMore": true + } + ], + "hysteresis": [ + [ + 520, + 0 + ], + [ + 560, + 0 + ], + [ + 600, + 1 + ], + [ + 640, + 1 + ], + [ + 680, + 1 + ], + [ + 720, + 1 + ], + [ + 760, + 1 + ], + [ + 820, + 1 + ], + [ + 900, + 1 + ], + [ + 1080, + 1 + ] + ], + "composedResponsive": [ + { + "width": 1920, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1800, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1440, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1180, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1080, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 900, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 768, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 640, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 520, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 390, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + ], + "popupFrames": [ + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + } + ] + }, + "status": "PASS" +} diff --git a/docs/sw/integrated-improvement-qa/verify/open-placement-header.png b/docs/sw/integrated-improvement-qa/verify/open-placement-header.png new file mode 100644 index 0000000..0b9564c Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/open-placement-header.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/open-placement-responsive.png b/docs/sw/integrated-improvement-qa/verify/open-placement-responsive.png new file mode 100644 index 0000000..51d8cbf Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/open-placement-responsive.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/popup-custom-content.png b/docs/sw/integrated-improvement-qa/verify/popup-custom-content.png new file mode 100644 index 0000000..c1b0433 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/popup-custom-content.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/popup-custom-dropdown.png b/docs/sw/integrated-improvement-qa/verify/popup-custom-dropdown.png new file mode 100644 index 0000000..757abe0 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/popup-custom-dropdown.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/popup-short-dropdown.png b/docs/sw/integrated-improvement-qa/verify/popup-short-dropdown.png new file mode 100644 index 0000000..3ff45fc Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/popup-short-dropdown.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/popup-stack.png b/docs/sw/integrated-improvement-qa/verify/popup-stack.png new file mode 100644 index 0000000..95d58ea Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/popup-stack.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/tool-composed.png b/docs/sw/integrated-improvement-qa/verify/tool-composed.png new file mode 100644 index 0000000..4f7c6f8 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/tool-composed.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/tool-in-header.png b/docs/sw/integrated-improvement-qa/verify/tool-in-header.png new file mode 100644 index 0000000..1303894 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/tool-in-header.png differ diff --git a/docs/sw/integrated-improvement-qa/verify/tool-states.png b/docs/sw/integrated-improvement-qa/verify/tool-states.png new file mode 100644 index 0000000..8e423b2 Binary files /dev/null and b/docs/sw/integrated-improvement-qa/verify/tool-states.png differ diff --git a/docs/sw/integrated-improvement-qa/visual-diff/compare-result.json b/docs/sw/integrated-improvement-qa/visual-diff/compare-result.json new file mode 100644 index 0000000..0bb1d0e --- /dev/null +++ b/docs/sw/integrated-improvement-qa/visual-diff/compare-result.json @@ -0,0 +1,146 @@ +{ + "total": 28, + "same": 28, + "results": [ + { + "file": "composed-controls-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "detail-buttons-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "document-dropdown-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "interactive-states-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "k-guide-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "logo-slot-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-1080.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-1180.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-1440.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-1800.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-390.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-520.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-640.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-768.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "overview-900.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "property-panel-compare-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-1080.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-1180.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-1440.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-1800.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-1920.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-390.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-520.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-640.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-768.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "responsive-more-900.png", + "status": "SAME", + "changed": 0 + }, + { + "file": "window-move-motion-1920.png", + "status": "SAME", + "changed": 0 + } + ] +} \ No newline at end of file diff --git a/docs/sw/property-close-qa/after-default.png b/docs/sw/property-close-qa/after-default.png new file mode 100644 index 0000000..cc1eb1d Binary files /dev/null and b/docs/sw/property-close-qa/after-default.png differ diff --git a/docs/sw/property-close-qa/after-hover.png b/docs/sw/property-close-qa/after-hover.png new file mode 100644 index 0000000..925ce65 Binary files /dev/null and b/docs/sw/property-close-qa/after-hover.png differ diff --git a/docs/sw/property-close-qa/after-result.json b/docs/sw/property-close-qa/after-result.json new file mode 100644 index 0000000..e85acb3 --- /dev/null +++ b/docs/sw/property-close-qa/after-result.json @@ -0,0 +1,81 @@ +{ + "label": "after", + "checks": [ + { + "name": "size 44 x 30, top-right of the panel", + "status": "PASS", + "data": { + "w": 44, + "h": 30, + "right": 1, + "top": 1, + "imgs": [ + [ + "hm-sw-property__close-default", + 44, + 30 + ], + [ + "hm-sw-property__close-hover", + 44, + 30 + ] + ] + } + }, + { + "name": "Default: no canvas-light pixels on the button edge / corner", + "status": "PASS", + "data": { + "bright": 0, + "where": [] + } + }, + { + "name": "Hover: hover asset shown, no canvas-light pixels on the edge / corner", + "status": "PASS", + "data": { + "vis": [ + "hidden", + "visible" + ], + "bright": 0, + "where": [] + } + }, + { + "name": "click closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "legacyToggle → open(true) → open(false)" + } + }, + { + "name": "Escape closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "rue) → open(false) → legacyToggle → open(true) → open(false)" + } + }, + { + "name": "no console / page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "pixels": { + "def": { + "bright": 0, + "where": [] + }, + "hov": { + "bright": 0, + "where": [] + } + } +} \ No newline at end of file diff --git a/docs/sw/property-close-qa/before-default.png b/docs/sw/property-close-qa/before-default.png new file mode 100644 index 0000000..876b3f1 Binary files /dev/null and b/docs/sw/property-close-qa/before-default.png differ diff --git a/docs/sw/property-close-qa/before-hover.png b/docs/sw/property-close-qa/before-hover.png new file mode 100644 index 0000000..6f92953 Binary files /dev/null and b/docs/sw/property-close-qa/before-hover.png differ diff --git a/docs/sw/property-close-qa/before-result.json b/docs/sw/property-close-qa/before-result.json new file mode 100644 index 0000000..aa53ae9 --- /dev/null +++ b/docs/sw/property-close-qa/before-result.json @@ -0,0 +1,81 @@ +{ + "label": "before", + "checks": [ + { + "name": "size 44 x 30, top-right of the panel", + "status": "PASS", + "data": { + "w": 44, + "h": 30, + "right": 1, + "top": 1, + "imgs": [ + [ + "hm-sw-property__close-default", + 44, + 30 + ], + [ + "hm-sw-property__close-hover", + 44, + 30 + ] + ] + } + }, + { + "name": "Default: no canvas-light pixels on the button edge / corner", + "status": "PASS", + "data": { + "bright": 0, + "where": [] + } + }, + { + "name": "Hover: hover asset shown, no canvas-light pixels on the edge / corner", + "status": "PASS", + "data": { + "vis": [ + "hidden", + "visible" + ], + "bright": 0, + "where": [] + } + }, + { + "name": "click closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "legacyToggle → open(true) → open(false)" + } + }, + { + "name": "Escape closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "rue) → open(false) → legacyToggle → open(true) → open(false)" + } + }, + { + "name": "no console / page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "pixels": { + "def": { + "bright": 0, + "where": [] + }, + "hov": { + "bright": 0, + "where": [] + } + } +} \ No newline at end of file diff --git a/docs/sw/property-fields-qa/run4-compare.png b/docs/sw/property-fields-qa/run4-compare.png new file mode 100644 index 0000000..72d05d1 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-compare.png differ diff --git a/docs/sw/property-fields-qa/run4-default.png b/docs/sw/property-fields-qa/run4-default.png new file mode 100644 index 0000000..a0fe15c Binary files /dev/null and b/docs/sw/property-fields-qa/run4-default.png differ diff --git a/docs/sw/property-fields-qa/run4-hover-scale.png b/docs/sw/property-fields-qa/run4-hover-scale.png new file mode 100644 index 0000000..6293475 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-hover-scale.png differ diff --git a/docs/sw/property-fields-qa/run4-on-color.png b/docs/sw/property-fields-qa/run4-on-color.png new file mode 100644 index 0000000..afd082e Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-color.png differ diff --git a/docs/sw/property-fields-qa/run4-on-layer-mixed.png b/docs/sw/property-fields-qa/run4-on-layer-mixed.png new file mode 100644 index 0000000..128ce34 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-layer-mixed.png differ diff --git a/docs/sw/property-fields-qa/run4-on-layer.png b/docs/sw/property-fields-qa/run4-on-layer.png new file mode 100644 index 0000000..a54a187 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-layer.png differ diff --git a/docs/sw/property-fields-qa/run4-on-line.png b/docs/sw/property-fields-qa/run4-on-line.png new file mode 100644 index 0000000..ea3b391 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-line.png differ diff --git a/docs/sw/property-fields-qa/run4-on-scale.png b/docs/sw/property-fields-qa/run4-on-scale.png new file mode 100644 index 0000000..e49e4cc Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-scale.png differ diff --git a/docs/sw/property-fields-qa/run4-on-thickness.png b/docs/sw/property-fields-qa/run4-on-thickness.png new file mode 100644 index 0000000..b0d60e9 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-thickness.png differ diff --git a/docs/sw/property-fields-qa/run4-on-weight.png b/docs/sw/property-fields-qa/run4-on-weight.png new file mode 100644 index 0000000..861b316 Binary files /dev/null and b/docs/sw/property-fields-qa/run4-on-weight.png differ diff --git a/docs/sw/property-fields-qa/run4-result.json b/docs/sw/property-fields-qa/run4-result.json new file mode 100644 index 0000000..4999f20 --- /dev/null +++ b/docs/sw/property-fields-qa/run4-result.json @@ -0,0 +1,813 @@ +{ + "label": "run4", + "checks": [ + { + "name": "Default layer-mixed: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default layer: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default color: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default line: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default scale: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default link: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default thickness: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default material: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default weight: compact 28px hug field (pl 6 / pr 4 incl. border), no border", + "status": "PASS", + "data": { + "x": 97, + "y": 499.5, + "w": 39.23, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "paddingLeft": "5px", + "paddingRight": "3px" + } + }, + { + "name": "Default opacity: compact 28px hug field (pl 6 / pr 4 incl. border), no border", + "status": "PASS", + "data": { + "x": 97, + "y": 563.5, + "w": 39.23, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "paddingLeft": "5px", + "paddingRight": "3px" + } + }, + { + "name": "Typography: value #E60403 14px, unit #000 12px", + "status": "PASS", + "data": { + "value": [ + "rgb(230, 4, 3)", + "14px" + ], + "unit": [ + "rgb(0, 0, 0)", + "12px" + ] + } + }, + { + "name": "Hover layer-mixed: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 377.5 + ], + "after": [ + 105, + 377.5 + ] + } + }, + { + "name": "Mouse Leave layer-mixed: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover layer: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 409.5 + ], + "after": [ + 105, + 409.5 + ] + } + }, + { + "name": "Mouse Leave layer: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover color: rgba(33,29,19,.4) border, 28px kept, value not moved, divider shown", + "status": "PASS", + "data": { + "x": 98, + "y": 436.5, + "w": 114, + "h": 26, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 436.5 + ], + "after": [ + 105, + 436.5 + ], + "borderRightColor": "rgba(33, 29, 19, 0.4)" + } + }, + { + "name": "Mouse Leave color: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover line: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 473.5 + ], + "after": [ + 105, + 473.5 + ] + } + }, + { + "name": "Mouse Leave line: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover scale: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 532.5 + ], + "after": [ + 105, + 532.5 + ] + } + }, + { + "name": "Mouse Leave scale: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover link: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 596.5 + ], + "after": [ + 105, + 596.5 + ] + } + }, + { + "name": "Mouse Leave link: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover thickness: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 628.5 + ], + "after": [ + 105, + 628.5 + ] + } + }, + { + "name": "Mouse Leave thickness: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover material: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 660.5 + ], + "after": [ + 105, + 660.5 + ] + } + }, + { + "name": "Mouse Leave material: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover / Leave weight compact", + "status": "PASS", + "data": { + "hover": "rgba(33, 29, 19, 0.4)", + "leave": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover / Leave opacity compact", + "status": "PASS", + "data": { + "hover": "rgba(33, 29, 19, 0.4)", + "leave": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "On(편집) scale: #0F0D0A, border, unit #FFF, focused input with red caret + outline", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)", + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "unit": "rgb(255, 255, 255)", + "focused": true, + "caret": "rgb(230, 4, 3)", + "shadow": true + } + }, + { + "name": "On(편집) thickness: #0F0D0A, border, unit #FFF, focused input with red caret + outline", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)", + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "unit": "rgb(255, 255, 255)", + "focused": true, + "caret": "rgb(230, 4, 3)", + "shadow": true + } + }, + { + "name": "Enter: 선축적 2 → validated, 4 decimals committed", + "status": "PASS", + "data": "property(scale, 2.0000)" + }, + { + "name": "Escape: draft cancelled (2.0000 restored, no callback)", + "status": "PASS", + "data": "2.0000" + }, + { + "name": "On(편집) 선가중치 compact: #0F0D0A", + "status": "PASS", + "data": { + "x": 97, + "y": 499.5, + "w": 43.03, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)" + } + }, + { + "name": "Invalid 선가중치 -1 (min 0): restored, no callback", + "status": "PASS", + "data": "0.25" + }, + { + "name": "선가중치 0.5 committed", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5)" + }, + { + "name": "하이퍼링크 focus: no On surface (Figma has no On), editable", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopColor": "rgba(33, 29, 19, 0.4)" + } + }, + { + "name": "하이퍼링크 commit via host callback", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a)" + }, + { + "name": "재료: read-only, no On", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Layer On: #211D13 field, 234 wide list, right edges meet, starts at field bottom", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(33, 29, 19)", + "borderTopColor": "rgba(33, 29, 19, 0.4)" + }, + "d": { + "x": 63, + "y": 431.5, + "w": 234, + "h": 250 + } + } + }, + { + "name": "Layer list rows 30px, footer 40px, height = rows*30+40", + "status": "PASS", + "data": { + "rows": 7, + "row": 30, + "footer": 40, + "h": 250 + } + }, + { + "name": "Layer current row marked (0_Layer_Cludmark)", + "status": "PASS", + "data": null + }, + { + "name": "Bulb toggle: callback only, list stays open, row not selected", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true)" + }, + { + "name": "Row select: property(layer, CC-D GNL), closes, field shows value", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL)" + }, + { + "name": "Close keeps the value and focus returns to the field", + "status": "PASS", + "data": null + }, + { + "name": "다양함: text 다양함, no current row in list", + "status": "PASS", + "data": null + }, + { + "name": "Escape closes the layer list; panel stays", + "status": "PASS", + "data": null + }, + { + "name": "Host data: 다양함 → 단일 값 (0_Layer_Cludmark)", + "status": "PASS", + "data": "0_Layer_Cludmark" + }, + { + "name": "External value change shown (CC-D GNL)", + "status": "PASS", + "data": null + }, + { + "name": "Keyboard: ArrowDown opens + focuses list, Escape closes to trigger", + "status": "PASS", + "data": null + }, + { + "name": "Outside click closes", + "status": "PASS", + "data": null + }, + { + "name": "Line style On: #211D13, (ByL) #D4CBBD, 3 columns, right edges meet (or shifted to the 4px screen edge when no room)", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 485.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(33, 29, 19)" + }, + "d": { + "x": 4, + "y": 513.5, + "w": 471.19, + "h": 190 + }, + "cols": [ + 187.19, + 142, + 142 + ] + } + }, + { + "name": "Line style drop 466 x 190 (type column grows only for wider font names)", + "status": "PASS", + "data": { + "w": 471.19, + "h": 190, + "cols": [ + 187.19, + 142, + 142 + ] + } + }, + { + "name": "Weight column: callback only, stays open", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock)" + }, + { + "name": "Line type select: property(line, CENTER), closes, preview = CENTER pattern (4 segments)", + "status": "PASS", + "data": { + "segs": 4 + } + }, + { + "name": "Figma sample 255,259,0 shown as host text, swatch from host", + "status": "PASS", + "data": null + }, + { + "name": "Color On: dropdown 192 wide, left edges meet, RGB area #211D13 + divider", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28 + }, + "d": { + "x": 97, + "y": 463.5, + "w": 192, + "h": 158 + }, + "left": { + "x": 98, + "y": 436.5, + "w": 114, + "h": 26, + "backgroundColor": "rgb(33, 29, 19)", + "borderRightColor": "rgba(33, 29, 19, 0.4)" + } + } + }, + { + "name": "Color dropdown height 158 (Figma)", + "status": "PASS", + "data": 158 + }, + { + "name": "ByBlock: callback, required single choice (ByBlock pressed, ByLayer not)", + "status": "PASS", + "data": null + }, + { + "name": "Clicking the pressed mode is a no-op", + "status": "PASS", + "data": null + }, + { + "name": "Chip: property(color, 241,4,4)", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock) → property(line, CENTER) → colorMode(byBlock) → property(color, 241,4,4)" + }, + { + "name": "Out-of-range 255,259,0 rejected (no callback, restored)", + "status": "PASS", + "data": "241,4,4" + }, + { + "name": "Valid RGB committed normalized (1,2,3)", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock) → property(line, CENTER) → colorMode(byBlock) → property(color, 241,4,4) → property(color, 1,2,3)" + }, + { + "name": "btn_colorize: host callback, dropdown closes", + "status": "PASS", + "data": null + }, + { + "name": "Field RGB 300,0,0 rejected", + "status": "PASS", + "data": "1,2,3" + }, + { + "name": "Escape #1 cancels draft, dropdown still open", + "status": "PASS", + "data": null + }, + { + "name": "Escape #2 closes the dropdown, panel stays", + "status": "PASS", + "data": null + }, + { + "name": "ReadOnly 두께: no On; ReadOnly 레이어: no dropdown", + "status": "PASS", + "data": { + "x": 97, + "y": 647, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "ReadOnly keeps Hover border", + "status": "PASS", + "data": null + }, + { + "name": "Disabled 색상: no dropdown; Disabled 선축적: no hover border", + "status": "PASS", + "data": null + }, + { + "name": "External value / unit props: 선축적 2.5000, 두께 cm", + "status": "PASS", + "data": null + }, + { + "name": "Dynamic rows: added at the end, removed row gone, order kept", + "status": "PASS", + "data": [ + "layer-mixed", + "layer", + "color", + "line", + "weight", + "scale", + "opacity", + "thickness", + "material", + "extra-10" + ] + }, + { + "name": "Without menus: line types from options only (1 column), no crash", + "status": "PASS", + "data": 1 + }, + { + "name": "Pinned Hover specimen uses the same border", + "status": "PASS", + "data": "rgba(33, 29, 19, 0.4)" + }, + { + "name": "4 panel states: 314 x 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "Header-hosted panel: layer list attached; Escape closes list only", + "status": "PASS", + "data": { + "hosted": { + "right": 0, + "top": 0, + "panelOpen": true + }, + "stillOpen": 1 + } + }, + { + "name": "no console / page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/property-panel-comparison-qa/before/before-compare-1440.png b/docs/sw/property-panel-comparison-qa/before/before-compare-1440.png new file mode 100644 index 0000000..7a805d7 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-compare-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/before-property-panel-all.png b/docs/sw/property-panel-comparison-qa/before/before-property-panel-all.png new file mode 100644 index 0000000..28e19c1 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-property-panel-all.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/before-property-panel-circle.png b/docs/sw/property-panel-comparison-qa/before/before-property-panel-circle.png new file mode 100644 index 0000000..6c60a22 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-property-panel-circle.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/before-property-panel-expanded.png b/docs/sw/property-panel-comparison-qa/before/before-property-panel-expanded.png new file mode 100644 index 0000000..20f2080 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-property-panel-expanded.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/before-property-panel-none.png b/docs/sw/property-panel-comparison-qa/before/before-property-panel-none.png new file mode 100644 index 0000000..d32f7d0 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-property-panel-none.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/before-property-panel-variants.png b/docs/sw/property-panel-comparison-qa/before/before-property-panel-variants.png new file mode 100644 index 0000000..bb6cce6 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/before/before-property-panel-variants.png differ diff --git a/docs/sw/property-panel-comparison-qa/before/result.json b/docs/sw/property-panel-comparison-qa/before/result.json new file mode 100644 index 0000000..ea7483c --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/before/result.json @@ -0,0 +1,202 @@ +{ + "mode": "before", + "base": "static", + "browser": "155.0.8059.80", + "checks": [], + "errors": [], + "data": { + "inventory": { + "total": 343, + "sw": 24, + "ids": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--layer-detail-input", + "Layer Detail · Input" + ], + [ + "sw-header--property-panel", + "Property Panel" + ], + [ + "sw-header--property-panel-variants", + "Property Panel Variants" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--additional-hover", + "Additional Hover" + ], + [ + "sw-header--property-bar", + "Property Bar" + ], + [ + "sw-header--dynamic-controls", + "Dynamic Controls" + ], + [ + "sw-header--colorize", + "Colorize" + ], + [ + "sw-header--composition", + "Composition (Visibility · Order)" + ], + [ + "sw-header--property-panel-none", + "Property Panel · 선택 없음" + ], + [ + "sw-header--property-panel-all", + "Property Panel · 전체 선택" + ], + [ + "sw-header--property-panel-circle", + "Property Panel · 원 1개" + ], + [ + "sw-header--property-panel-expanded", + "Property Panel · 모두 펼침" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ], + [ + "sw-header--property-shape-slot", + "Property Panel · 형상 Slot" + ], + [ + "sw-header--property-fields", + "Property Panel · 필드 13개" + ] + ] + }, + "compare": { + "cells": [ + { + "id": "none", + "cell": { + "x": 0, + "y": 177, + "w": 314, + "h": 322, + "right": 314, + "bottom": 499 + }, + "panel": { + "x": 0, + "y": 243, + "w": 314, + "h": 256, + "right": 314, + "bottom": 499 + }, + "caption": "선택된 객체 없음" + }, + { + "id": "all", + "cell": { + "x": 338, + "y": 177, + "w": 314, + "h": 427, + "right": 652, + "bottom": 604 + }, + "panel": { + "x": 338, + "y": 243, + "w": 314, + "h": 361, + "right": 652, + "bottom": 604 + }, + "caption": "전체 객체 선택" + }, + { + "id": "circle", + "cell": { + "x": 676, + "y": 177, + "w": 314, + "h": 724, + "right": 990, + "bottom": 901 + }, + "panel": { + "x": 676, + "y": 243, + "w": 314, + "h": 658, + "right": 990, + "bottom": 901 + }, + "caption": "원 1개 선택" + }, + { + "id": "expanded", + "cell": { + "x": 1014, + "y": 177, + "w": 314, + "h": 820, + "right": 1328, + "bottom": 997 + }, + "panel": { + "x": 1014, + "y": 243, + "w": 314, + "h": 754, + "right": 1328, + "bottom": 997 + }, + "caption": "모든 항목 펼침" + } + ], + "scroller": null, + "doc": { + "scrollW": 1440, + "clientW": 1440, + "scrollH": 1037, + "clientH": 900 + } + } + } +} diff --git a/docs/sw/property-panel-comparison-qa/before/story-inventory-before.json b/docs/sw/property-panel-comparison-qa/before/story-inventory-before.json new file mode 100644 index 0000000..39432ff --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/before/story-inventory-before.json @@ -0,0 +1,246 @@ +{ + "total": 343, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + } + ] +} diff --git a/docs/sw/property-panel-comparison-qa/legacy-detail-buttons-preservation/preservation-result.json b/docs/sw/property-panel-comparison-qa/legacy-detail-buttons-preservation/preservation-result.json new file mode 100644 index 0000000..223efc0 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-detail-buttons-preservation/preservation-result.json @@ -0,0 +1,114 @@ +{ + "mode": "preservation", + "browser": "155.0.8059.80", + "checks": [ + { + "name": "required responsive width 390", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 768", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1280", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1440", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "preserve property panel none", + "status": "PASS", + "data": { + "x": 360, + "y": 282.5, + "width": 314, + "height": 256 + } + }, + { + "name": "preserve property panel all", + "status": "PASS", + "data": { + "x": 698, + "y": 282.5, + "width": 314, + "height": 361 + } + }, + { + "name": "preserve property panel circle", + "status": "PASS", + "data": { + "x": 360, + "y": 733.5, + "width": 314, + "height": 658 + } + }, + { + "name": "preserve property panel expanded", + "status": "PASS", + "data": { + "x": 698, + "y": 733.5, + "width": 314, + "height": 754 + } + }, + { + "name": "preserve window motion 1400ms", + "status": "PASS" + }, + { + "name": "window motion leave clears animations", + "status": "PASS" + }, + { + "name": "preserve K guide animation", + "status": "PASS" + }, + { + "name": "K guide leave closes", + "status": "PASS" + }, + { + "name": "preserve Colorize size", + "status": "PASS" + }, + { + "name": "preserve editable Input", + "status": "PASS" + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": {}, + "status": "PASS" +} \ No newline at end of file diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/after-full-index.json b/docs/sw/property-panel-comparison-qa/legacy-dropdown/after-full-index.json new file mode 100644 index 0000000..def66d2 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-dropdown/after-full-index.json @@ -0,0 +1,5278 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1280.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1280.png new file mode 100644 index 0000000..37ed59f Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1280.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1440.png new file mode 100644 index 0000000..074dc19 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-390.png new file mode 100644 index 0000000..dc36845 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-768.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-768.png new file mode 100644 index 0000000..1c567ce Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-768.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-manager.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-manager.png new file mode 100644 index 0000000..b9e2a6c Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-manager.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel-390.png new file mode 100644 index 0000000..d89d661 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel.png new file mode 100644 index 0000000..cd9ea5b Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/composed-property-panel.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-1440.png new file mode 100644 index 0000000..5f45607 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-390.png new file mode 100644 index 0000000..36e8300 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-0-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-1440.png new file mode 100644 index 0000000..f3dd8c3 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-390.png new file mode 100644 index 0000000..701ea9e Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-1-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-1440.png new file mode 100644 index 0000000..29330b6 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-390.png new file mode 100644 index 0000000..dfa3b52 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-2-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-1440.png new file mode 100644 index 0000000..fa54908 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-390.png new file mode 100644 index 0000000..9470a10 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-3-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-1440.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-1440.png new file mode 100644 index 0000000..b6dc805 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-1440.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-390.png b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-390.png new file mode 100644 index 0000000..d8075e0 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-dropdown/overlay-4-390.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/result.json b/docs/sw/property-panel-comparison-qa/legacy-dropdown/result.json new file mode 100644 index 0000000..671d5f9 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-dropdown/result.json @@ -0,0 +1,1741 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "Dropdown is one Story directly under Header with original ID, no Dropdown folder", + "status": "PASS" + }, + { + "name": "menu correction keeps all 24 IDs; only composed Story name/title change", + "status": "FAIL" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "FAIL" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "FAIL" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--layer-detail-input", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--additional-hover", + "status": "PASS" + }, + { + "name": "render sw-header--property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--dynamic-controls", + "status": "PASS" + }, + { + "name": "render sw-header--colorize", + "status": "PASS" + }, + { + "name": "render sw-header--composition", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "render sw-header--property-shape-slot", + "status": "PASS" + }, + { + "name": "render sw-header--property-fields", + "status": "PASS" + }, + { + "name": "Dropdown page contains the Composed Controls group", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 364.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 644.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 406.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 588.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 447.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 639.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 490.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 490.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 331.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 611.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 331.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 513.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 372.53125, + "w": 473.1875, + "h": 192, + "right": 474.234375, + "bottom": 564.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 326.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 606.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 326.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 508.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 386.40625, + "y": 325.890625, + "w": 473.1875, + "h": 192, + "right": 859.59375, + "bottom": 517.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 328.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 608.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 328.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 510.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 468, + "y": 327.5, + "w": 473.1875, + "h": 192, + "right": 941.1875, + "bottom": 519.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "selected layer retains original row Hover background", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "selected line retains original row Hover and preview", + "status": "PASS" + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows a single Dropdown link directly under Header, no Composed Controls submenu", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "menuCorrectionBaseCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/property-panel-comparison-qa/legacy-dropdown/story-inventory.json b/docs/sw/property-panel-comparison-qa/legacy-dropdown/story-inventory.json new file mode 100644 index 0000000..486eeca --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-dropdown/story-inventory.json @@ -0,0 +1,774 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-1920.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-1920.png new file mode 100644 index 0000000..8ef2f19 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-1920.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-right-end.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-right-end.png new file mode 100644 index 0000000..7580283 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/A-bar-right-end.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-active.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-active.png new file mode 100644 index 0000000..f2fd71a Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-active.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-default.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-default.png new file mode 100644 index 0000000..4773845 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-default.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-hover.png new file mode 100644 index 0000000..e02e8a8 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/B-tool-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-color-open-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-color-open-hover.png new file mode 100644 index 0000000..c35af33 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-color-open-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-dimension-style-open-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-dimension-style-open-hover.png new file mode 100644 index 0000000..c3ff8da Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-dimension-style-open-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-layer-open-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-layer-open-hover.png new file mode 100644 index 0000000..0a3cc83 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-layer-open-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-line-style-open-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-line-style-open-hover.png new file mode 100644 index 0000000..c62eff1 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-line-style-open-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-text-style-open-hover.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-text-style-open-hover.png new file mode 100644 index 0000000..c3ff8da Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/C-text-style-open-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-initial.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-initial.png new file mode 100644 index 0000000..42c0c13 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-initial.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-keyboard.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-keyboard.png new file mode 100644 index 0000000..2c3eaf5 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-keyboard.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-max.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-max.png new file mode 100644 index 0000000..440e16a Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-max.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-min.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-min.png new file mode 100644 index 0000000..c60c8fb Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-gauge-min.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-panel-circle.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-panel-circle.png new file mode 100644 index 0000000..1e3493c Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/E-panel-circle.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-all.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-all.png new file mode 100644 index 0000000..0f12c20 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-all.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-circle.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-circle.png new file mode 100644 index 0000000..547bc13 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-circle.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-expanded.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-expanded.png new file mode 100644 index 0000000..209ca51 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-expanded.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-none.png b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-none.png new file mode 100644 index 0000000..1c7a77e Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-followup-four/F-property-panel-none.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-followup-four/result.json b/docs/sw/property-panel-comparison-qa/legacy-followup-four/result.json new file mode 100644 index 0000000..00e2b77 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-followup-four/result.json @@ -0,0 +1,1186 @@ +{ + "checks": [ + { + "name": "A1 bar ends after last field (padding 6 + border 1)", + "status": "PASS", + "data": { + "left": 377, + "right": 906.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 899.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 4 + } + }, + { + "name": "A2 height 28 / header 49 / radius & border kept", + "status": "PASS", + "data": { + "left": 377, + "right": 906.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 899.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 4 + } + }, + { + "name": "A3 background and bottom line end together; nothing brown beyond", + "status": "PASS", + "data": { + "inBg": [ + 38, + 30, + 19 + ], + "outBg": [ + 245, + 240, + 229 + ], + "inLine": [ + 8, + 37, + 28 + ], + "outLine": [ + 245, + 240, + 229 + ] + } + }, + { + "name": "A4 bar grows with added fields, none clipped", + "status": "PASS", + "data": { + "left": 377, + "right": 1546.046875, + "width": 1169.046875, + "height": 28, + "lastFieldRight": 1539.046875, + "scrollW": 1167, + "clientW": 1167, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 10 + } + }, + { + "name": "A5 longer than space: capped to header edge, scroll reaches last field", + "status": "PASS", + "data": { + "left": 377, + "right": 1920, + "width": 1543, + "height": 28, + "lastFieldRight": 3030.921875, + "scrollW": 2659, + "clientW": 1541, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 24, + "lastVisible": true + } + }, + { + "name": "A6 bar shrinks back for a 1-field object", + "status": "PASS", + "data": { + "left": 377, + "right": 534.984375, + "width": 157.984375, + "height": 28, + "lastFieldRight": 527.984375, + "scrollW": 156, + "clientW": 156, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 1 + } + }, + { + "name": "A7 width 1440: bar within header, height 28, no page scroll", + "status": "PASS", + "data": { + "left": 377, + "right": 906.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 899.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1440, + "fieldCount": 4, + "overflowX": false + } + }, + { + "name": "A7 width 1080: bar within header, height 28, no page scroll", + "status": "PASS", + "data": { + "left": 203, + "right": 732.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 725.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1080, + "fieldCount": 4, + "overflowX": false + } + }, + { + "name": "A7 width 768: bar within header, height 28, no page scroll", + "status": "PASS", + "data": { + "left": 306, + "right": 768, + "width": 462, + "height": 28, + "lastFieldRight": 828.671875, + "scrollW": 528, + "clientW": 460, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 768, + "fieldCount": 4, + "overflowX": false + } + }, + { + "name": "B1 no CSS border/outline/background on tool button", + "status": "PASS", + "data": { + "border": "0px rgb(0, 0, 0)", + "outline": "none", + "bg": "rgba(0, 0, 0, 0)", + "w": 29, + "h": 27.125, + "imgs": [ + { + "cls": "hm-sw-property__tool-default", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + }, + { + "cls": "hm-sw-property__tool-hover", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + } + ] + } + }, + { + "name": "B2 images 29 x 27.13 equal the button", + "status": "PASS", + "data": [ + { + "cls": "hm-sw-property__tool-default", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + }, + { + "cls": "hm-sw-property__tool-hover", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + } + ] + }, + { + "name": "B3 no white frame pixels (default/hover/active)", + "status": "PASS", + "data": { + "def": 0, + "hov": 0, + "act": 0 + } + }, + { + "name": "B4 active toggles (aria-pressed)", + "status": "PASS", + "data": { + "pressed": "true" + } + }, + { + "name": "C layer: open+hover == open idle", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C layer: hover restored after close", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "D layer: inner row hover kept / detail hover kept", + "status": "PASS", + "data": { + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C color: open+hover == open idle", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C color: hover restored after close", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "D color: inner row hover kept / detail hover kept", + "status": "PASS", + "data": { + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C text-style: open+hover == open idle", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C text-style: hover restored after close", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "D text-style: inner row hover kept / detail hover kept", + "status": "PASS", + "data": { + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C dimension-style: open+hover == open idle", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C dimension-style: hover restored after close", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "D dimension-style: inner row hover kept / detail hover kept", + "status": "PASS", + "data": { + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C line-style: open+hover == open idle", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "C line-style: hover restored after close", + "status": "PASS", + "data": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "D line-style: inner row hover kept / detail hover kept", + "status": "PASS", + "data": { + "rowChanged": true, + "detailChanged": true + } + }, + { + "name": "E1 initial 0.25: red left of thumb, beige right", + "status": "PASS", + "data": { + "value": "0.25", + "fill": "0.25", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 250, + 63, + 63 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + } + }, + { + "name": "E2 keyboard ArrowRight x40 -> 0.65, fill follows", + "status": "PASS", + "data": { + "value": "0.65", + "fill": "0.65", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 254, + 64, + 64 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + } + }, + { + "name": "E3 commit updates the number input (callback path)", + "status": "PASS", + "data": { + "committed": "0.65" + } + }, + { + "name": "E4 max -> fill 1", + "status": "PASS", + "data": { + "value": "1", + "fill": "1", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 250, + 63, + 63 + ], + "right": [ + 160, + 16, + 16 + ], + "width": 86 + } + }, + { + "name": "E5 min -> fill 0, beige right", + "status": "PASS", + "data": { + "value": "0", + "fill": "0", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 138, + 40, + 40 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + } + }, + { + "name": "E6 value changed elsewhere syncs gauge", + "status": "PASS", + "data": { + "value": "0.5", + "fill": "0.5", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)" + } + }, + { + "name": "F property-panel-none renders", + "status": "PASS", + "data": [ + 314, + 256 + ] + }, + { + "name": "F property-panel-all renders", + "status": "PASS", + "data": [ + 314, + 361 + ] + }, + { + "name": "F property-panel-circle renders", + "status": "PASS", + "data": [ + 314, + 658 + ] + }, + { + "name": "F property-panel-expanded renders", + "status": "PASS", + "data": [ + 314, + 754 + ] + }, + { + "name": "G no page/console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "barDefault": { + "left": 377, + "right": 906.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 899.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 4 + }, + "barGrown": { + "left": 377, + "right": 1546.046875, + "width": 1169.046875, + "height": 28, + "lastFieldRight": 1539.046875, + "scrollW": 1167, + "clientW": 1167, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 10 + }, + "barOverflow": { + "left": 377, + "right": 1920, + "width": 1543, + "height": 28, + "lastFieldRight": 3030.921875, + "scrollW": 2659, + "clientW": 1541, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 24 + }, + "barReplaced": { + "left": 377, + "right": 534.984375, + "width": 157.984375, + "height": 28, + "lastFieldRight": 527.984375, + "scrollW": 156, + "clientW": 156, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1920, + "fieldCount": 1 + }, + "bar1440": { + "left": 377, + "right": 906.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 899.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1440, + "fieldCount": 4 + }, + "bar1080": { + "left": 203, + "right": 732.671875, + "width": 529.671875, + "height": 28, + "lastFieldRight": 725.671875, + "scrollW": 528, + "clientW": 528, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 1080, + "fieldCount": 4 + }, + "bar768": { + "left": 306, + "right": 768, + "width": 462, + "height": 28, + "lastFieldRight": 828.671875, + "scrollW": 528, + "clientW": 460, + "borderBottom": "1px rgb(8, 37, 28)", + "radius": "6px/6px", + "bg": "rgb(39, 31, 19)", + "headerH": 49, + "headerRight": 768, + "fieldCount": 4 + }, + "tool": { + "border": "0px rgb(0, 0, 0)", + "outline": "none", + "bg": "rgba(0, 0, 0, 0)", + "w": 29, + "h": 27.125, + "imgs": [ + { + "cls": "hm-sw-property__tool-default", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + }, + { + "cls": "hm-sw-property__tool-hover", + "w": 29, + "h": 27.125, + "src": "data:image/svg+xml,%3csvg%20width='29'%20height='27.129'%20v" + } + ] + }, + "toolPixels": { + "def": { + "white": 0, + "outer": [ + [ + 2, + 7, + 5 + ], + [ + 2, + 6, + 5 + ], + [ + 17, + 67, + 52 + ], + [ + 17, + 67, + 52 + ] + ] + }, + "hov": { + "white": 0, + "outer": [ + [ + 2, + 7, + 5 + ], + [ + 2, + 6, + 5 + ], + [ + 17, + 67, + 52 + ], + [ + 17, + 67, + 52 + ] + ] + }, + "act": { + "white": 0, + "outer": [ + [ + 2, + 7, + 5 + ], + [ + 2, + 6, + 5 + ], + [ + 17, + 67, + 52 + ], + [ + 17, + 67, + 52 + ] + ] + }, + "pressed": "true" + }, + "dropdown-layer": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + }, + "dropdown-color": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + }, + "dropdown-text-style": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + }, + "dropdown-dimension-style": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "0", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + }, + "dropdown-line-style": { + "closedHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "openIdle": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "openHover": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": "true" + }, + "closedAgain": { + "after": "0", + "color": "rgb(246, 244, 242)", + "expanded": null + }, + "restored": { + "after": "1", + "color": "rgb(255, 198, 0)", + "expanded": null + }, + "rowChanged": true, + "detailChanged": true + }, + "gaugeInitial": { + "value": "0.25", + "fill": "0.25", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 250, + 63, + 63 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + }, + "gaugeKeyboard": { + "value": "0.65", + "fill": "0.65", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 254, + 64, + 64 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + }, + "gaugeCommitted": "0.65", + "gaugeMax": { + "value": "1", + "fill": "1", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 250, + 63, + 63 + ], + "right": [ + 160, + 16, + 16 + ], + "width": 86 + }, + "gaugeMin": { + "value": "0", + "fill": "0", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)", + "left": [ + 138, + 40, + 40 + ], + "right": [ + 199, + 189, + 169 + ], + "width": 86 + }, + "gaugeExternal": { + "value": "0.5", + "fill": "0.5", + "track": "linear-gradient(#aea28b 0 1px, #c3b9a4 1px 2px, #c7bda9 2px 4px, #b7ac96 4px 5px, #ac9e84 5px)" + }, + "property-panel-none": [ + 314, + 256 + ], + "property-panel-all": [ + 314, + 361 + ], + "property-panel-circle": [ + 314, + 658 + ], + "property-panel-expanded": [ + 314, + 754 + ] + } +} \ No newline at end of file diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-close/run-default.png b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-default.png new file mode 100644 index 0000000..cc1eb1d Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-default.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-close/run-hover.png b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-hover.png new file mode 100644 index 0000000..925ce65 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-hover.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-close/run-result.json b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-result.json new file mode 100644 index 0000000..f85c6fa --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-property-close/run-result.json @@ -0,0 +1,81 @@ +{ + "label": "run", + "checks": [ + { + "name": "size 44 x 30, top-right of the panel", + "status": "PASS", + "data": { + "w": 44, + "h": 30, + "right": 1, + "top": 1, + "imgs": [ + [ + "hm-sw-property__close-default", + 44, + 30 + ], + [ + "hm-sw-property__close-hover", + 44, + 30 + ] + ] + } + }, + { + "name": "Default: no canvas-light pixels on the button edge / corner", + "status": "PASS", + "data": { + "bright": 0, + "where": [] + } + }, + { + "name": "Hover: hover asset shown, no canvas-light pixels on the edge / corner", + "status": "PASS", + "data": { + "vis": [ + "hidden", + "visible" + ], + "bright": 0, + "where": [] + } + }, + { + "name": "click closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "legacyToggle → open(true) → open(false)" + } + }, + { + "name": "Escape closes the panel, focus back on 속성창 trigger", + "status": "PASS", + "data": { + "open": false, + "focusTrigger": true, + "log": "rue) → open(false) → legacyToggle → open(true) → open(false)" + } + }, + { + "name": "no console / page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "pixels": { + "def": { + "bright": 0, + "where": [] + }, + "hov": { + "bright": 0, + "where": [] + } + } +} \ No newline at end of file diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-compare.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-compare.png new file mode 100644 index 0000000..fb0a55b Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-compare.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-default.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-default.png new file mode 100644 index 0000000..a0fe15c Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-default.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-hover-scale.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-hover-scale.png new file mode 100644 index 0000000..6293475 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-hover-scale.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-color.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-color.png new file mode 100644 index 0000000..afd082e Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-color.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer-mixed.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer-mixed.png new file mode 100644 index 0000000..128ce34 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer-mixed.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer.png new file mode 100644 index 0000000..a54a187 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-layer.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-line.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-line.png new file mode 100644 index 0000000..ea3b391 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-line.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-scale.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-scale.png new file mode 100644 index 0000000..e49e4cc Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-scale.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-thickness.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-thickness.png new file mode 100644 index 0000000..b0d60e9 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-thickness.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-weight.png b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-weight.png new file mode 100644 index 0000000..861b316 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-on-weight.png differ diff --git a/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-result.json b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-result.json new file mode 100644 index 0000000..fab1478 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/legacy-property-fields/run-result.json @@ -0,0 +1,813 @@ +{ + "label": "run", + "checks": [ + { + "name": "Default layer-mixed: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default layer: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default color: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default line: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default scale: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default link: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default thickness: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default material: 200 x 28, radius 2, no border / surface", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopLeftRadius": "2px" + } + }, + { + "name": "Default weight: compact 28px hug field (pl 6 / pr 4 incl. border), no border", + "status": "PASS", + "data": { + "x": 97, + "y": 499.5, + "w": 39.23, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "paddingLeft": "5px", + "paddingRight": "3px" + } + }, + { + "name": "Default opacity: compact 28px hug field (pl 6 / pr 4 incl. border), no border", + "status": "PASS", + "data": { + "x": 97, + "y": 563.5, + "w": 39.23, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "paddingLeft": "5px", + "paddingRight": "3px" + } + }, + { + "name": "Typography: value #E60403 14px, unit #000 12px", + "status": "PASS", + "data": { + "value": [ + "rgb(230, 4, 3)", + "14px" + ], + "unit": [ + "rgb(0, 0, 0)", + "12px" + ] + } + }, + { + "name": "Hover layer-mixed: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 377.5 + ], + "after": [ + 105, + 377.5 + ] + } + }, + { + "name": "Mouse Leave layer-mixed: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 371.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover layer: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 409.5 + ], + "after": [ + 105, + 409.5 + ] + } + }, + { + "name": "Mouse Leave layer: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover color: rgba(33,29,19,.4) border, 28px kept, value not moved, divider shown", + "status": "PASS", + "data": { + "x": 98, + "y": 436.5, + "w": 114, + "h": 26, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 436.5 + ], + "after": [ + 105, + 436.5 + ], + "borderRightColor": "rgba(33, 29, 19, 0.4)" + } + }, + { + "name": "Mouse Leave color: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover line: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 473.5 + ], + "after": [ + 105, + 473.5 + ] + } + }, + { + "name": "Mouse Leave line: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 467.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover scale: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 532.5 + ], + "after": [ + 105, + 532.5 + ] + } + }, + { + "name": "Mouse Leave scale: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover link: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 596.5 + ], + "after": [ + 105, + 596.5 + ] + } + }, + { + "name": "Mouse Leave link: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover thickness: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 628.5 + ], + "after": [ + 105, + 628.5 + ] + } + }, + { + "name": "Mouse Leave thickness: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover material: rgba(33,29,19,.4) border, 28px kept, value not moved", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "backgroundColor": "rgba(0, 0, 0, 0)", + "before": [ + 105, + 660.5 + ], + "after": [ + 105, + 660.5 + ] + } + }, + { + "name": "Mouse Leave material: back to Default", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "borderTopColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover / Leave weight compact", + "status": "PASS", + "data": { + "hover": "rgba(33, 29, 19, 0.4)", + "leave": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Hover / Leave opacity compact", + "status": "PASS", + "data": { + "hover": "rgba(33, 29, 19, 0.4)", + "leave": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "On(편집) scale: #0F0D0A, border, unit #FFF, focused input with red caret + outline", + "status": "PASS", + "data": { + "x": 97, + "y": 531.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)", + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "unit": "rgb(255, 255, 255)", + "focused": true, + "caret": "rgb(230, 4, 3)", + "shadow": true + } + }, + { + "name": "On(편집) thickness: #0F0D0A, border, unit #FFF, focused input with red caret + outline", + "status": "PASS", + "data": { + "x": 97, + "y": 627.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)", + "borderTopColor": "rgba(33, 29, 19, 0.4)", + "unit": "rgb(255, 255, 255)", + "focused": true, + "caret": "rgb(230, 4, 3)", + "shadow": true + } + }, + { + "name": "Enter: 선축적 2 → validated, 4 decimals committed", + "status": "PASS", + "data": "property(scale, 2.0000)" + }, + { + "name": "Escape: draft cancelled (2.0000 restored, no callback)", + "status": "PASS", + "data": "2.0000" + }, + { + "name": "On(편집) 선가중치 compact: #0F0D0A", + "status": "PASS", + "data": { + "x": 97, + "y": 499.5, + "w": 43.03, + "h": 28, + "backgroundColor": "rgb(15, 13, 10)" + } + }, + { + "name": "Invalid 선가중치 -1 (min 0): restored, no callback", + "status": "PASS", + "data": "0.25" + }, + { + "name": "선가중치 0.5 committed", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5)" + }, + { + "name": "하이퍼링크 focus: no On surface (Figma has no On), editable", + "status": "PASS", + "data": { + "x": 97, + "y": 595.5, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)", + "borderTopColor": "rgba(33, 29, 19, 0.4)" + } + }, + { + "name": "하이퍼링크 commit via host callback", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a)" + }, + { + "name": "재료: read-only, no On", + "status": "PASS", + "data": { + "x": 97, + "y": 659.5, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Layer On: #211D13 field, 234 wide list, right edges meet, starts at field bottom", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 403.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(33, 29, 19)", + "borderTopColor": "rgba(33, 29, 19, 0.4)" + }, + "d": { + "x": 63, + "y": 431.5, + "w": 234, + "h": 250 + } + } + }, + { + "name": "Layer list rows 30px, footer 40px, height = rows*30+40", + "status": "PASS", + "data": { + "rows": 7, + "row": 30, + "footer": 40, + "h": 250 + } + }, + { + "name": "Layer current row marked (0_Layer_Cludmark)", + "status": "PASS", + "data": null + }, + { + "name": "Bulb toggle: callback only, list stays open, row not selected", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true)" + }, + { + "name": "Row select: property(layer, CC-D GNL), closes, field shows value", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL)" + }, + { + "name": "Close keeps the value and focus returns to the field", + "status": "PASS", + "data": null + }, + { + "name": "다양함: text 다양함, no current row in list", + "status": "PASS", + "data": null + }, + { + "name": "Escape closes the layer list; panel stays", + "status": "PASS", + "data": null + }, + { + "name": "Host data: 다양함 → 단일 값 (0_Layer_Cludmark)", + "status": "PASS", + "data": "0_Layer_Cludmark" + }, + { + "name": "External value change shown (CC-D GNL)", + "status": "PASS", + "data": null + }, + { + "name": "Keyboard: ArrowDown opens + focuses list, Escape closes to trigger", + "status": "PASS", + "data": null + }, + { + "name": "Outside click closes", + "status": "PASS", + "data": null + }, + { + "name": "Line style On: #211D13, (ByL) #D4CBBD, 3 columns, right edges meet (or shifted to the 4px screen edge when no room)", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 485.5, + "w": 200, + "h": 28, + "backgroundColor": "rgb(33, 29, 19)" + }, + "d": { + "x": 4, + "y": 513.5, + "w": 471.19, + "h": 190 + }, + "cols": [ + 187.19, + 142, + 142 + ] + } + }, + { + "name": "Line style drop 466 x 190 (type column grows only for wider font names)", + "status": "PASS", + "data": { + "w": 471.19, + "h": 190, + "cols": [ + 187.19, + 142, + 142 + ] + } + }, + { + "name": "Weight column: callback only, stays open", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock)" + }, + { + "name": "Line type select: property(line, CENTER), closes, preview = CENTER pattern (4 segments)", + "status": "PASS", + "data": { + "segs": 4 + } + }, + { + "name": "Figma sample 255,259,0 shown as host text, swatch from host", + "status": "PASS", + "data": null + }, + { + "name": "Color On: dropdown 192 wide, left edges meet, RGB area #211D13 + divider", + "status": "PASS", + "data": { + "f": { + "x": 97, + "y": 435.5, + "w": 200, + "h": 28 + }, + "d": { + "x": 97, + "y": 463.5, + "w": 192, + "h": 158 + }, + "left": { + "x": 98, + "y": 436.5, + "w": 114, + "h": 26, + "backgroundColor": "rgb(33, 29, 19)", + "borderRightColor": "rgba(33, 29, 19, 0.4)" + } + } + }, + { + "name": "Color dropdown height 158 (Figma)", + "status": "PASS", + "data": 158 + }, + { + "name": "ByBlock: callback, required single choice (ByBlock pressed, ByLayer not)", + "status": "PASS", + "data": null + }, + { + "name": "Clicking the pressed mode is a no-op", + "status": "PASS", + "data": null + }, + { + "name": "Chip: property(color, 241,4,4)", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock) → property(line, CENTER) → colorMode(byBlock) → property(color, 241,4,4)" + }, + { + "name": "Out-of-range 255,259,0 rejected (no callback, restored)", + "status": "PASS", + "data": "241,4,4" + }, + { + "name": "Valid RGB committed normalized (1,2,3)", + "status": "PASS", + "data": "property(scale, 2.0000) → property(weight, 0.5) → property(link, http://a) → layer.visible(Sample-Wall, true) → property(layer, CC-D GNL) → lineWeight(w-byblock) → property(line, CENTER) → colorMode(byBlock) → property(color, 241,4,4) → property(color, 1,2,3)" + }, + { + "name": "btn_colorize: host callback, dropdown closes", + "status": "PASS", + "data": null + }, + { + "name": "Field RGB 300,0,0 rejected", + "status": "PASS", + "data": "1,2,3" + }, + { + "name": "Escape #1 cancels draft, dropdown still open", + "status": "PASS", + "data": null + }, + { + "name": "Escape #2 closes the dropdown, panel stays", + "status": "PASS", + "data": null + }, + { + "name": "ReadOnly 두께: no On; ReadOnly 레이어: no dropdown", + "status": "PASS", + "data": { + "x": 97, + "y": 647, + "w": 200, + "h": 28, + "backgroundColor": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "ReadOnly keeps Hover border", + "status": "PASS", + "data": null + }, + { + "name": "Disabled 색상: no dropdown; Disabled 선축적: no hover border", + "status": "PASS", + "data": null + }, + { + "name": "External value / unit props: 선축적 2.5000, 두께 cm", + "status": "PASS", + "data": null + }, + { + "name": "Dynamic rows: added at the end, removed row gone, order kept", + "status": "PASS", + "data": [ + "layer-mixed", + "layer", + "color", + "line", + "weight", + "scale", + "opacity", + "thickness", + "material", + "extra-10" + ] + }, + { + "name": "Without menus: line types from options only (1 column), no crash", + "status": "PASS", + "data": 1 + }, + { + "name": "Pinned Hover specimen uses the same border", + "status": "PASS", + "data": "rgba(33, 29, 19, 0.4)" + }, + { + "name": "4 panel states: 314 x 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "Header-hosted panel: layer list attached; Escape closes list only", + "status": "PASS", + "data": { + "hosted": { + "right": 0, + "top": 0, + "panelOpen": true + }, + "stillOpen": 1 + } + }, + { + "name": "no console / page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-1280-end.png b/docs/sw/property-panel-comparison-qa/verify/compare-1280-end.png new file mode 100644 index 0000000..fca3565 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-1280-end.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-1280-top.png b/docs/sw/property-panel-comparison-qa/verify/compare-1280-top.png new file mode 100644 index 0000000..e6ad54f Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-1280-top.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-1440-end.png b/docs/sw/property-panel-comparison-qa/verify/compare-1440-end.png new file mode 100644 index 0000000..d3d82b0 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-1440-end.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-1440-top.png b/docs/sw/property-panel-comparison-qa/verify/compare-1440-top.png new file mode 100644 index 0000000..0e64c38 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-1440-top.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-390-end.png b/docs/sw/property-panel-comparison-qa/verify/compare-390-end.png new file mode 100644 index 0000000..9fc5f41 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-390-end.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-390-top.png b/docs/sw/property-panel-comparison-qa/verify/compare-390-top.png new file mode 100644 index 0000000..43b1520 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-390-top.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-768-end.png b/docs/sw/property-panel-comparison-qa/verify/compare-768-end.png new file mode 100644 index 0000000..4686f20 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-768-end.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-768-top.png b/docs/sw/property-panel-comparison-qa/verify/compare-768-top.png new file mode 100644 index 0000000..f3f43c6 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-768-top.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/compare-after-interaction.png b/docs/sw/property-panel-comparison-qa/verify/compare-after-interaction.png new file mode 100644 index 0000000..61628a9 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/compare-after-interaction.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/dropdown-all.png b/docs/sw/property-panel-comparison-qa/verify/dropdown-all.png new file mode 100644 index 0000000..3698614 Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/dropdown-all.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/dropdown-expanded.png b/docs/sw/property-panel-comparison-qa/verify/dropdown-expanded.png new file mode 100644 index 0000000..f8edcab Binary files /dev/null and b/docs/sw/property-panel-comparison-qa/verify/dropdown-expanded.png differ diff --git a/docs/sw/property-panel-comparison-qa/verify/result.json b/docs/sw/property-panel-comparison-qa/verify/result.json new file mode 100644 index 0000000..44dcc50 --- /dev/null +++ b/docs/sw/property-panel-comparison-qa/verify/result.json @@ -0,0 +1,1515 @@ +{ + "mode": "verify", + "base": "static", + "browser": "155.0.8059.80", + "checks": [ + { + "name": "inventory: 24 -> 19 SW Stories, 343 -> 338 total, only 5 approved retirements", + "status": "PASS", + "data": { + "before": [ + 343, + 24 + ], + "after": [ + 338, + 19 + ] + } + }, + { + "name": "inventory: retained SW Story IDs, names, titles, tags unchanged", + "status": "PASS", + "data": { + "retained": 19 + } + }, + { + "name": "inventory: compare Story keeps its ID and name", + "status": "PASS" + }, + { + "name": "inventory: Dropdown Story keeps ID / name / title", + "status": "PASS" + }, + { + "name": "390: four states in original order with captions", + "status": "PASS", + "data": [ + [ + "none", + "선택된 객체 없음" + ], + [ + "all", + "전체 객체 선택" + ], + [ + "circle", + "원 1개 선택" + ], + [ + "expanded", + "모든 항목 펼침" + ] + ] + }, + { + "name": "390: original panel sizes 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "390: 2 columns × 2 rows by coordinates", + "status": "PASS", + "data": { + "a": { + "x": 16, + "y": 212.5, + "w": 314, + "h": 322, + "right": 330, + "bottom": 534.5 + }, + "b": { + "x": 354, + "y": 212.5, + "w": 314, + "h": 427, + "right": 668, + "bottom": 639.5 + }, + "c": { + "x": 16, + "y": 663.5, + "w": 314, + "h": 724, + "right": 330, + "bottom": 1387.5 + }, + "d": { + "x": 354, + "y": 663.5, + "w": 314, + "h": 820, + "right": 668, + "bottom": 1483.5 + } + } + }, + { + "name": "390: consistent 24px column and row gaps", + "status": "PASS", + "data": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + } + }, + { + "name": "390: page itself does not scroll (no document overflow)", + "status": "PASS", + "data": { + "scrollW": 390, + "clientW": 390, + "scrollH": 900, + "clientH": 900 + } + }, + { + "name": "390: Inner scroller scrolls vertically to the 754px panel", + "status": "PASS", + "data": { + "x": 16, + "y": 212.5, + "w": 358, + "h": 671.5, + "right": 374, + "bottom": 884, + "scrollW": 652, + "clientW": 358, + "scrollH": 1271, + "clientH": 672 + } + }, + { + "name": "390: bottom of the 754px panel reachable, not clipped", + "status": "PASS", + "data": { + "scrollTop": 599, + "scrollLeft": 294, + "panels": [ + { + "bottom": -64.5, + "right": 36 + }, + { + "bottom": 40.5, + "right": 374 + }, + { + "bottom": 788.5, + "right": 36 + }, + { + "bottom": 884.5, + "right": 374 + } + ], + "sBottom": 884, + "sRight": 374 + } + }, + { + "name": "390: narrow Inner scrolls horizontally, keeping 2 columns", + "status": "PASS", + "data": { + "scrollW": 652, + "clientW": 358, + "end": { + "scrollTop": 599, + "scrollLeft": 294, + "panels": [ + { + "bottom": -64.5, + "right": 36 + }, + { + "bottom": 40.5, + "right": 374 + }, + { + "bottom": 788.5, + "right": 36 + }, + { + "bottom": 884.5, + "right": 374 + } + ], + "sBottom": 884, + "sRight": 374 + } + } + }, + { + "name": "768: four states in original order with captions", + "status": "PASS", + "data": [ + [ + "none", + "선택된 객체 없음" + ], + [ + "all", + "전체 객체 선택" + ], + [ + "circle", + "원 1개 선택" + ], + [ + "expanded", + "모든 항목 펼침" + ] + ] + }, + { + "name": "768: original panel sizes 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "768: 2 columns × 2 rows by coordinates", + "status": "PASS", + "data": { + "a": { + "x": 23.046875, + "y": 199.53125, + "w": 314, + "h": 322, + "right": 337.046875, + "bottom": 521.53125 + }, + "b": { + "x": 361.046875, + "y": 199.53125, + "w": 314, + "h": 427, + "right": 675.046875, + "bottom": 626.53125 + }, + "c": { + "x": 23.046875, + "y": 650.53125, + "w": 314, + "h": 724, + "right": 337.046875, + "bottom": 1374.53125 + }, + "d": { + "x": 361.046875, + "y": 650.53125, + "w": 314, + "h": 820, + "right": 675.046875, + "bottom": 1470.53125 + } + } + }, + { + "name": "768: consistent 24px column and row gaps", + "status": "PASS", + "data": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + } + }, + { + "name": "768: page itself does not scroll (no document overflow)", + "status": "PASS", + "data": { + "scrollW": 768, + "clientW": 768, + "scrollH": 900, + "clientH": 900 + } + }, + { + "name": "768: Inner scroller scrolls vertically to the 754px panel", + "status": "PASS", + "data": { + "x": 23.046875, + "y": 199.53125, + "w": 721.90625, + "h": 677.4375, + "right": 744.953125, + "bottom": 876.96875, + "scrollW": 722, + "clientW": 722, + "scrollH": 1271, + "clientH": 677 + } + }, + { + "name": "768: bottom of the 754px panel reachable, not clipped", + "status": "PASS", + "data": { + "scrollTop": 594, + "scrollLeft": 0, + "panels": [ + { + "bottom": -72.46875, + "right": 337.046875 + }, + { + "bottom": 32.53125, + "right": 675.046875 + }, + { + "bottom": 780.53125, + "right": 337.046875 + }, + { + "bottom": 876.53125, + "right": 675.046875 + } + ], + "sBottom": 876.96875, + "sRight": 744.953125 + } + }, + { + "name": "768: both columns fit without horizontal scroll", + "status": "PASS", + "data": { + "x": 23.046875, + "y": 199.53125, + "w": 721.90625, + "h": 677.4375, + "right": 744.953125, + "bottom": 876.96875, + "scrollW": 722, + "clientW": 722, + "scrollH": 1271, + "clientH": 677 + } + }, + { + "name": "1280: four states in original order with captions", + "status": "PASS", + "data": [ + [ + "none", + "선택된 객체 없음" + ], + [ + "all", + "전체 객체 선택" + ], + [ + "circle", + "원 1개 선택" + ], + [ + "expanded", + "모든 항목 펼침" + ] + ] + }, + { + "name": "1280: original panel sizes 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "1280: 2 columns × 2 rows by coordinates", + "status": "PASS", + "data": { + "a": { + "x": 38.40625, + "y": 214.890625, + "w": 314, + "h": 322, + "right": 352.40625, + "bottom": 536.890625 + }, + "b": { + "x": 376.40625, + "y": 214.890625, + "w": 314, + "h": 427, + "right": 690.40625, + "bottom": 641.890625 + }, + "c": { + "x": 38.40625, + "y": 665.890625, + "w": 314, + "h": 724, + "right": 352.40625, + "bottom": 1389.890625 + }, + "d": { + "x": 376.40625, + "y": 665.890625, + "w": 314, + "h": 820, + "right": 690.40625, + "bottom": 1485.890625 + } + } + }, + { + "name": "1280: consistent 24px column and row gaps", + "status": "PASS", + "data": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + } + }, + { + "name": "1280: page itself does not scroll (no document overflow)", + "status": "PASS", + "data": { + "scrollW": 1280, + "clientW": 1280, + "scrollH": 900, + "clientH": 900 + } + }, + { + "name": "1280: Inner scroller scrolls vertically to the 754px panel", + "status": "PASS", + "data": { + "x": 38.40625, + "y": 214.890625, + "w": 1203.1875, + "h": 646.71875, + "right": 1241.59375, + "bottom": 861.609375, + "scrollW": 1203, + "clientW": 1203, + "scrollH": 1271, + "clientH": 647 + } + }, + { + "name": "1280: bottom of the 754px panel reachable, not clipped", + "status": "PASS", + "data": { + "scrollTop": 624, + "scrollLeft": 0, + "panels": [ + { + "bottom": -87.109375, + "right": 352.40625 + }, + { + "bottom": 17.890625, + "right": 690.40625 + }, + { + "bottom": 765.890625, + "right": 352.40625 + }, + { + "bottom": 861.890625, + "right": 690.40625 + } + ], + "sBottom": 861.609375, + "sRight": 1241.59375 + } + }, + { + "name": "1280: both columns fit without horizontal scroll", + "status": "PASS", + "data": { + "x": 38.40625, + "y": 214.890625, + "w": 1203.1875, + "h": 646.71875, + "right": 1241.59375, + "bottom": 861.609375, + "scrollW": 1203, + "clientW": 1203, + "scrollH": 1271, + "clientH": 647 + } + }, + { + "name": "1440: four states in original order with captions", + "status": "PASS", + "data": [ + [ + "none", + "선택된 객체 없음" + ], + [ + "all", + "전체 객체 선택" + ], + [ + "circle", + "원 1개 선택" + ], + [ + "expanded", + "모든 항목 펼침" + ] + ] + }, + { + "name": "1440: original panel sizes 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "name": "1440: 2 columns × 2 rows by coordinates", + "status": "PASS", + "data": { + "a": { + "x": 120, + "y": 216.5, + "w": 314, + "h": 322, + "right": 434, + "bottom": 538.5 + }, + "b": { + "x": 458, + "y": 216.5, + "w": 314, + "h": 427, + "right": 772, + "bottom": 643.5 + }, + "c": { + "x": 120, + "y": 667.5, + "w": 314, + "h": 724, + "right": 434, + "bottom": 1391.5 + }, + "d": { + "x": 458, + "y": 667.5, + "w": 314, + "h": 820, + "right": 772, + "bottom": 1487.5 + } + } + }, + { + "name": "1440: consistent 24px column and row gaps", + "status": "PASS", + "data": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + } + }, + { + "name": "1440: page itself does not scroll (no document overflow)", + "status": "PASS", + "data": { + "scrollW": 1440, + "clientW": 1440, + "scrollH": 900, + "clientH": 900 + } + }, + { + "name": "1440: Inner scroller scrolls vertically to the 754px panel", + "status": "PASS", + "data": { + "x": 120, + "y": 216.5, + "w": 1200, + "h": 643.5, + "right": 1320, + "bottom": 860, + "scrollW": 1200, + "clientW": 1200, + "scrollH": 1271, + "clientH": 644 + } + }, + { + "name": "1440: bottom of the 754px panel reachable, not clipped", + "status": "PASS", + "data": { + "scrollTop": 627, + "scrollLeft": 0, + "panels": [ + { + "bottom": -88.5, + "right": 434 + }, + { + "bottom": 16.5, + "right": 772 + }, + { + "bottom": 764.5, + "right": 434 + }, + { + "bottom": 860.5, + "right": 772 + } + ], + "sBottom": 860, + "sRight": 1320 + } + }, + { + "name": "1440: both columns fit without horizontal scroll", + "status": "PASS", + "data": { + "x": 120, + "y": 216.5, + "w": 1200, + "h": 643.5, + "right": 1320, + "bottom": 860, + "scrollW": 1200, + "clientW": 1200, + "scrollH": 1271, + "clientH": 644 + } + }, + { + "name": "Input Enter commits via callback; only that panel changes", + "status": "PASS", + "data": { + "circle": "5.5", + "expanded": "4.0526", + "log": "circle: property(radius, 5.5)" + } + }, + { + "name": "Input Escape cancels the edit", + "status": "PASS", + "data": "5.5" + }, + { + "name": "Focus stays inside the edited panel after Escape", + "status": "PASS" + }, + { + "name": "Tab moves focus within the page (no trap / loss to body)", + "status": "PASS" + }, + { + "name": "Dropdown all: opens, has items, fully inside the viewport", + "status": "PASS", + "data": { + "x": 521, + "y": 353.5, + "w": 234, + "h": 250, + "bottom": 603.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + } + }, + { + "name": "Dropdown all: Escape closes and returns focus to its field", + "status": "PASS" + }, + { + "name": "Dropdown expanded: opens, has items, fully inside the viewport", + "status": "PASS", + "data": { + "x": 521, + "y": 526.5, + "w": 234, + "h": 250, + "bottom": 776.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + } + }, + { + "name": "Dropdown follows the Inner scroller (stays attached to its field)", + "status": "PASS", + "data": { + "moved": 120, + "before": { + "x": 521, + "y": 526.5, + "w": 234, + "h": 250, + "bottom": 776.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + }, + "after": { + "dTop": 406.5, + "dBottom": 656.5, + "fTop": 657.5, + "fBottom": 683.5 + } + } + }, + { + "name": "Dropdown expanded: Escape closes and returns focus to its field", + "status": "PASS" + }, + { + "name": "Dropdown selection commits via callback in its own panel only", + "status": "PASS", + "data": "circle: property(radius, 5.5) → all: property(layer, CC-D GNL)" + }, + { + "name": "Tool toggle in one panel does not affect the others", + "status": "PASS" + }, + { + "name": "Group expand is per panel and collapses back to 256", + "status": "PASS", + "data": { + "h0": 256, + "h1": 352, + "h2": 256, + "allH": 361 + } + }, + { + "name": "Close button calls onClose of that panel", + "status": "PASS", + "data": "circle: property(radius, 5.5) → all: property(layer, CC-D GNL) → circle: close" + }, + { + "name": "Overview: Header 49px and Stage render", + "status": "PASS" + }, + { + "name": "Dropdown Story renders composed controls", + "status": "PASS" + }, + { + "name": "Window Move Motion Story renders", + "status": "PASS" + }, + { + "name": "Property Panel (Header-connected) still opens; Escape closes", + "status": "PASS", + "data": { + "opened": 1 + } + }, + { + "name": "render property-shape-slot", + "status": "PASS" + }, + { + "name": "render property-fields", + "status": "PASS" + }, + { + "name": "render property-bar", + "status": "PASS" + }, + { + "name": "render layer-detail-input", + "status": "PASS" + }, + { + "name": "render k-guide", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "inventory": { + "total": 338, + "sw": 19, + "ids": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--layer-detail-input", + "Layer Detail · Input" + ], + [ + "sw-header--property-panel", + "Property Panel" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--additional-hover", + "Additional Hover" + ], + [ + "sw-header--property-bar", + "Property Bar" + ], + [ + "sw-header--dynamic-controls", + "Dynamic Controls" + ], + [ + "sw-header--colorize", + "Colorize" + ], + [ + "sw-header--composition", + "Composition (Visibility · Order)" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ], + [ + "sw-header--property-shape-slot", + "Property Panel · 형상 Slot" + ], + [ + "sw-header--property-fields", + "Property Panel · 필드 13개" + ] + ] + }, + "layout390": { + "cells": [ + { + "id": "none", + "cell": { + "x": 16, + "y": 212.5, + "w": 314, + "h": 322, + "right": 330, + "bottom": 534.5 + }, + "panel": { + "x": 16, + "y": 278.5, + "w": 314, + "h": 256, + "right": 330, + "bottom": 534.5 + }, + "caption": "선택된 객체 없음" + }, + { + "id": "all", + "cell": { + "x": 354, + "y": 212.5, + "w": 314, + "h": 427, + "right": 668, + "bottom": 639.5 + }, + "panel": { + "x": 354, + "y": 278.5, + "w": 314, + "h": 361, + "right": 668, + "bottom": 639.5 + }, + "caption": "전체 객체 선택" + }, + { + "id": "circle", + "cell": { + "x": 16, + "y": 663.5, + "w": 314, + "h": 724, + "right": 330, + "bottom": 1387.5 + }, + "panel": { + "x": 16, + "y": 729.5, + "w": 314, + "h": 658, + "right": 330, + "bottom": 1387.5 + }, + "caption": "원 1개 선택" + }, + { + "id": "expanded", + "cell": { + "x": 354, + "y": 663.5, + "w": 314, + "h": 820, + "right": 668, + "bottom": 1483.5 + }, + "panel": { + "x": 354, + "y": 729.5, + "w": 314, + "h": 754, + "right": 668, + "bottom": 1483.5 + }, + "caption": "모든 항목 펼침" + } + ], + "scroller": { + "x": 16, + "y": 212.5, + "w": 358, + "h": 671.5, + "right": 374, + "bottom": 884, + "scrollW": 652, + "clientW": 358, + "scrollH": 1271, + "clientH": 672 + }, + "doc": { + "scrollW": 390, + "clientW": 390, + "scrollH": 900, + "clientH": 900 + } + }, + "gaps390": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + }, + "end390": { + "scrollTop": 599, + "scrollLeft": 294, + "panels": [ + { + "bottom": -64.5, + "right": 36 + }, + { + "bottom": 40.5, + "right": 374 + }, + { + "bottom": 788.5, + "right": 36 + }, + { + "bottom": 884.5, + "right": 374 + } + ], + "sBottom": 884, + "sRight": 374 + }, + "layout768": { + "cells": [ + { + "id": "none", + "cell": { + "x": 23.046875, + "y": 199.53125, + "w": 314, + "h": 322, + "right": 337.046875, + "bottom": 521.53125 + }, + "panel": { + "x": 23.046875, + "y": 265.53125, + "w": 314, + "h": 256, + "right": 337.046875, + "bottom": 521.53125 + }, + "caption": "선택된 객체 없음" + }, + { + "id": "all", + "cell": { + "x": 361.046875, + "y": 199.53125, + "w": 314, + "h": 427, + "right": 675.046875, + "bottom": 626.53125 + }, + "panel": { + "x": 361.046875, + "y": 265.53125, + "w": 314, + "h": 361, + "right": 675.046875, + "bottom": 626.53125 + }, + "caption": "전체 객체 선택" + }, + { + "id": "circle", + "cell": { + "x": 23.046875, + "y": 650.53125, + "w": 314, + "h": 724, + "right": 337.046875, + "bottom": 1374.53125 + }, + "panel": { + "x": 23.046875, + "y": 716.53125, + "w": 314, + "h": 658, + "right": 337.046875, + "bottom": 1374.53125 + }, + "caption": "원 1개 선택" + }, + { + "id": "expanded", + "cell": { + "x": 361.046875, + "y": 650.53125, + "w": 314, + "h": 820, + "right": 675.046875, + "bottom": 1470.53125 + }, + "panel": { + "x": 361.046875, + "y": 716.53125, + "w": 314, + "h": 754, + "right": 675.046875, + "bottom": 1470.53125 + }, + "caption": "모든 항목 펼침" + } + ], + "scroller": { + "x": 23.046875, + "y": 199.53125, + "w": 721.90625, + "h": 677.4375, + "right": 744.953125, + "bottom": 876.96875, + "scrollW": 722, + "clientW": 722, + "scrollH": 1271, + "clientH": 677 + }, + "doc": { + "scrollW": 768, + "clientW": 768, + "scrollH": 900, + "clientH": 900 + } + }, + "gaps768": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + }, + "end768": { + "scrollTop": 594, + "scrollLeft": 0, + "panels": [ + { + "bottom": -72.46875, + "right": 337.046875 + }, + { + "bottom": 32.53125, + "right": 675.046875 + }, + { + "bottom": 780.53125, + "right": 337.046875 + }, + { + "bottom": 876.53125, + "right": 675.046875 + } + ], + "sBottom": 876.96875, + "sRight": 744.953125 + }, + "layout1280": { + "cells": [ + { + "id": "none", + "cell": { + "x": 38.40625, + "y": 214.890625, + "w": 314, + "h": 322, + "right": 352.40625, + "bottom": 536.890625 + }, + "panel": { + "x": 38.40625, + "y": 280.890625, + "w": 314, + "h": 256, + "right": 352.40625, + "bottom": 536.890625 + }, + "caption": "선택된 객체 없음" + }, + { + "id": "all", + "cell": { + "x": 376.40625, + "y": 214.890625, + "w": 314, + "h": 427, + "right": 690.40625, + "bottom": 641.890625 + }, + "panel": { + "x": 376.40625, + "y": 280.890625, + "w": 314, + "h": 361, + "right": 690.40625, + "bottom": 641.890625 + }, + "caption": "전체 객체 선택" + }, + { + "id": "circle", + "cell": { + "x": 38.40625, + "y": 665.890625, + "w": 314, + "h": 724, + "right": 352.40625, + "bottom": 1389.890625 + }, + "panel": { + "x": 38.40625, + "y": 731.890625, + "w": 314, + "h": 658, + "right": 352.40625, + "bottom": 1389.890625 + }, + "caption": "원 1개 선택" + }, + { + "id": "expanded", + "cell": { + "x": 376.40625, + "y": 665.890625, + "w": 314, + "h": 820, + "right": 690.40625, + "bottom": 1485.890625 + }, + "panel": { + "x": 376.40625, + "y": 731.890625, + "w": 314, + "h": 754, + "right": 690.40625, + "bottom": 1485.890625 + }, + "caption": "모든 항목 펼침" + } + ], + "scroller": { + "x": 38.40625, + "y": 214.890625, + "w": 1203.1875, + "h": 646.71875, + "right": 1241.59375, + "bottom": 861.609375, + "scrollW": 1203, + "clientW": 1203, + "scrollH": 1271, + "clientH": 647 + }, + "doc": { + "scrollW": 1280, + "clientW": 1280, + "scrollH": 900, + "clientH": 900 + } + }, + "gaps1280": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + }, + "end1280": { + "scrollTop": 624, + "scrollLeft": 0, + "panels": [ + { + "bottom": -87.109375, + "right": 352.40625 + }, + { + "bottom": 17.890625, + "right": 690.40625 + }, + { + "bottom": 765.890625, + "right": 352.40625 + }, + { + "bottom": 861.890625, + "right": 690.40625 + } + ], + "sBottom": 861.609375, + "sRight": 1241.59375 + }, + "layout1440": { + "cells": [ + { + "id": "none", + "cell": { + "x": 120, + "y": 216.5, + "w": 314, + "h": 322, + "right": 434, + "bottom": 538.5 + }, + "panel": { + "x": 120, + "y": 282.5, + "w": 314, + "h": 256, + "right": 434, + "bottom": 538.5 + }, + "caption": "선택된 객체 없음" + }, + { + "id": "all", + "cell": { + "x": 458, + "y": 216.5, + "w": 314, + "h": 427, + "right": 772, + "bottom": 643.5 + }, + "panel": { + "x": 458, + "y": 282.5, + "w": 314, + "h": 361, + "right": 772, + "bottom": 643.5 + }, + "caption": "전체 객체 선택" + }, + { + "id": "circle", + "cell": { + "x": 120, + "y": 667.5, + "w": 314, + "h": 724, + "right": 434, + "bottom": 1391.5 + }, + "panel": { + "x": 120, + "y": 733.5, + "w": 314, + "h": 658, + "right": 434, + "bottom": 1391.5 + }, + "caption": "원 1개 선택" + }, + { + "id": "expanded", + "cell": { + "x": 458, + "y": 667.5, + "w": 314, + "h": 820, + "right": 772, + "bottom": 1487.5 + }, + "panel": { + "x": 458, + "y": 733.5, + "w": 314, + "h": 754, + "right": 772, + "bottom": 1487.5 + }, + "caption": "모든 항목 펼침" + } + ], + "scroller": { + "x": 120, + "y": 216.5, + "w": 1200, + "h": 643.5, + "right": 1320, + "bottom": 860, + "scrollW": 1200, + "clientW": 1200, + "scrollH": 1271, + "clientH": 644 + }, + "doc": { + "scrollW": 1440, + "clientW": 1440, + "scrollH": 900, + "clientH": 900 + } + }, + "gaps1440": { + "colGap": 24, + "colGap2": 24, + "rowGap": 24 + }, + "end1440": { + "scrollTop": 627, + "scrollLeft": 0, + "panels": [ + { + "bottom": -88.5, + "right": 434 + }, + { + "bottom": 16.5, + "right": 772 + }, + { + "bottom": 764.5, + "right": 434 + }, + { + "bottom": 860.5, + "right": 772 + } + ], + "sBottom": 860, + "sRight": 1320 + }, + "drop-all": { + "x": 521, + "y": 353.5, + "w": 234, + "h": 250, + "bottom": 603.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + }, + "drop-expanded": { + "x": 521, + "y": 526.5, + "w": 234, + "h": 250, + "bottom": 776.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + }, + "dropScroll": { + "moved": 120, + "before": { + "x": 521, + "y": 526.5, + "w": 234, + "h": 250, + "bottom": 776.5, + "right": 755, + "vw": 1440, + "vh": 900, + "items": 36 + }, + "after": { + "dTop": 406.5, + "dBottom": 656.5, + "fTop": 657.5, + "fBottom": 683.5 + } + } + } +} diff --git a/docs/sw/storybook-cleanup-stage1-qa/after-index.json b/docs/sw/storybook-cleanup-stage1-qa/after-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/after-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-cleanup-stage1-qa/before-index.json b/docs/sw/storybook-cleanup-stage1-qa/before-index.json new file mode 100644 index 0000000..7a0d5c7 --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/before-index.json @@ -0,0 +1,498 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--default", + "name": "Default", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Default" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--controls", + "name": "Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Controls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive", + "name": "Responsive", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Responsive" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-stroke", + "name": "Text Stroke", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextStroke" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-data", + "name": "Dynamic Data", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicData" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-cleanup-stage1-qa/preservation/preservation-result.json b/docs/sw/storybook-cleanup-stage1-qa/preservation/preservation-result.json new file mode 100644 index 0000000..fcc8479 --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/preservation/preservation-result.json @@ -0,0 +1,114 @@ +{ + "mode": "preservation", + "browser": "155.0.8059.80", + "checks": [ + { + "name": "required responsive width 390", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 768", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1280", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1440", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "preserve property panel none", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 256 + } + }, + { + "name": "preserve property panel all", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 361 + } + }, + { + "name": "preserve property panel circle", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 658 + } + }, + { + "name": "preserve property panel expanded", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 754 + } + }, + { + "name": "preserve window motion 1400ms", + "status": "PASS" + }, + { + "name": "window motion leave clears animations", + "status": "PASS" + }, + { + "name": "preserve K guide animation", + "status": "PASS" + }, + { + "name": "K guide leave closes", + "status": "PASS" + }, + { + "name": "preserve Colorize size", + "status": "PASS" + }, + { + "name": "preserve editable Input", + "status": "PASS" + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": {}, + "status": "PASS" +} \ No newline at end of file diff --git a/docs/sw/storybook-cleanup-stage1-qa/result.json b/docs/sw/storybook-cleanup-stage1-qa/result.json new file mode 100644 index 0000000..e8e8094 --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/result.json @@ -0,0 +1,678 @@ +{ + "checks": [ + { + "name": "33 -> 28; precisely the five requested IDs removed", + "status": "PASS", + "data": [ + { + "name": "Default", + "id": "sw-header--default" + }, + { + "name": "Controls", + "id": "sw-header--controls" + }, + { + "name": "Responsive", + "id": "sw-header--responsive" + }, + { + "name": "Text Stroke", + "id": "sw-header--text-stroke" + }, + { + "name": "Dynamic Data", + "id": "sw-header--dynamic-data" + } + ] + }, + { + "name": "all retained names, IDs, ordering and tags unchanged", + "status": "PASS" + }, + { + "name": "every retained declaration unchanged except WindowMoveMotion", + "status": "PASS", + "data": [] + }, + { + "name": "retained step section is byte-identical after newline normalization", + "status": "PASS" + }, + { + "name": "production implementation, CSS, SVG/assets and Storybook configuration unchanged", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--layer-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--color-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--line-style-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--text-dimension-style-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--layer-detail-input", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-variants", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--additional-hover", + "status": "PASS" + }, + { + "name": "render sw-header--property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--dynamic-controls", + "status": "PASS" + }, + { + "name": "render sw-header--colorize", + "status": "PASS" + }, + { + "name": "render sw-header--composition", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-none", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-all", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-circle", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-expanded", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "render sw-header--property-shape-slot", + "status": "PASS" + }, + { + "name": "render sw-header--property-fields", + "status": "PASS" + }, + { + "name": "only the requested section remains", + "status": "PASS", + "data": [ + "단계별 진행 (3배 확대)" + ] + }, + { + "name": "removed live demos, frame specimens and callback logs absent", + "status": "PASS" + }, + { + "name": "nine original steps and 3x magnification preserved", + "status": "PASS", + "data": [ + { + "time": "rest", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [] + }, + { + "time": "0", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 0, + "duration": 1400 + }, + { + "state": "paused", + "time": 0, + "duration": 1400 + }, + { + "state": "paused", + "time": 0, + "duration": 1400 + } + ] + }, + { + "time": "204.8780487804878", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + }, + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + }, + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + } + ] + }, + { + "time": "409.7560975609756", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + }, + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + }, + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + } + ] + }, + { + "time": "443.9024390243902", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + }, + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + }, + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + } + ] + }, + { + "time": "682.9268292682926", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + }, + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + }, + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + } + ] + }, + { + "time": "887.8048780487804", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + }, + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + }, + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + } + ] + }, + { + "time": "1365.8536585365853", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + }, + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + }, + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + } + ] + }, + { + "time": "1400", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 1400, + "duration": 1400 + }, + { + "state": "paused", + "time": 1400, + "duration": 1400 + }, + { + "state": "paused", + "time": 1400, + "duration": 1400 + } + ] + } + ] + }, + { + "name": "rest is static; timed specimens pause three 1400ms animations at their original positions", + "status": "PASS" + }, + { + "name": "live Hover motion advances with original 1400ms infinite cycle", + "status": "PASS", + "data": [ + { + "before": 0, + "after": 199.92699997154995, + "state": "running", + "duration": 1400, + "iterations": "infinite" + }, + { + "before": 0, + "after": 199.92699997154995, + "state": "running", + "duration": 1400, + "iterations": "infinite" + }, + { + "before": 0, + "after": 199.92699997154995, + "state": "running", + "duration": 1400, + "iterations": "infinite" + } + ] + }, + { + "name": "pointer held pauses motion and hides tooltip", + "status": "PASS" + }, + { + "name": "Hover leave resets live specimen", + "status": "PASS" + }, + { + "name": "Responsive More still switches the representative field and opens its dropdown", + "status": "PASS" + }, + { + "name": "Dynamic Controls removes a configured field", + "status": "PASS" + }, + { + "name": "Dynamic Controls restores a configured field", + "status": "PASS" + }, + { + "name": "host-owned document list can still grow dynamically", + "status": "PASS" + }, + { + "name": "retained fluid header layout at 390px", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0 + } + }, + { + "name": "retained fluid header layout at 768px", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0 + } + }, + { + "name": "retained fluid header layout at 1280px", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0 + } + }, + { + "name": "retained fluid header layout at 1440px", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "baseCommit": "92830fe11db7f37eb6a45e8bbc6a5038ec579649", + "deleted": [ + { + "name": "Default", + "id": "sw-header--default" + }, + { + "name": "Controls", + "id": "sw-header--controls" + }, + { + "name": "Responsive", + "id": "sw-header--responsive" + }, + { + "name": "Text Stroke", + "id": "sw-header--text-stroke" + }, + { + "name": "Dynamic Data", + "id": "sw-header--dynamic-data" + } + ], + "browser": "155.0.8059.80", + "stages": [ + { + "time": "rest", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [] + }, + { + "time": "0", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 0, + "duration": 1400 + }, + { + "state": "paused", + "time": 0, + "duration": 1400 + }, + { + "state": "paused", + "time": 0, + "duration": 1400 + } + ] + }, + { + "time": "204.8780487804878", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + }, + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + }, + { + "state": "paused", + "time": 204.8780487804878, + "duration": 1400 + } + ] + }, + { + "time": "409.7560975609756", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + }, + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + }, + { + "state": "paused", + "time": 409.7560975609756, + "duration": 1400 + } + ] + }, + { + "time": "443.9024390243902", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + }, + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + }, + { + "state": "paused", + "time": 443.9024390243902, + "duration": 1400 + } + ] + }, + { + "time": "682.9268292682926", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + }, + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + }, + { + "state": "paused", + "time": 682.9268292682926, + "duration": 1400 + } + ] + }, + { + "time": "887.8048780487804", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + }, + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + }, + { + "state": "paused", + "time": 887.8048780487804, + "duration": 1400 + } + ] + }, + { + "time": "1365.8536585365853", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + }, + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + }, + { + "state": "paused", + "time": 1365.8536585365853, + "duration": 1400 + } + ] + }, + { + "time": "1400", + "zoom": "3", + "width": 456, + "height": 144, + "animations": [ + { + "state": "paused", + "time": 1400, + "duration": 1400 + }, + { + "state": "paused", + "time": 1400, + "duration": 1400 + }, + { + "state": "paused", + "time": 1400, + "duration": 1400 + } + ] + } + ], + "status": "PASS" +} diff --git a/docs/sw/storybook-cleanup-stage1-qa/storybook-build.txt b/docs/sw/storybook-cleanup-stage1-qa/storybook-build.txt new file mode 100644 index 0000000..fae8f7c --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/storybook-build.txt @@ -0,0 +1,418 @@ + +> hm-design-system-poc@0.1.0 prebuild-storybook +> npm run check:theme-defaults && npm run build:packages + + +> hm-design-system-poc@0.1.0 check:theme-defaults +> node scripts/theme-defaults.mjs --check + +Theme defaults: 92 JSON colors / 94 contract defaults; generated outputs match + +> hm-design-system-poc@0.1.0 build:packages +> npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw + + +> hm-design-system-poc@0.1.0 build:org-chart +> npm run build -w @hm-design/org-chart + + +> @hm-design/org-chart@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 2,450.52 kB │ gzip: 1,648.92 kB + +✓ built in 95ms +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/orgchart.browser.js 2,456.85 kB │ gzip: 1,649.32 kB + +✓ built in 81ms + +> hm-design-system-poc@0.1.0 build:ui +> npm run build -w @hm-design/ui + + +> @hm-design/ui@0.1.0 build +> node ../../scripts/build-package.mjs ui + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/theme/index.js 25.18 kB │ gzip: 3.98 kB +dist/index.js 120.43 kB │ gzip: 21.30 kB + +✓ built in 73ms + +> hm-design-system-poc@0.1.0 build:center-graphic +> npm run build -w @hm-design/center-graphic + + +> @hm-design/center-graphic@0.1.0 build +> node ../../scripts/build-package.mjs center-graphic + +vite v8.3.0 building client environment for production... +transforming... +✓ 145 modules transformed. +rendering chunks... +computing gzip size... +dist/style.css 88.68 kB │ gzip: 20.14 kB +dist/reference.js 0.65 kB │ gzip: 0.23 kB +dist/index.js 1.86 kB │ gzip: 0.84 kB +dist/FacilityBatch-PtW_fbvn.js 1,675.84 kB │ gzip: 276.13 kB + +✓ built in 118ms + +> hm-design-system-poc@0.1.0 build:org-chart-react +> npm run build -w @hm-design/org-chart-react + + +> @hm-design/org-chart-react@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 5 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 0.09 kB │ gzip: 0.09 kB +dist/hm-dialog.js 4.39 kB │ gzip: 1.80 kB +dist/OrgChart-DZlWXlj3.js 10.50 kB │ gzip: 2.63 kB + +✓ built in 35ms + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 111ms + +> hm-design-system-poc@0.1.0 build-storybook +> storybook build -o storybook-static --disable-telemetry + + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| Vite vite v8.3.0 building client environment for production... +transforming... +| +• Copying static files: themes at storybook-static\themes +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3101 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-C90CBOQd.css +| 71.39 kB │ gzip: 13.24 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-B2ZqwRQr.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-CrDPAp-u.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/layout-grid-Dec_L8Aj.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-C62xCiKB.js +| 0.58 kB │ gzip: 0.35 kB +| storybook-static/assets/org-chart-full-composition.stories-CmXC5sW1.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-BSRSHtxP.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-BJ6NN2og.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-IEEhIdXT.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-DUf6hNdy.js +| 0.76 kB │ gzip: 0.39 kB +| storybook-static/assets/center-information.stories-CTlvamgN.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-Cq7GuYZv.js +| 0.97 kB │ gzip: 0.64 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-BBmUr86Z.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-xfMk8xm3.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-5sVa_xK1.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-CRESndSc.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-MbEz9XLY.js +| 1.90 kB │ gzip: 1.07 kB +| storybook-static/assets/loading-screen.stories-c2mCZt7h.js +| 1.96 kB │ gzip: 1.03 kB +| storybook-static/assets/story-board-CMOyevtm.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-Bn6sImwM.js +| 2.10 kB │ gzip: 1.00 kB +| storybook-static/assets/story-page-InLs9Vcj.js +| 2.13 kB │ gzip: 0.69 kB +| storybook-static/assets/verification-state-CRE5GvFI.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-DK6TOk7K.js +| 2.34 kB │ gzip: 1.09 kB +| storybook-static/assets/alert-dialog.stories-C3y8_aeE.js +| 2.48 kB │ gzip: 1.08 kB +| storybook-static/assets/separator.stories-DD1Lnw5I.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-Ct3gPj8c.js +| 2.58 kB │ gzip: 1.29 kB +| storybook-static/assets/badge.stories-B45ffhR3.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-CdfcrH9l.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-BUA6jhK3.js +| 2.70 kB │ gzip: 1.14 kB +| storybook-static/assets/calendar.stories-JsGZzMU6.js +| 2.79 kB │ gzip: 1.30 kB +| storybook-static/assets/switch.stories-BkiV1juR.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-CNG9Q7Qf.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-DYgUrl_5.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-C3dIvnsE.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-BDJ-Spvu.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-DpV76T6Y.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-DgNz1xSz.js +| 3.06 kB │ gzip: 1.51 kB +| storybook-static/assets/typography.stories-CGPtsrfA.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-CWF8okYi.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-oDf5co-_.js +| 3.16 kB │ gzip: 1.29 kB +| storybook-static/assets/label.stories-2WonSZOr.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-CHcI8y1q.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-TOTXcbXX.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-z8I630HS.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-Bsma4jmS.js +| 3.30 kB │ gzip: 1.45 kB +| storybook-static/assets/page-header.stories-CgClekDL.js +| 3.32 kB │ gzip: 1.30 kB +| storybook-static/assets/menubar.stories-C2OkGMXB.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-BGdtj-Vw.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-BUlg6ljN.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-kxI3Llmp.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-BDx_nhob.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-c7TrYqeB.js +| 3.52 kB │ gzip: 1.60 kB +| storybook-static/assets/breadcrumb.stories-DWOevXaH.js +| 3.55 kB │ gzip: 1.52 kB +| storybook-static/assets/card.stories-ZUo4F81H.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-BmS0c7qz.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-DoJps_3U.js +| 3.96 kB │ gzip: 1.46 kB +| storybook-static/assets/specimens-C49VJeZT.js +| 4.13 kB │ gzip: 1.36 kB +| storybook-static/assets/sonner.stories-vuU_t7oM.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-CZ2w2Qab.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-COb2hSCU.js +| 4.45 kB │ gzip: 1.68 kB +| storybook-static/assets/slider.stories-CwDpW7mP.js +| 4.53 kB │ gzip: 1.85 kB +| storybook-static/assets/org-chart-page-previews-DkDa-PWK.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-CA_mwrsr.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-CQ6ojhKi.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-13OnP4or.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-7-ze7vBq.js +| 5.03 kB │ gzip: 2.06 kB +| storybook-static/assets/accordion.stories-CE5xTSQ-.js +| 5.05 kB │ gzip: 1.81 kB +| storybook-static/assets/OrgChart-DZlWXlj3-DpBLtOar.js +| 5.35 kB │ gzip: 1.94 kB +| storybook-static/assets/dialog.stories-BtscPLmz.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-DWnnq7g_.js +| 5.81 kB │ gzip: 2.12 kB +| storybook-static/assets/data-table.stories-CV4Eyfkw.js +| 5.92 kB │ gzip: 2.51 kB +| storybook-static/assets/textarea.stories-q50rAgK3.js +| 5.99 kB │ gzip: 2.43 kB +| storybook-static/assets/runtime-loader.stories-DuMZGCVT.js +| 6.18 kB │ gzip: 2.45 kB +| storybook-static/assets/toggle-group.stories-BTaGOcrf.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-Co1wru0X.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-CW2ZQ7Bp.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-CAX3tTcq.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-DZ_x3GeH.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-D49__YqK.js +| 12.54 kB │ gzip: 4.15 kB +| storybook-static/assets/designer-theme.stories-D8Hrex2Y.js +| 14.62 kB │ gzip: 5.52 kB +| storybook-static/assets/gnb.stories-Bz0tX0qH.js +| 16.56 kB │ gzip: 5.83 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-DHeUgKcQ.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-D3EPoHnA.js +| 23.84 kB │ gzip: 6.25 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-o-w95Yhu.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-DwIuuCDG.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-DPql6C9x.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-qVlFRdYj.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-rIXaAc8o.js +| 758.58 kB │ gzip: 357.47 kB +| storybook-static/assets/reference-CBHPHHCT.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-DVD1nTdY.js +| 1,754.05 kB │ gzip: 503.60 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 3.88s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 3.4s of this 3.9s +| build (87%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (60%, 2.3s, 3101 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (19 calls) +| - plugin vite:css transform (19 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-cleanup-stage1-qa/validation-summary.json b/docs/sw/storybook-cleanup-stage1-qa/validation-summary.json new file mode 100644 index 0000000..a114b9e --- /dev/null +++ b/docs/sw/storybook-cleanup-stage1-qa/validation-summary.json @@ -0,0 +1,32 @@ +{ + "storybookBuild": { + "command": "npm.cmd run build-storybook", + "exitCode": 0, + "status": "PASS", + "log": "storybook-build.txt" + }, + "swTypecheck": { + "command": "npm.cmd run typecheck:sw", + "exitCode": 0, + "status": "PASS" + }, + "storyTypecheck": { + "command": "npm.cmd exec -- tsc -p tsconfig.app.json --noEmit", + "exitCode": 0, + "status": "PASS" + }, + "browser": { + "status": "PASS", + "checks": 49 + }, + "preservation": { + "status": "PASS", + "checks": 15 + }, + "warnings": [ + "CSS optimizer: background-color: var(...) generated utility", + "OrgChart :host-context minifier warnings", + "Vite chunk size warnings" + ], + "scope": "STORYBOOK_ONLY; no new application screen; AI screen generation guard not applicable" +} diff --git a/docs/sw/storybook-cleanup-stage1-qa/window-move-motion.png b/docs/sw/storybook-cleanup-stage1-qa/window-move-motion.png new file mode 100644 index 0000000..895918a Binary files /dev/null and b/docs/sw/storybook-cleanup-stage1-qa/window-move-motion.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/after-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/after-full-index.json new file mode 100644 index 0000000..cfdff8b --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/before-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/before-full-index.json new file mode 100644 index 0000000..b1ede3e --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/before-full-index.json @@ -0,0 +1 @@ +{"v":5,"entries":{"foundation-color--all":{"type":"story","subtype":"story","id":"foundation-color--all","name":"Color","title":"Foundation/Color","importPath":"./src/foundation/color.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-typography--all":{"type":"story","subtype":"story","id":"foundation-typography--all","name":"Typography","title":"Foundation/Typography","importPath":"./src/foundation/typography.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-layout--all":{"type":"story","subtype":"story","id":"foundation-layout--all","name":"Layout","title":"Foundation/Layout","importPath":"./src/foundation/layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--all":{"type":"story","subtype":"story","id":"components-form-button--all","name":"Button","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--roles":{"type":"story","subtype":"story","id":"components-form-button--roles","name":"Roles","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Roles"},"components-form-button--sizes":{"type":"story","subtype":"story","id":"components-form-button--sizes","name":"Sizes","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-button--states":{"type":"story","subtype":"story","id":"components-form-button--states","name":"Brand States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-button--standard-states":{"type":"story","subtype":"story","id":"components-form-button--standard-states","name":"Standard States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandardStates"},"components-form-button--long-label":{"type":"story","subtype":"story","id":"components-form-button--long-label","name":"Long Label","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-form-button--korean-labels":{"type":"story","subtype":"story","id":"components-form-button--korean-labels","name":"Korean Labels","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"KoreanLabels"},"components-form-button--icon-text-narrow":{"type":"story","subtype":"story","id":"components-form-button--icon-text-narrow","name":"Icon Text Narrow","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconTextNarrow"},"components-form-button--destructive":{"type":"story","subtype":"story","id":"components-form-button--destructive","name":"Destructive","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-form-button--playground":{"type":"story","subtype":"story","id":"components-form-button--playground","name":"Playground","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-button--compatibility":{"type":"story","subtype":"story","id":"components-form-button--compatibility","name":"Compatibility","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-form-input--all":{"type":"story","subtype":"story","id":"components-form-input--all","name":"Input","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-input--default":{"type":"story","subtype":"story","id":"components-form-input--default","name":"Default","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-input--focus":{"type":"story","subtype":"story","id":"components-form-input--focus","name":"Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-input--error":{"type":"story","subtype":"story","id":"components-form-input--error","name":"Error","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-input--invalid-focus":{"type":"story","subtype":"story","id":"components-form-input--invalid-focus","name":"Invalid Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-input--error-message":{"type":"story","subtype":"story","id":"components-form-input--error-message","name":"Error Message","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-input--required":{"type":"story","subtype":"story","id":"components-form-input--required","name":"Required","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-input--disabled":{"type":"story","subtype":"story","id":"components-form-input--disabled","name":"Disabled","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-input--readonly":{"type":"story","subtype":"story","id":"components-form-input--readonly","name":"Readonly","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-input--sizes":{"type":"story","subtype":"story","id":"components-form-input--sizes","name":"Compare Sizes","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-input--small":{"type":"story","subtype":"story","id":"components-form-input--small","name":"Small","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Small"},"components-form-input--medium":{"type":"story","subtype":"story","id":"components-form-input--medium","name":"Medium","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-input--large":{"type":"story","subtype":"story","id":"components-form-input--large","name":"Large","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-input--playground":{"type":"story","subtype":"story","id":"components-form-input--playground","name":"Playground","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-textarea--all":{"type":"story","subtype":"story","id":"components-form-textarea--all","name":"Textarea","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-textarea--default":{"type":"story","subtype":"story","id":"components-form-textarea--default","name":"Default","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-textarea--focus":{"type":"story","subtype":"story","id":"components-form-textarea--focus","name":"Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-textarea--error":{"type":"story","subtype":"story","id":"components-form-textarea--error","name":"Error","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-textarea--invalid-focus":{"type":"story","subtype":"story","id":"components-form-textarea--invalid-focus","name":"Invalid Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-textarea--error-message":{"type":"story","subtype":"story","id":"components-form-textarea--error-message","name":"Error Message","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-textarea--required":{"type":"story","subtype":"story","id":"components-form-textarea--required","name":"Required","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-textarea--readonly":{"type":"story","subtype":"story","id":"components-form-textarea--readonly","name":"Readonly","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-textarea--disabled":{"type":"story","subtype":"story","id":"components-form-textarea--disabled","name":"Disabled","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-textarea--long-content":{"type":"story","subtype":"story","id":"components-form-textarea--long-content","name":"Long Content","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-textarea--playground":{"type":"story","subtype":"story","id":"components-form-textarea--playground","name":"Playground","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-select--all":{"type":"story","subtype":"story","id":"components-form-select--all","name":"Select","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-select--default":{"type":"story","subtype":"story","id":"components-form-select--default","name":"Default","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-select--invalid-focus":{"type":"story","subtype":"story","id":"components-form-select--invalid-focus","name":"Invalid Focus","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-form-select--open":{"type":"story","subtype":"story","id":"components-form-select--open","name":"Open","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-form-select--selected":{"type":"story","subtype":"story","id":"components-form-select--selected","name":"Selected","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-form-select--disabled":{"type":"story","subtype":"story","id":"components-form-select--disabled","name":"Disabled","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-select--sizes":{"type":"story","subtype":"story","id":"components-form-select--sizes","name":"Compare Sizes","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-select--medium":{"type":"story","subtype":"story","id":"components-form-select--medium","name":"Medium","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-select--large":{"type":"story","subtype":"story","id":"components-form-select--large","name":"Large","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-select--long-content":{"type":"story","subtype":"story","id":"components-form-select--long-content","name":"Long Content","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-select--open-large-short":{"type":"story","subtype":"story","id":"components-form-select--open-large-short","name":"Open Large Short","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeShort"},"components-form-select--open-medium-long":{"type":"story","subtype":"story","id":"components-form-select--open-medium-long","name":"Open Medium Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenMediumLong"},"components-form-select--open-large-long":{"type":"story","subtype":"story","id":"components-form-select--open-large-long","name":"Open Large Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeLong"},"components-form-select--open-top":{"type":"story","subtype":"story","id":"components-form-select--open-top","name":"Open Top","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-form-select--open-top-long":{"type":"story","subtype":"story","id":"components-form-select--open-top-long","name":"Open Top Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTopLong"},"components-form-select--list-size-comparison":{"type":"story","subtype":"story","id":"components-form-select--list-size-comparison","name":"Medium Trigger / List Size Comparison","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ListSizeComparison"},"components-form-select--scroll":{"type":"story","subtype":"story","id":"components-form-select--scroll","name":"Scroll","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"components-form-select--playground":{"type":"story","subtype":"story","id":"components-form-select--playground","name":"Playground","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-checkbox--all":{"type":"story","subtype":"story","id":"components-form-checkbox--all","name":"Checkbox","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-checkbox--unchecked":{"type":"story","subtype":"story","id":"components-form-checkbox--unchecked","name":"Unchecked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Unchecked"},"components-form-checkbox--checked":{"type":"story","subtype":"story","id":"components-form-checkbox--checked","name":"Checked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Checked"},"components-form-checkbox--indeterminate":{"type":"story","subtype":"story","id":"components-form-checkbox--indeterminate","name":"Indeterminate","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Indeterminate"},"components-form-checkbox--disabled":{"type":"story","subtype":"story","id":"components-form-checkbox--disabled","name":"Disabled","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-checkbox--error":{"type":"story","subtype":"story","id":"components-form-checkbox--error","name":"Error","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-checkbox--playground":{"type":"story","subtype":"story","id":"components-form-checkbox--playground","name":"Playground","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-radio-group--all":{"type":"story","subtype":"story","id":"components-form-radio-group--all","name":"Radio Group","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-radio-group--vertical":{"type":"story","subtype":"story","id":"components-form-radio-group--vertical","name":"Vertical","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-form-radio-group--horizontal":{"type":"story","subtype":"story","id":"components-form-radio-group--horizontal","name":"Horizontal","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-form-radio-group--disabled":{"type":"story","subtype":"story","id":"components-form-radio-group--disabled","name":"Disabled","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-radio-group--error":{"type":"story","subtype":"story","id":"components-form-radio-group--error","name":"Error","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-switch--all":{"type":"story","subtype":"story","id":"components-form-switch--all","name":"Switch","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-switch--off":{"type":"story","subtype":"story","id":"components-form-switch--off","name":"Off","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Off"},"components-form-switch--on":{"type":"story","subtype":"story","id":"components-form-switch--on","name":"On","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"On"},"components-form-switch--disabled":{"type":"story","subtype":"story","id":"components-form-switch--disabled","name":"Disabled","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-slider--all":{"type":"story","subtype":"story","id":"components-form-slider--all","name":"Slider","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-slider--single-value":{"type":"story","subtype":"story","id":"components-form-slider--single-value","name":"Single","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SingleValue"},"components-form-slider--range-value":{"type":"story","subtype":"story","id":"components-form-slider--range-value","name":"Range","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RangeValue"},"components-form-slider--disabled-slider":{"type":"story","subtype":"story","id":"components-form-slider--disabled-slider","name":"Disabled","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledSlider"},"components-form-slider--focus":{"type":"story","subtype":"story","id":"components-form-slider--focus","name":"Focus","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-toggle--all":{"type":"story","subtype":"story","id":"components-form-toggle--all","name":"Toggle","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle--states":{"type":"story","subtype":"story","id":"components-form-toggle--states","name":"States","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-toggle--icon-only":{"type":"story","subtype":"story","id":"components-form-toggle--icon-only","name":"Icon Only","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconOnly"},"components-form-toggle--disabled-toggle":{"type":"story","subtype":"story","id":"components-form-toggle--disabled-toggle","name":"Disabled","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledToggle"},"components-form-toggle--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-toggle-group--all":{"type":"story","subtype":"story","id":"components-form-toggle-group--all","name":"Toggle Group","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle-group--single-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--single-selection","name":"Single","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-form-toggle-group--multiple-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--multiple-selection","name":"Multiple","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"MultipleSelection"},"components-form-toggle-group--vertical-group":{"type":"story","subtype":"story","id":"components-form-toggle-group--vertical-group","name":"Vertical","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"VerticalGroup"},"components-form-toggle-group--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle-group--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-label--all":{"type":"story","subtype":"story","id":"components-form-label--all","name":"Label","title":"Components/Form/Label","importPath":"./src/components/label.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--all":{"type":"story","subtype":"story","id":"components-navigation-tabs--all","name":"Tabs","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--secondary":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary","name":"Secondary","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Secondary"},"components-navigation-tabs--selected-first":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-first","name":"Selected First","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedFirst"},"components-navigation-tabs--selected-last":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-last","name":"Selected Last","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedLast"},"components-navigation-tabs--focus":{"type":"story","subtype":"story","id":"components-navigation-tabs--focus","name":"Focus","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-navigation-tabs--disabled":{"type":"story","subtype":"story","id":"components-navigation-tabs--disabled","name":"Disabled","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-navigation-tabs--overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--overflow","name":"Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-navigation-tabs--secondary-overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary-overflow","name":"Secondary Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SecondaryOverflow"},"components-navigation-tabs--long-label":{"type":"story","subtype":"story","id":"components-navigation-tabs--long-label","name":"Long Label","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-navigation-tabs--compatibility":{"type":"story","subtype":"story","id":"components-navigation-tabs--compatibility","name":"Compatibility","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-navigation-breadcrumb--all":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--all","name":"Breadcrumb","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-breadcrumb--basic-3":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--basic-3","name":"Basic","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic3"},"components-navigation-breadcrumb--with-ellipsis":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--with-ellipsis","name":"Ellipsis","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithEllipsis"},"components-navigation-breadcrumb--long-path":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--long-path","name":"Long Path","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongPath"},"components-navigation-pagination--all":{"type":"story","subtype":"story","id":"components-navigation-pagination--all","name":"Pagination","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-pagination--first-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--first-page","name":"First Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstPage"},"components-navigation-pagination--last-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--last-page","name":"Last Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastPage"},"components-navigation-pagination--long-range":{"type":"story","subtype":"story","id":"components-navigation-pagination--long-range","name":"Long Range","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongRange"},"components-navigation-navigation-menu--all":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--all","name":"Navigation Menu","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-navigation-menu--default":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--default","name":"Default","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-navigation-navigation-menu--no-viewport":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--no-viewport","name":"No Viewport","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NoViewport"},"components-navigation-navigation-menu--indicator-alignment":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--indicator-alignment","name":"Indicator Alignment","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IndicatorAlignment"},"components-navigation-menubar--all":{"type":"story","subtype":"story","id":"components-navigation-menubar--all","name":"Menubar","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-menubar--trigger-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--trigger-focus","name":"Trigger Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"TriggerFocus"},"components-navigation-menubar--open-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--open-focus","name":"Open Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"OpenFocus"},"components-overlay-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-dialog--all","name":"Dialog","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dialog--open":{"type":"story","subtype":"story","id":"components-overlay-dialog--open","name":"Open","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-dialog--long-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--long-content-open","name":"Long Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContentOpen"},"components-overlay-dialog--wide-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--wide-content-open","name":"Wide Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WideContentOpen"},"components-overlay-dialog--body-scroll-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--body-scroll-open","name":"Body Scroll","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BodyScrollOpen"},"components-overlay-dialog--delete-confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--delete-confirmation-open","name":"Delete Confirmation","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DeleteConfirmationOpen"},"components-overlay-alert-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--all","name":"Alert Dialog","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-alert-dialog--confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--confirmation-open","name":"Confirmation","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ConfirmationOpen"},"components-overlay-alert-dialog--destructive-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--destructive-open","name":"Destructive","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DestructiveOpen"},"components-overlay-sheet--all":{"type":"story","subtype":"story","id":"components-overlay-sheet--all","name":"Sheet","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-sheet--right":{"type":"story","subtype":"story","id":"components-overlay-sheet--right","name":"Right","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Right"},"components-overlay-sheet--left":{"type":"story","subtype":"story","id":"components-overlay-sheet--left","name":"Left","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Left"},"components-overlay-sheet--top":{"type":"story","subtype":"story","id":"components-overlay-sheet--top","name":"Top","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Top"},"components-overlay-sheet--bottom":{"type":"story","subtype":"story","id":"components-overlay-sheet--bottom","name":"Bottom","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Bottom"},"components-overlay-sheet--form":{"type":"story","subtype":"story","id":"components-overlay-sheet--form","name":"Form","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-sheet--long-content":{"type":"story","subtype":"story","id":"components-overlay-sheet--long-content","name":"Long Content","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-drawer--all":{"type":"story","subtype":"story","id":"components-overlay-drawer--all","name":"Drawer","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-drawer--open":{"type":"story","subtype":"story","id":"components-overlay-drawer--open","name":"Open","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-drawer--form":{"type":"story","subtype":"story","id":"components-overlay-drawer--form","name":"Form","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-drawer--long-content":{"type":"story","subtype":"story","id":"components-overlay-drawer--long-content","name":"Long Content","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-dropdown-menu--all":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--all","name":"Dropdown Menu","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dropdown-menu--open":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--open","name":"Open","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-context-menu--all":{"type":"story","subtype":"story","id":"components-overlay-context-menu--all","name":"Context Menu","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-context-menu--open":{"type":"story","subtype":"story","id":"components-overlay-context-menu--open","name":"Open","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Open"},"components-overlay-popover--all":{"type":"story","subtype":"story","id":"components-overlay-popover--all","name":"Popover","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-popover--open":{"type":"story","subtype":"story","id":"components-overlay-popover--open","name":"Open","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-tooltip--all":{"type":"story","subtype":"story","id":"components-overlay-tooltip--all","name":"Tooltip","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-tooltip--open":{"type":"story","subtype":"story","id":"components-overlay-tooltip--open","name":"Open","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-hover-card--all":{"type":"story","subtype":"story","id":"components-overlay-hover-card--all","name":"Hover Card","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-hover-card--open":{"type":"story","subtype":"story","id":"components-overlay-hover-card--open","name":"Open","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-data-display-card--all":{"type":"story","subtype":"story","id":"components-data-display-card--all","name":"Card","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-card--surfaces":{"type":"story","subtype":"story","id":"components-data-display-card--surfaces","name":"Surfaces","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Surfaces"},"components-data-display-card--action":{"type":"story","subtype":"story","id":"components-data-display-card--action","name":"Action","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Action"},"components-data-display-card--compatibility":{"type":"story","subtype":"story","id":"components-data-display-card--compatibility","name":"Compatibility","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-data-display-table--all":{"type":"story","subtype":"story","id":"components-data-display-table--all","name":"Table","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-table--basic":{"type":"story","subtype":"story","id":"components-data-display-table--basic","name":"Basic","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic"},"components-data-display-table--selected":{"type":"story","subtype":"story","id":"components-data-display-table--selected","name":"Selected","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-data-display-table--long-text":{"type":"story","subtype":"story","id":"components-data-display-table--long-text","name":"Long Text","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongText"},"components-data-display-table--overflow":{"type":"story","subtype":"story","id":"components-data-display-table--overflow","name":"Horizontal Overflow","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-data-display-badge--all":{"type":"story","subtype":"story","id":"components-data-display-badge--all","name":"Badge","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-badge--variants":{"type":"story","subtype":"story","id":"components-data-display-badge--variants","name":"Variants","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Variants"},"components-data-display-badge--playground":{"type":"story","subtype":"story","id":"components-data-display-badge--playground","name":"Playground","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-data-display-avatar--all":{"type":"story","subtype":"story","id":"components-data-display-avatar--all","name":"Avatar","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-avatar--image":{"type":"story","subtype":"story","id":"components-data-display-avatar--image","name":"Image","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Image"},"components-data-display-avatar--fallback-error":{"type":"story","subtype":"story","id":"components-data-display-avatar--fallback-error","name":"Fallback","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FallbackError"},"components-data-display-progress--all":{"type":"story","subtype":"story","id":"components-data-display-progress--all","name":"Progress","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-progress--zero":{"type":"story","subtype":"story","id":"components-data-display-progress--zero","name":"Zero","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Zero"},"components-data-display-progress--middle":{"type":"story","subtype":"story","id":"components-data-display-progress--middle","name":"Middle","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Middle"},"components-data-display-progress--full":{"type":"story","subtype":"story","id":"components-data-display-progress--full","name":"Full","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Full"},"components-data-display-progress--non-default-max":{"type":"story","subtype":"story","id":"components-data-display-progress--non-default-max","name":"Non Default Max","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"NonDefaultMax"},"components-data-display-skeleton--all":{"type":"story","subtype":"story","id":"components-data-display-skeleton--all","name":"Skeleton","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-skeleton--text":{"type":"story","subtype":"story","id":"components-data-display-skeleton--text","name":"Text","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Text"},"components-data-display-skeleton--card-list":{"type":"story","subtype":"story","id":"components-data-display-skeleton--card-list","name":"Card List","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CardList"},"components-data-display-separator--all":{"type":"story","subtype":"story","id":"components-data-display-separator--all","name":"Separator","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-separator--horizontal":{"type":"story","subtype":"story","id":"components-data-display-separator--horizontal","name":"Horizontal","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-data-display-separator--vertical":{"type":"story","subtype":"story","id":"components-data-display-separator--vertical","name":"Vertical","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-data-display-aspect-ratio--all":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--all","name":"Aspect Ratio","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-aspect-ratio--wide":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--wide","name":"16:9","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Wide"},"components-data-display-aspect-ratio--square":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--square","name":"1:1","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Square"},"components-data-display-carousel--all":{"type":"story","subtype":"story","id":"components-data-display-carousel--all","name":"Carousel","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-carousel--basic-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--basic-carousel","name":"Basic","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BasicCarousel"},"components-data-display-carousel--multiple-items":{"type":"story","subtype":"story","id":"components-data-display-carousel--multiple-items","name":"Multiple Items","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MultipleItems"},"components-data-display-carousel--loop-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--loop-carousel","name":"Loop","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LoopCarousel"},"components-data-display-carousel--vertical-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--vertical-carousel","name":"Vertical","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalCarousel"},"components-data-display-scroll-area--all":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--all","name":"Scroll Area","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-scroll-area--vertical-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--vertical-scroll","name":"Vertical","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalScroll"},"components-data-display-scroll-area--horizontal-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--horizontal-scroll","name":"Horizontal","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalScroll"},"components-disclosure-accordion--all":{"type":"story","subtype":"story","id":"components-disclosure-accordion--all","name":"Accordion","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-accordion--single":{"type":"story","subtype":"story","id":"components-disclosure-accordion--single","name":"Single","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Single"},"components-disclosure-accordion--multiple":{"type":"story","subtype":"story","id":"components-disclosure-accordion--multiple","name":"Multiple","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Multiple"},"components-disclosure-accordion--disabled":{"type":"story","subtype":"story","id":"components-disclosure-accordion--disabled","name":"Disabled","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-accordion--long-content":{"type":"story","subtype":"story","id":"components-disclosure-accordion--long-content","name":"Long Content","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-collapsible--all":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--all","name":"Collapsible","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-collapsible--closed":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--closed","name":"Closed","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Closed"},"components-disclosure-collapsible--open":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--open","name":"Open","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-disclosure-collapsible--disabled":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--disabled","name":"Disabled","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-collapsible--long-content":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--long-content","name":"Long Content","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-resizable--all":{"type":"story","subtype":"story","id":"components-disclosure-resizable--all","name":"Resizable","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-resizable--horizontal-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--horizontal-layout","name":"Horizontal","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalLayout"},"components-disclosure-resizable--vertical-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--vertical-layout","name":"Vertical","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalLayout"},"components-disclosure-resizable--min-max-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--min-max-layout","name":"Min Max","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MinMaxLayout"},"components-search-date-command--all":{"type":"story","subtype":"story","id":"components-search-date-command--all","name":"Command","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-command--search":{"type":"story","subtype":"story","id":"components-search-date-command--search","name":"Search","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Search"},"components-search-date-command--grouped-list":{"type":"story","subtype":"story","id":"components-search-date-command--grouped-list","name":"Grouped","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"GroupedList"},"components-search-date-combobox--all":{"type":"story","subtype":"story","id":"components-search-date-combobox--all","name":"Combobox","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-combobox--empty-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--empty-combobox","name":"Empty","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"EmptyCombobox"},"components-search-date-combobox--controlled-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--controlled-combobox","name":"Controlled","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ControlledCombobox"},"components-search-date-combobox--long-option":{"type":"story","subtype":"story","id":"components-search-date-combobox--long-option","name":"Long Option","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongOption"},"components-search-date-combobox--open-bottom":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-bottom","name":"Open Bottom","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenBottom"},"components-search-date-combobox--open-top":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-top","name":"Open Top","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-search-date-calendar--all":{"type":"story","subtype":"story","id":"components-search-date-calendar--all","name":"Calendar","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-calendar--single-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--single-selection","name":"Single","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-search-date-calendar--disabled-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--disabled-selection","name":"Disabled Dates","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"DisabledSelection"},"components-search-date-calendar--range-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--range-selection","name":"Range","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"RangeSelection"},"components-search-date-date-picker--all":{"type":"story","subtype":"story","id":"components-search-date-date-picker--all","name":"Date Picker","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-date-picker--empty-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--empty-picker","name":"Empty","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EmptyPicker"},"components-search-date-date-picker--invalid-focus":{"type":"story","subtype":"story","id":"components-search-date-date-picker--invalid-focus","name":"Invalid Focus","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-search-date-date-picker--selected-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--selected-picker","name":"Selected","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedPicker"},"components-search-date-date-picker--controlled-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--controlled-picker","name":"Controlled","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ControlledPicker"},"components-feedback-alert--all":{"type":"story","subtype":"story","id":"components-feedback-alert--all","name":"Alert","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-feedback-alert--default":{"type":"story","subtype":"story","id":"components-feedback-alert--default","name":"Default","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-feedback-alert--destructive":{"type":"story","subtype":"story","id":"components-feedback-alert--destructive","name":"Destructive","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-feedback-sonner--all":{"type":"story","subtype":"story","id":"components-feedback-sonner--all","name":"Sonner","title":"Components/Feedback/Sonner","importPath":"./src/components/sonner.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--all":{"type":"story","subtype":"story","id":"patterns-data-data-table--all","name":"Data Table","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--with-filter-bar-story":{"type":"story","subtype":"story","id":"patterns-data-data-table--with-filter-bar-story","name":"With Filter Bar","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithFilterBarStory"},"patterns-data-data-table--loading":{"type":"story","subtype":"story","id":"patterns-data-data-table--loading","name":"Loading","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-data-data-table--empty":{"type":"story","subtype":"story","id":"patterns-data-data-table--empty","name":"Empty","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-data-filter-bar--all":{"type":"story","subtype":"story","id":"patterns-data-filter-bar--all","name":"Filter Bar","title":"Patterns/Data/Filter Bar","importPath":"./src/patterns/filter-bar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--all":{"type":"story","subtype":"story","id":"patterns-layout-gnb--all","name":"GNB","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--default":{"type":"story","subtype":"story","id":"patterns-layout-gnb--default","name":"Default","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-gnb--sticky":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sticky","name":"Sticky","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sticky"},"patterns-layout-gnb--sidebar":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sidebar","name":"GNB Sidebar","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sidebar"},"patterns-layout-gnb--navigation-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--navigation-menu-open","name":"Navigation Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NavigationMenuOpen"},"patterns-layout-gnb--short-depth-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--short-depth-open","name":"Short Depth Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ShortDepthOpen"},"patterns-layout-gnb--right-edge-long-depth":{"type":"story","subtype":"story","id":"patterns-layout-gnb--right-edge-long-depth","name":"Right Edge Long Depth","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RightEdgeLongDepth"},"patterns-layout-gnb--first-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-short","name":"First Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthShort"},"patterns-layout-gnb--first-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-long","name":"First Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthLong"},"patterns-layout-gnb--middle-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-short","name":"Middle Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthShort"},"patterns-layout-gnb--middle-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-long","name":"Middle Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthLong"},"patterns-layout-gnb--last-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-short","name":"Last Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthShort"},"patterns-layout-gnb--last-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-long","name":"Last Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthLong"},"patterns-layout-gnb--edge-first-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-first-long","name":"Edge First Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeFirstLong"},"patterns-layout-gnb--edge-last-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-last-long","name":"Edge Last Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeLastLong"},"patterns-layout-gnb--user-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--user-menu-open","name":"User Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"UserMenuOpen"},"patterns-layout-gnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-gnb--long-labels","name":"Long Labels","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-gnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-gnb--with-logo","name":"With Logo","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-gnb--utilities":{"type":"story","subtype":"story","id":"patterns-layout-gnb--utilities","name":"Utilities","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Utilities"},"patterns-layout-gnb--mobile":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile","name":"Mobile","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Mobile"},"patterns-layout-gnb--mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile-menu-open","name":"Mobile Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MobileMenuOpen"},"patterns-layout-lnb--all":{"type":"story","subtype":"story","id":"patterns-layout-lnb--all","name":"LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-lnb--default":{"type":"story","subtype":"story","id":"patterns-layout-lnb--default","name":"Default","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-lnb--selected":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected","name":"Selected","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"patterns-layout-lnb--expanded":{"type":"story","subtype":"story","id":"patterns-layout-lnb--expanded","name":"Expanded","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Expanded"},"patterns-layout-lnb--selected-child":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected-child","name":"Selected Child","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedChild"},"patterns-layout-lnb--collapsed-with-selection":{"type":"story","subtype":"story","id":"patterns-layout-lnb--collapsed-with-selection","name":"Collapsed With Selection","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CollapsedWithSelection"},"patterns-layout-lnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-logo","name":"With Logo","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-lnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--long-labels","name":"Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-lnb--scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--scroll","name":"Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"patterns-layout-lnb--third-level":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level","name":"Third Level","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-lnb--third-level-long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-long-labels","name":"Third Level Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelLongLabels"},"patterns-layout-lnb--third-level-scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-scroll","name":"Third Level Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelScroll"},"patterns-layout-lnb--with-gnb":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-gnb","name":"VERIFICATION ONLY · GNB + LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithGNB"},"patterns-layout-lnb--standalone-desktop":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-desktop","name":"LNB Standalone Desktop","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneDesktop"},"patterns-layout-lnb--lnb-profile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--lnb-profile-menu-open","name":"LNB Profile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LNBProfileMenuOpen"},"patterns-layout-lnb--standalone-mobile":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile","name":"LNB Standalone Mobile","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobile"},"patterns-layout-lnb--standalone-mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile-menu-open","name":"LNB Standalone Mobile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobileMenuOpen"},"patterns-layout-loading-screen--all":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--all","name":"Loading Screen","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-loading-screen--inline":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--inline","name":"Inline","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Inline"},"patterns-layout-dashboard-layout--all":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--all","name":"Dashboard","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-dashboard-layout--with-sidebar":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--with-sidebar","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithSidebar"},"patterns-layout-dashboard-layout--third-level":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--third-level","name":"VERIFICATION ONLY — 운영 사용 금지 · Third Level","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-dashboard-layout--sidebar-only":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--sidebar-only","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SidebarOnly"},"patterns-layout-dashboard-layout--long-content":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--long-content","name":"VERIFICATION ONLY — 운영 사용 금지 · Long Content","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"patterns-layout-dashboard-layout--loading":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--loading","name":"Loading","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-layout-dashboard-layout--empty":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--empty","name":"Empty","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-layout-dashboard-layout--framed":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--framed","name":"VERIFICATION ONLY — 운영 사용 금지 · Framed","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Framed"},"patterns-layout-page-header--all":{"type":"story","subtype":"story","id":"patterns-layout-page-header--all","name":"Page Header","title":"Patterns/Layout/Page Header","importPath":"./src/patterns/page-header.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"orgchart--logo-personnel-summary":{"type":"story","subtype":"story","id":"orgchart--logo-personnel-summary","name":"Overview","title":"OrgChart/Overview","importPath":"./src/org-chart/org-chart-p1.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"LogoPersonnelSummary"},"orgchart--department-colors":{"type":"story","subtype":"story","id":"orgchart--department-colors","name":"Department Colors","title":"OrgChart/Department Colors","importPath":"./src/org-chart/org-chart-department-colors.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"DepartmentColors"},"orgchart--full-composition":{"type":"story","subtype":"story","id":"orgchart--full-composition","name":"Full Composition","title":"OrgChart/Full Composition","importPath":"./src/org-chart/org-chart-full-composition.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"FullComposition"},"orgchart--expanded-org-chart":{"type":"story","subtype":"story","id":"orgchart--expanded-org-chart","name":"Expanded OrgChart","title":"OrgChart/Expanded OrgChart","importPath":"./src/org-chart/org-chart-expanded.stories.tsx","tags":["dev","test","manifest"],"exportName":"ExpandedOrgChart"},"orgchart-components-cards--business-management":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-management","name":"Business Management","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessManagement"},"orgchart-components-cards--business-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-planning","name":"Business Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessPlanning"},"orgchart-components-cards--talent-growth":{"type":"story","subtype":"story","id":"orgchart-components-cards--talent-growth","name":"Talent Growth","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TalentGrowth"},"orgchart-components-cards--integrated-system":{"type":"story","subtype":"story","id":"orgchart-components-cards--integrated-system","name":"Integrated System","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"IntegratedSystem"},"orgchart-components-cards--design-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--design-planning","name":"Design Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"DesignPlanning"},"orgchart-components-cards--solution-sales":{"type":"story","subtype":"story","id":"orgchart-components-cards--solution-sales","name":"Solution Sales","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"SolutionSales"},"orgchart-components-cards--top-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--top-leader","name":"최상위 리더","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TopLeader"},"orgchart-components-cards--organization-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--organization-leader","name":"조직장","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"OrganizationLeader"},"orgchart-components-cards--employee":{"type":"story","subtype":"story","id":"orgchart-components-cards--employee","name":"일반 직원","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Employee"},"orgchart--logo":{"type":"story","subtype":"story","id":"orgchart--logo","name":"Logo","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Logo"},"orgchart--position-summary":{"type":"story","subtype":"story","id":"orgchart--position-summary","name":"Position Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--position-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--position-summary","name":"Position Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart-components-summaries--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--status-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--status-summary","name":"Status Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"StatusSummary"},"orgchart-content--basic-organization":{"type":"story","subtype":"story","id":"orgchart-content--basic-organization","name":"Basic Organization","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"BasicOrganization"},"orgchart-content--organization-hierarchy":{"type":"story","subtype":"story","id":"orgchart-content--organization-hierarchy","name":"Organization Hierarchy","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationHierarchy"},"orgchart-content--employee-cards":{"type":"story","subtype":"story","id":"orgchart-content--employee-cards","name":"Employee Cards","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"EmployeeCards"},"orgchart-content--organization-summary":{"type":"story","subtype":"story","id":"orgchart-content--organization-summary","name":"Organization Summary","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationSummary"},"orgchart-content--json-data-update":{"type":"story","subtype":"story","id":"orgchart-content--json-data-update","name":"JSON Data Update","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"JSONDataUpdate"},"orgchart-content--loading-empty-error":{"type":"story","subtype":"story","id":"orgchart-content--loading-empty-error","name":"Loading / Empty / Error","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"LoadingEmptyError"},"orgchart-content--responsive-container":{"type":"story","subtype":"story","id":"orgchart-content--responsive-container","name":"Responsive Container","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"ResponsiveContainer"},"orgchart-content--multiple-instances":{"type":"story","subtype":"story","id":"orgchart-content--multiple-instances","name":"Multiple Instances","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"MultipleInstances"},"center-graphic-facility--tunnel":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel","name":"Tunnel","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Tunnel"},"center-graphic-facility--bridge":{"type":"story","subtype":"story","id":"center-graphic-facility--bridge","name":"Bridge","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Bridge"},"center-graphic-facility--intersection":{"type":"story","subtype":"story","id":"center-graphic-facility--intersection","name":"Intersection","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Intersection"},"center-graphic-facility--junction":{"type":"story","subtype":"story","id":"center-graphic-facility--junction","name":"Junction","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Junction"},"center-graphic-facility--interchange":{"type":"story","subtype":"story","id":"center-graphic-facility--interchange","name":"Interchange","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Interchange"},"center-graphic-facility--roadside":{"type":"story","subtype":"story","id":"center-graphic-facility--roadside","name":"Roadside","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Roadside"},"center-graphic-facility--linked":{"type":"story","subtype":"story","id":"center-graphic-facility--linked","name":"Linked","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Linked"},"center-graphic-facility--tunnel-playground":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel-playground","name":"직접 테스트 (터널)","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"TunnelPlayground"},"center-graphic-information--information":{"type":"story","subtype":"story","id":"center-graphic-information--information","name":"Information","title":"Center Graphic/Information","importPath":"./src/center/center-information.stories.tsx","tags":["dev","test","manifest"],"exportName":"Information"},"center-graphic-overview--overview":{"type":"story","subtype":"story","id":"center-graphic-overview--overview","name":"Overview","title":"Center Graphic/Overview","importPath":"./src/center/center-overview.stories.tsx","tags":["dev","test","manifest"],"exportName":"Overview"},"center-graphic-spatial--spatial":{"type":"story","subtype":"story","id":"center-graphic-spatial--spatial","name":"Spatial","title":"Center Graphic/Spatial","importPath":"./src/center/center-spatial.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Spatial"},"center-graphic-title--compositions":{"type":"story","subtype":"story","id":"center-graphic-title--compositions","name":"Title","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Compositions"},"center-graphic-title--playground":{"type":"story","subtype":"story","id":"center-graphic-title--playground","name":"Playground","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"verification-publisher-regression--consumers-regression":{"type":"story","subtype":"story","id":"verification-publisher-regression--consumers-regression","name":"Consumers Regression","title":"Verification/Publisher Regression","importPath":"./src/components/publisher-regression.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"ConsumersRegression"},"sw-header--detail-buttons":{"type":"story","subtype":"story","id":"sw-header--detail-buttons","name":"Detail Buttons (Shared States)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DetailButtons"},"sw-header--overview":{"type":"story","subtype":"story","id":"sw-header--overview","name":"Overview","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Overview"},"sw-header--interactive-states":{"type":"story","subtype":"story","id":"sw-header--interactive-states","name":"Interactive States","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"InteractiveStates"},"sw-header--window-move-motion":{"type":"story","subtype":"story","id":"sw-header--window-move-motion","name":"Window Move Motion","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"WindowMoveMotion"},"sw-header--composed-controls":{"type":"story","subtype":"story","id":"sw-header--composed-controls","name":"Composed Controls","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ComposedControls"},"sw-header--logo-slot":{"type":"story","subtype":"story","id":"sw-header--logo-slot","name":"Logo Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LogoSlot"},"sw-header--document-dropdown":{"type":"story","subtype":"story","id":"sw-header--document-dropdown","name":"Document Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DocumentDropdown"},"sw-header--layer-dropdown":{"type":"story","subtype":"story","id":"sw-header--layer-dropdown","name":"Layer Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LayerDropdown"},"sw-header--color-dropdown":{"type":"story","subtype":"story","id":"sw-header--color-dropdown","name":"Color Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ColorDropdown"},"sw-header--line-style-dropdown":{"type":"story","subtype":"story","id":"sw-header--line-style-dropdown","name":"Line Style Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LineStyleDropdown"},"sw-header--text-dimension-style-dropdown":{"type":"story","subtype":"story","id":"sw-header--text-dimension-style-dropdown","name":"Text · Dimension Style Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"TextDimensionStyleDropdown"},"sw-header--responsive-more":{"type":"story","subtype":"story","id":"sw-header--responsive-more","name":"Responsive More","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ResponsiveMore"},"sw-header--layer-detail-input":{"type":"story","subtype":"story","id":"sw-header--layer-detail-input","name":"Layer Detail · Input","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LayerDetailInput"},"sw-header--property-panel":{"type":"story","subtype":"story","id":"sw-header--property-panel","name":"Property Panel","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanel"},"sw-header--property-panel-variants":{"type":"story","subtype":"story","id":"sw-header--property-panel-variants","name":"Property Panel Variants","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelVariants"},"sw-header--k-guide":{"type":"story","subtype":"story","id":"sw-header--k-guide","name":"K Guide","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"KGuide"},"sw-header--additional-hover":{"type":"story","subtype":"story","id":"sw-header--additional-hover","name":"Additional Hover","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"AdditionalHover"},"sw-header--property-bar":{"type":"story","subtype":"story","id":"sw-header--property-bar","name":"Property Bar","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyBar"},"sw-header--dynamic-controls":{"type":"story","subtype":"story","id":"sw-header--dynamic-controls","name":"Dynamic Controls","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DynamicControls"},"sw-header--colorize":{"type":"story","subtype":"story","id":"sw-header--colorize","name":"Colorize","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Colorize"},"sw-header--composition":{"type":"story","subtype":"story","id":"sw-header--composition","name":"Composition (Visibility · Order)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Composition"},"sw-header--property-panel-none":{"type":"story","subtype":"story","id":"sw-header--property-panel-none","name":"Property Panel · 선택 없음","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelNone"},"sw-header--property-panel-all":{"type":"story","subtype":"story","id":"sw-header--property-panel-all","name":"Property Panel · 전체 선택","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelAll"},"sw-header--property-panel-circle":{"type":"story","subtype":"story","id":"sw-header--property-panel-circle","name":"Property Panel · 원 1개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCircle"},"sw-header--property-panel-expanded":{"type":"story","subtype":"story","id":"sw-header--property-panel-expanded","name":"Property Panel · 모두 펼침","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelExpanded"},"sw-header--property-panel-compare":{"type":"story","subtype":"story","id":"sw-header--property-panel-compare","name":"Property Panel · 4개 비교","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCompare"},"sw-header--property-shape-slot":{"type":"story","subtype":"story","id":"sw-header--property-shape-slot","name":"Property Panel · 형상 Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyShapeSlot"},"sw-header--property-fields":{"type":"story","subtype":"story","id":"sw-header--property-fields","name":"Property Panel · 필드 13개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyFields"},"theme-designer-playground--editor":{"type":"story","subtype":"story","id":"theme-designer-playground--editor","name":"Designer Playground","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal"],"exportName":"Editor"},"theme-designer-playground--live-verification":{"type":"story","subtype":"story","id":"theme-designer-playground--live-verification","name":"Live Verification","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal","verification","play-fn"],"exportName":"LiveVerification"},"theme-runtime-contract--comparison":{"type":"story","subtype":"story","id":"theme-runtime-contract--comparison","name":"Comparison","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Comparison"},"theme-runtime-contract--global-external":{"type":"story","subtype":"story","id":"theme-runtime-contract--global-external","name":"Global External","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"GlobalExternal"},"theme-runtime-contract--verification":{"type":"story","subtype":"story","id":"theme-runtime-contract--verification","name":"Verification","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Verification"},"theme-runtime-contract--dashboard":{"type":"story","subtype":"story","id":"theme-runtime-contract--dashboard","name":"Dashboard","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Dashboard"},"theme-runtime-contract-loader--cdn-verification":{"type":"story","subtype":"story","id":"theme-runtime-contract-loader--cdn-verification","name":"Cdn Verification","title":"Theme/Runtime Contract/Loader","importPath":"./src/theme/runtime-loader.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"CdnVerification"}}} \ No newline at end of file diff --git a/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-final.txt b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-final.txt new file mode 100644 index 0000000..85f36dc --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-final.txt @@ -0,0 +1,230 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown group has only Composed Controls with original ID +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +PASS render sw-header--detail-buttons +PASS render sw-header--overview +PASS render sw-header--interactive-states +PASS render sw-header--window-move-motion +PASS render sw-header--logo-slot +PASS render sw-header--document-dropdown +PASS render sw-header--responsive-more +PASS render sw-header--layer-detail-input +PASS render sw-header--property-panel +PASS render sw-header--property-panel-variants +PASS render sw-header--k-guide +PASS render sw-header--additional-hover +PASS render sw-header--property-bar +PASS render sw-header--dynamic-controls +PASS render sw-header--colorize +PASS render sw-header--composition +PASS render sw-header--property-panel-none +PASS render sw-header--property-panel-all +PASS render sw-header--property-panel-circle +PASS render sw-header--property-panel-expanded +PASS render sw-header--property-panel-compare +PASS render sw-header--property-shape-slot +PASS render sw-header--property-fields +PASS render sw-header--composed-controls +PASS one copy of five Dropdown fields and the details group +PASS composition wraps without page overflow or scaling at 390 +PASS 레이어 Hover does not open at 390 +PASS 레이어 overlay in viewport, not clipped or covered at 390 +PASS 레이어 selected and expanded at 390 +PASS 레이어 Escape closes and restores focus at 390 +PASS 레이어 trigger toggles closed at 390 +PASS 레이어 outside click closes at 390 +PASS 색상 Hover does not open at 390 +PASS 색상 overlay in viewport, not clipped or covered at 390 +PASS 색상 selected and expanded at 390 +PASS 색상 Escape closes and restores focus at 390 +PASS 색상 trigger toggles closed at 390 +PASS 색상 outside click closes at 390 +PASS 선스타일 Hover does not open at 390 +PASS 선스타일 overlay in viewport, not clipped or covered at 390 +PASS 선스타일 selected and expanded at 390 +PASS 선스타일 Escape closes and restores focus at 390 +PASS 선스타일 trigger toggles closed at 390 +PASS 선스타일 outside click closes at 390 +PASS 문자스타일 Hover does not open at 390 +PASS 문자스타일 overlay in viewport, not clipped or covered at 390 +PASS 문자스타일 selected and expanded at 390 +PASS 문자스타일 Escape closes and restores focus at 390 +PASS 문자스타일 trigger toggles closed at 390 +PASS 문자스타일 outside click closes at 390 +PASS 치수스타일 Hover does not open at 390 +PASS 치수스타일 overlay in viewport, not clipped or covered at 390 +PASS 치수스타일 selected and expanded at 390 +PASS 치수스타일 Escape closes and restores focus at 390 +PASS 치수스타일 trigger toggles closed at 390 +PASS 치수스타일 outside click closes at 390 +PASS composition wraps without page overflow or scaling at 768 +PASS 레이어 Hover does not open at 768 +PASS 레이어 overlay in viewport, not clipped or covered at 768 +PASS 레이어 selected and expanded at 768 +PASS 레이어 Escape closes and restores focus at 768 +PASS 레이어 trigger toggles closed at 768 +PASS 레이어 outside click closes at 768 +PASS 색상 Hover does not open at 768 +PASS 색상 overlay in viewport, not clipped or covered at 768 +PASS 색상 selected and expanded at 768 +PASS 색상 Escape closes and restores focus at 768 +PASS 색상 trigger toggles closed at 768 +PASS 색상 outside click closes at 768 +PASS 선스타일 Hover does not open at 768 +PASS 선스타일 overlay in viewport, not clipped or covered at 768 +PASS 선스타일 selected and expanded at 768 +PASS 선스타일 Escape closes and restores focus at 768 +PASS 선스타일 trigger toggles closed at 768 +PASS 선스타일 outside click closes at 768 +PASS 문자스타일 Hover does not open at 768 +PASS 문자스타일 overlay in viewport, not clipped or covered at 768 +PASS 문자스타일 selected and expanded at 768 +PASS 문자스타일 Escape closes and restores focus at 768 +PASS 문자스타일 trigger toggles closed at 768 +PASS 문자스타일 outside click closes at 768 +PASS 치수스타일 Hover does not open at 768 +PASS 치수스타일 overlay in viewport, not clipped or covered at 768 +PASS 치수스타일 selected and expanded at 768 +PASS 치수스타일 Escape closes and restores focus at 768 +PASS 치수스타일 trigger toggles closed at 768 +PASS 치수스타일 outside click closes at 768 +PASS composition wraps without page overflow or scaling at 1280 +PASS 레이어 Hover does not open at 1280 +PASS 레이어 overlay in viewport, not clipped or covered at 1280 +PASS 레이어 selected and expanded at 1280 +PASS 레이어 Escape closes and restores focus at 1280 +PASS 레이어 trigger toggles closed at 1280 +PASS 레이어 outside click closes at 1280 +PASS 색상 Hover does not open at 1280 +PASS 색상 overlay in viewport, not clipped or covered at 1280 +PASS 색상 selected and expanded at 1280 +PASS 색상 Escape closes and restores focus at 1280 +PASS 색상 trigger toggles closed at 1280 +PASS 색상 outside click closes at 1280 +PASS 선스타일 Hover does not open at 1280 +PASS 선스타일 overlay in viewport, not clipped or covered at 1280 +PASS 선스타일 selected and expanded at 1280 +PASS 선스타일 Escape closes and restores focus at 1280 +PASS 선스타일 trigger toggles closed at 1280 +PASS 선스타일 outside click closes at 1280 +PASS 문자스타일 Hover does not open at 1280 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1280 +PASS 문자스타일 selected and expanded at 1280 +PASS 문자스타일 Escape closes and restores focus at 1280 +PASS 문자스타일 trigger toggles closed at 1280 +PASS 문자스타일 outside click closes at 1280 +PASS 치수스타일 Hover does not open at 1280 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1280 +PASS 치수스타일 selected and expanded at 1280 +PASS 치수스타일 Escape closes and restores focus at 1280 +PASS 치수스타일 trigger toggles closed at 1280 +PASS 치수스타일 outside click closes at 1280 +PASS composition wraps without page overflow or scaling at 1440 +PASS 레이어 Hover does not open at 1440 +PASS 레이어 overlay in viewport, not clipped or covered at 1440 +PASS 레이어 selected and expanded at 1440 +PASS 레이어 Escape closes and restores focus at 1440 +PASS 레이어 trigger toggles closed at 1440 +PASS 레이어 outside click closes at 1440 +PASS 색상 Hover does not open at 1440 +PASS 색상 overlay in viewport, not clipped or covered at 1440 +PASS 색상 selected and expanded at 1440 +PASS 색상 Escape closes and restores focus at 1440 +PASS 색상 trigger toggles closed at 1440 +PASS 색상 outside click closes at 1440 +PASS 선스타일 Hover does not open at 1440 +PASS 선스타일 overlay in viewport, not clipped or covered at 1440 +PASS 선스타일 selected and expanded at 1440 +PASS 선스타일 Escape closes and restores focus at 1440 +PASS 선스타일 trigger toggles closed at 1440 +PASS 선스타일 outside click closes at 1440 +PASS 문자스타일 Hover does not open at 1440 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1440 +PASS 문자스타일 selected and expanded at 1440 +PASS 문자스타일 Escape closes and restores focus at 1440 +PASS 문자스타일 trigger toggles closed at 1440 +PASS 문자스타일 outside click closes at 1440 +PASS 치수스타일 Hover does not open at 1440 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1440 +PASS 치수스타일 selected and expanded at 1440 +PASS 치수스타일 Escape closes and restores focus at 1440 +PASS 치수스타일 trigger toggles closed at 1440 +PASS 치수스타일 outside click closes at 1440 +PASS keyboard opens layer menu and focuses current row +PASS keyboard moves to next layer row +PASS onLayerSelect callback exactly once +PASS layer selection appears, closes and restores focus +PASS selected layer retains original row Hover background +PASS onLayerVisibilityChange callback exactly once +PASS onLayerVisibilityChange toggles only its own state, menu remains open +PASS onLayerFreezeChange callback exactly once +PASS onLayerFreezeChange toggles only its own state, menu remains open +PASS onLayerLockChange callback exactly once +PASS onLayerLockChange toggles only its own state, menu remains open +PASS disabled layer selection and toggles blocked +PASS full color menu: seven palette chips, two user colors, modes, RGB and pick +PASS onColorSelect callback exactly once +PASS color palette updates displayed RGB and leaves menu open +PASS onColorModeChange callback exactly once +PASS ByBlock On and displayed mode +PASS onColorInput callback exactly once +PASS RGB commit clears mode and updates chip +PASS invalid RGB restores without callback +PASS onColorPick callback exactly once +PASS color pick closes and restores focus +PASS color changes leave layer, line, text and dimension values intact +PASS all original line rows and weights retained +PASS onLineTypeSelect callback exactly once +PASS selected line retains original row Hover and preview +PASS onLineWeightSelect callback exactly once +PASS onLineWeightValueChange callback exactly once +PASS onLineScaleChange callback exactly once +PASS line type, editable weight and scale update independently; menu stays open +PASS invalid scale restores, no callback +PASS 문자스타일 full two-item list retained +PASS onTextStyleSelect callback exactly once +PASS 문자스타일 selection displayed, closes, focus returns +PASS 치수스타일 full two-item list retained +PASS onDimensionStyleSelect callback exactly once +PASS 치수스타일 selection displayed, closes, focus returns +PASS 레이어 detail Hover uses existing text opacity +PASS onLayerDetail callback exactly once +PASS 레이어 detail closes, focus returns, no fabricated popup +PASS 색상 detail Hover uses existing text opacity +PASS onColorDetail callback exactly once +PASS 색상 detail closes, focus returns, no fabricated popup +PASS 선스타일 detail Hover uses existing text opacity +PASS onLineStyleDetail callback exactly once +PASS 선스타일 detail closes, focus returns, no fabricated popup +PASS 문자스타일 detail Hover uses existing text opacity +PASS onTextStyleDetail callback exactly once +PASS 문자스타일 detail closes, focus returns, no fabricated popup +PASS 치수스타일 detail Hover uses existing text opacity +PASS onDimensionStyleDetail callback exactly once +PASS 치수스타일 detail closes, focus returns, no fabricated popup +PASS opening another control leaves exactly one menu and preserves selection +PASS keyboard Tab enters the open color controls +PASS details opens existing 28px property Bar +PASS details opens existing 314px property panel with focus +PASS property Bar and panel share edited state +PASS property panel close returns focus +PASS property panel Escape returns focus +PASS narrow details panel keeps natural width and fits viewport +PASS all seven actionable controls Disabled +PASS Disabled controls block callbacks and overlays +PASS callback-free layer icons become readonly status images +PASS missing detail callback keeps safe no-op and menu open +PASS retained long layer scenario +PASS long layer name preserved with full title +PASS retained many layer scenario +PASS long layer list scrolls internally +PASS all 40 user colors accessible with palette scroll +PASS retained empty layer scenario +PASS Overview keeps one Header at 49px and 16:9 Stage +PASS Window Move Motion retains only nine 3x steps +PASS manager shows Dropdown group with the single Composed Controls page +PASS retired Dropdown links absent in manager +PASS no browser console or page errors +{"status":"PASS","checks":229,"errors":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-release-followup.txt b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-release-followup.txt new file mode 100644 index 0000000..e100fa9 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-release-followup.txt @@ -0,0 +1,30 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown group has only Composed Controls with original ID +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +PASS User line weight still updates displayed numeric value +PASS weight mode label preserves the shared numeric value +PASS details opens existing 28px property Bar +PASS details opens existing 314px property panel with focus +PASS property Bar and panel share edited state +PASS property panel weight edit appears in composed line field +PASS property panel close returns focus +PASS property panel Escape returns focus +PASS narrow details panel keeps natural width and fits viewport +PASS all seven actionable controls Disabled +PASS Disabled controls block callbacks and overlays +PASS callback-free layer icons become readonly status images +PASS missing detail callback keeps safe no-op and menu open +PASS retained long layer scenario +PASS long layer name preserved with full title +PASS retained many layer scenario +PASS long layer list scrolls internally +PASS all 40 user colors accessible with palette scroll +PASS retained empty layer scenario +PASS Overview keeps one Header at 49px and 16:9 Stage +PASS Window Move Motion retains only nine 3x steps +PASS manager shows Dropdown group with the single Composed Controls page +PASS retired Dropdown links absent in manager +PASS no browser console or page errors +{"status":"PASS","checks":29,"errors":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-02.txt b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-02.txt new file mode 100644 index 0000000..b42d5f6 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-02.txt @@ -0,0 +1,216 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown group has only Composed Controls with original ID +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +PASS render sw-header--detail-buttons +PASS render sw-header--overview +PASS render sw-header--interactive-states +PASS render sw-header--window-move-motion +PASS render sw-header--logo-slot +PASS render sw-header--document-dropdown +PASS render sw-header--responsive-more +PASS render sw-header--layer-detail-input +PASS render sw-header--property-panel +PASS render sw-header--property-panel-variants +PASS render sw-header--k-guide +PASS render sw-header--additional-hover +PASS render sw-header--property-bar +PASS render sw-header--dynamic-controls +PASS render sw-header--colorize +PASS render sw-header--composition +PASS render sw-header--property-panel-none +PASS render sw-header--property-panel-all +PASS render sw-header--property-panel-circle +PASS render sw-header--property-panel-expanded +PASS render sw-header--property-panel-compare +PASS render sw-header--property-shape-slot +PASS render sw-header--property-fields +PASS render sw-header--composed-controls +PASS one copy of five Dropdown fields and the details group +PASS composition wraps without page overflow or scaling at 390 +PASS 레이어 Hover does not open at 390 +PASS 레이어 overlay in viewport, not clipped or covered at 390 +PASS 레이어 selected and expanded at 390 +PASS 레이어 Escape closes and restores focus at 390 +PASS 레이어 trigger toggles closed at 390 +PASS 레이어 outside click closes at 390 +PASS 색상 Hover does not open at 390 +PASS 색상 overlay in viewport, not clipped or covered at 390 +PASS 색상 selected and expanded at 390 +PASS 색상 Escape closes and restores focus at 390 +PASS 색상 trigger toggles closed at 390 +PASS 색상 outside click closes at 390 +PASS 선스타일 Hover does not open at 390 +PASS 선스타일 overlay in viewport, not clipped or covered at 390 +PASS 선스타일 selected and expanded at 390 +PASS 선스타일 Escape closes and restores focus at 390 +PASS 선스타일 trigger toggles closed at 390 +PASS 선스타일 outside click closes at 390 +PASS 문자스타일 Hover does not open at 390 +PASS 문자스타일 overlay in viewport, not clipped or covered at 390 +PASS 문자스타일 selected and expanded at 390 +PASS 문자스타일 Escape closes and restores focus at 390 +PASS 문자스타일 trigger toggles closed at 390 +PASS 문자스타일 outside click closes at 390 +PASS 치수스타일 Hover does not open at 390 +PASS 치수스타일 overlay in viewport, not clipped or covered at 390 +PASS 치수스타일 selected and expanded at 390 +PASS 치수스타일 Escape closes and restores focus at 390 +PASS 치수스타일 trigger toggles closed at 390 +PASS 치수스타일 outside click closes at 390 +PASS composition wraps without page overflow or scaling at 768 +PASS 레이어 Hover does not open at 768 +PASS 레이어 overlay in viewport, not clipped or covered at 768 +PASS 레이어 selected and expanded at 768 +PASS 레이어 Escape closes and restores focus at 768 +PASS 레이어 trigger toggles closed at 768 +PASS 레이어 outside click closes at 768 +PASS 색상 Hover does not open at 768 +PASS 색상 overlay in viewport, not clipped or covered at 768 +PASS 색상 selected and expanded at 768 +PASS 색상 Escape closes and restores focus at 768 +PASS 색상 trigger toggles closed at 768 +PASS 색상 outside click closes at 768 +PASS 선스타일 Hover does not open at 768 +PASS 선스타일 overlay in viewport, not clipped or covered at 768 +PASS 선스타일 selected and expanded at 768 +PASS 선스타일 Escape closes and restores focus at 768 +PASS 선스타일 trigger toggles closed at 768 +PASS 선스타일 outside click closes at 768 +PASS 문자스타일 Hover does not open at 768 +PASS 문자스타일 overlay in viewport, not clipped or covered at 768 +PASS 문자스타일 selected and expanded at 768 +PASS 문자스타일 Escape closes and restores focus at 768 +PASS 문자스타일 trigger toggles closed at 768 +PASS 문자스타일 outside click closes at 768 +PASS 치수스타일 Hover does not open at 768 +PASS 치수스타일 overlay in viewport, not clipped or covered at 768 +PASS 치수스타일 selected and expanded at 768 +PASS 치수스타일 Escape closes and restores focus at 768 +PASS 치수스타일 trigger toggles closed at 768 +PASS 치수스타일 outside click closes at 768 +PASS composition wraps without page overflow or scaling at 1280 +PASS 레이어 Hover does not open at 1280 +PASS 레이어 overlay in viewport, not clipped or covered at 1280 +PASS 레이어 selected and expanded at 1280 +PASS 레이어 Escape closes and restores focus at 1280 +PASS 레이어 trigger toggles closed at 1280 +PASS 레이어 outside click closes at 1280 +PASS 색상 Hover does not open at 1280 +PASS 색상 overlay in viewport, not clipped or covered at 1280 +PASS 색상 selected and expanded at 1280 +PASS 색상 Escape closes and restores focus at 1280 +PASS 색상 trigger toggles closed at 1280 +PASS 색상 outside click closes at 1280 +PASS 선스타일 Hover does not open at 1280 +PASS 선스타일 overlay in viewport, not clipped or covered at 1280 +PASS 선스타일 selected and expanded at 1280 +PASS 선스타일 Escape closes and restores focus at 1280 +PASS 선스타일 trigger toggles closed at 1280 +PASS 선스타일 outside click closes at 1280 +PASS 문자스타일 Hover does not open at 1280 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1280 +PASS 문자스타일 selected and expanded at 1280 +PASS 문자스타일 Escape closes and restores focus at 1280 +PASS 문자스타일 trigger toggles closed at 1280 +PASS 문자스타일 outside click closes at 1280 +PASS 치수스타일 Hover does not open at 1280 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1280 +PASS 치수스타일 selected and expanded at 1280 +PASS 치수스타일 Escape closes and restores focus at 1280 +PASS 치수스타일 trigger toggles closed at 1280 +PASS 치수스타일 outside click closes at 1280 +PASS composition wraps without page overflow or scaling at 1440 +PASS 레이어 Hover does not open at 1440 +PASS 레이어 overlay in viewport, not clipped or covered at 1440 +PASS 레이어 selected and expanded at 1440 +PASS 레이어 Escape closes and restores focus at 1440 +PASS 레이어 trigger toggles closed at 1440 +PASS 레이어 outside click closes at 1440 +PASS 색상 Hover does not open at 1440 +PASS 색상 overlay in viewport, not clipped or covered at 1440 +PASS 색상 selected and expanded at 1440 +PASS 색상 Escape closes and restores focus at 1440 +PASS 색상 trigger toggles closed at 1440 +PASS 색상 outside click closes at 1440 +PASS 선스타일 Hover does not open at 1440 +PASS 선스타일 overlay in viewport, not clipped or covered at 1440 +PASS 선스타일 selected and expanded at 1440 +PASS 선스타일 Escape closes and restores focus at 1440 +PASS 선스타일 trigger toggles closed at 1440 +PASS 선스타일 outside click closes at 1440 +PASS 문자스타일 Hover does not open at 1440 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1440 +PASS 문자스타일 selected and expanded at 1440 +PASS 문자스타일 Escape closes and restores focus at 1440 +PASS 문자스타일 trigger toggles closed at 1440 +PASS 문자스타일 outside click closes at 1440 +PASS 치수스타일 Hover does not open at 1440 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1440 +PASS 치수스타일 selected and expanded at 1440 +PASS 치수스타일 Escape closes and restores focus at 1440 +PASS 치수스타일 trigger toggles closed at 1440 +PASS 치수스타일 outside click closes at 1440 +PASS keyboard opens layer menu and focuses current row +PASS keyboard moves to next layer row +PASS onLayerSelect callback exactly once +PASS layer selection appears, closes and restores focus +PASS onLayerVisibilityChange callback exactly once +PASS onLayerVisibilityChange toggles only its own state, menu remains open +PASS onLayerFreezeChange callback exactly once +PASS onLayerFreezeChange toggles only its own state, menu remains open +PASS onLayerLockChange callback exactly once +PASS onLayerLockChange toggles only its own state, menu remains open +PASS disabled layer selection and toggles blocked +PASS full color menu: seven palette chips, two user colors, modes, RGB and pick +PASS onColorSelect callback exactly once +PASS color palette updates displayed RGB and leaves menu open +PASS onColorModeChange callback exactly once +PASS ByBlock On and displayed mode +PASS onColorInput callback exactly once +PASS RGB commit clears mode and updates chip +PASS invalid RGB restores without callback +PASS onColorPick callback exactly once +PASS color pick closes and restores focus +PASS color changes leave layer, line, text and dimension values intact +PASS all original line rows and weights retained +PASS onLineTypeSelect callback exactly once +PASS onLineWeightSelect callback exactly once +PASS onLineWeightValueChange callback exactly once +PASS onLineScaleChange callback exactly once +PASS line type, editable weight and scale update independently; menu stays open +PASS invalid scale restores, no callback +PASS 문자스타일 full two-item list retained +PASS onTextStyleSelect callback exactly once +PASS 문자스타일 selection displayed, closes, focus returns +PASS 치수스타일 full two-item list retained +PASS onDimensionStyleSelect callback exactly once +PASS 치수스타일 selection displayed, closes, focus returns +PASS 레이어 detail Hover uses existing text opacity +PASS onLayerDetail callback exactly once +PASS 레이어 detail closes, focus returns, no fabricated popup +PASS 색상 detail Hover uses existing text opacity +PASS onColorDetail callback exactly once +PASS 색상 detail closes, focus returns, no fabricated popup +PASS 선스타일 detail Hover uses existing text opacity +PASS onLineStyleDetail callback exactly once +PASS 선스타일 detail closes, focus returns, no fabricated popup +PASS 문자스타일 detail Hover uses existing text opacity +PASS onTextStyleDetail callback exactly once +PASS 문자스타일 detail closes, focus returns, no fabricated popup +PASS 치수스타일 detail Hover uses existing text opacity +PASS onDimensionStyleDetail callback exactly once +PASS 치수스타일 detail closes, focus returns, no fabricated popup +PASS opening another control leaves exactly one menu and preserves selection +PASS keyboard Tab enters the open color controls +PASS details opens existing 28px property Bar +FAIL details opens existing 314px property panel with focus undefined +FAIL property Bar and panel share edited state undefined +PASS property panel close returns focus +PASS property panel Escape returns focus +PASS all seven actionable controls Disabled +FAIL callback-free layer icons become readonly status images undefined +PASS missing detail callback keeps safe no-op and menu open +FAIL suite completes "locator.selectOption: Timeout 6000ms exceeded.\nCall log:\n\u001b[2m - waiting for getByLabel('목록 데이터', { exact: true })\u001b[22m\n\n at D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:194:54" +{"status":"FAIL","checks":215,"errors":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-03.txt b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-03.txt new file mode 100644 index 0000000..d46889e --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke-run-03.txt @@ -0,0 +1,25 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown group has only Composed Controls with original ID +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +PASS details opens existing 28px property Bar +FAIL details opens existing 314px property panel with focus {"width":314,"focused":false,"active":""} +FAIL property Bar and panel share edited state "4.0526" +PASS property panel close returns focus +PASS property panel Escape returns focus +PASS all seven actionable controls Disabled +PASS callback-free layer icons become readonly status images +PASS missing detail callback keeps safe no-op and menu open +PASS retained long layer scenario +PASS long layer name preserved with full title +PASS retained many layer scenario +PASS long layer list scrolls internally +PASS all 40 user colors accessible with palette scroll +PASS retained empty layer scenario +PASS Overview keeps one Header at 49px and 16:9 Stage +PASS Window Move Motion retains only nine 3x steps +PASS manager shows Dropdown group with the single Composed Controls page +PASS retired Dropdown links absent in manager +PASS no browser console or page errors +{"status":"FAIL","checks":24,"errors":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke.txt b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke.txt new file mode 100644 index 0000000..0c09a25 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/browser-smoke.txt @@ -0,0 +1,7 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown group has only Composed Controls with original ID +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +FAIL suite completes "page.goto: net::ERR_NETWORK_ACCESS_DENIED at http://127.0.0.1:13170/iframe.html?id=sw-header--detail-buttons&viewMode=story\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:13170/iframe.html?id=sw-header--detail-buttons&viewMode=story\", waiting until \"load\"\u001b[22m\n\n at go (D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:59:16)\n at D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:65:11" +{"status":"FAIL","checks":6,"errors":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/after-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/final/after-full-index.json new file mode 100644 index 0000000..cfdff8b --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/final/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1280.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1280.png new file mode 100644 index 0000000..2bac02e Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1280.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1440.png new file mode 100644 index 0000000..171df06 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-390.png new file mode 100644 index 0000000..115d2f8 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-768.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-768.png new file mode 100644 index 0000000..cbca39c Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-768.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-manager.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-manager.png new file mode 100644 index 0000000..ebc728f Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-manager.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel-390.png new file mode 100644 index 0000000..90e2ebb Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel.png b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel.png new file mode 100644 index 0000000..b6dfec2 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/composed-property-panel.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-1440.png new file mode 100644 index 0000000..8ea7244 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-390.png new file mode 100644 index 0000000..c29e69d Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-0-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-1440.png new file mode 100644 index 0000000..47ccc1a Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-390.png new file mode 100644 index 0000000..75deee7 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-1-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-1440.png new file mode 100644 index 0000000..7bc2bae Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-390.png new file mode 100644 index 0000000..0fed328 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-2-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-1440.png new file mode 100644 index 0000000..3832d95 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-390.png new file mode 100644 index 0000000..850187d Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-3-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-1440.png new file mode 100644 index 0000000..43ed804 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-390.png b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-390.png new file mode 100644 index 0000000..6ad14d9 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/final/overlay-4-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/result.json b/docs/sw/storybook-dropdown-consolidation-qa/final/result.json new file mode 100644 index 0000000..d5ff152 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/final/result.json @@ -0,0 +1,1747 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown group has only Composed Controls with original ID", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--layer-detail-input", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-variants", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--additional-hover", + "status": "PASS" + }, + { + "name": "render sw-header--property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--dynamic-controls", + "status": "PASS" + }, + { + "name": "render sw-header--colorize", + "status": "PASS" + }, + { + "name": "render sw-header--composition", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-none", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-all", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-circle", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-expanded", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "render sw-header--property-shape-slot", + "status": "PASS" + }, + { + "name": "render sw-header--property-fields", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 287.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 567.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 329.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 511.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 370.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 562.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 413.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 513.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 413.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 513.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 254.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 534.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 254.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 436.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 295.53125, + "w": 473.1875, + "h": 192, + "right": 474.234375, + "bottom": 487.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 296.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 396.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 296.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 396.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 249.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 529.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 249.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 431.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 386.40625, + "y": 248.890625, + "w": 473.1875, + "h": 192, + "right": 859.59375, + "bottom": 440.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 249.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 349.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 249.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 349.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 251.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 531.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 251.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 433.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 468, + "y": 250.5, + "w": 473.1875, + "h": 192, + "right": 941.1875, + "bottom": 442.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 251.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 351.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 251.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 351.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "selected layer retains original row Hover background", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "selected line retains original row Hover and preview", + "status": "PASS" + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows Dropdown group with the single Composed Controls page", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/final/story-inventory.json b/docs/sw/storybook-dropdown-consolidation-qa/final/story-inventory.json new file mode 100644 index 0000000..b645faf --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/final/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview-smoke.txt b/docs/sw/storybook-dropdown-consolidation-qa/overview-smoke.txt new file mode 100644 index 0000000..d0034b1 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/overview-smoke.txt @@ -0,0 +1,55 @@ +PASS 24 retained Story IDs, names and tags; only approved Dropdown retirements +PASS retained non-Overview declarations byte-identical; relocated composition separately verified +PASS retired Dropdown IDs absent +PASS package production source untouched +PASS 16:9 fitted to both Inner dimensions at 1920x1080 +PASS 16:9 fitted to both Inner dimensions at 1440x900 +PASS 16:9 fitted to both Inner dimensions at 1280x720 +PASS 16:9 fitted to both Inner dimensions at 768x600 +PASS 16:9 fitted to both Inner dimensions at 390x844 +PASS 16:9 fitted to both Inner dimensions at 1000x500 +PASS one Header and no duplicate fixed Figma specimen +PASS document selection updates Header and Callback +PASS layer selection updates shared data +PASS existing layer Detail callback closes list +PASS color selection invokes host callback +PASS line selection updates Header +PASS ByLayer weight mode does not turn numeric property into a mode string +PASS text style selection updates Header +PASS dimension style selection updates Header +PASS opening another dropdown closes the previous one +PASS Escape closes Header dropdown +PASS outside click closes Header dropdown +PASS Bar Enter commits state +PASS Bar validates min=0 +PASS Bar Escape cancels edit +PASS Header opens panel with same Bar value +PASS numeric weight property remains numeric after ByLayer mode +PASS Header layer value shared with panel +PASS panel edit updates the Bar +PASS panel number validation rejects negative radius +PASS panel Layer dropdown updates Header shared value +PASS panel line dropdown updates Header shared value +PASS panel color dropdown updates Header shared value +PASS panel RGB validation rejects out-of-range value +PASS gauge keyboard editing commits host state +PASS first Escape cancels draft and retains panel +PASS next Escape closes panel and restores Header focus +PASS panel Close button restores focus +PASS external Props update Bar +PASS Bar ReadOnly +PASS Bar Disabled +PASS dynamic Bar field added +PASS dynamic field shared with panel +PASS dynamic field removed from both +PASS shape Slot can be empty without changing panel structure +PASS original panel size none:314x256 +PASS original panel size all:314x361 +PASS original panel size circle:314x658 +PASS original panel size expanded:314x754 +PASS expanded popup bottom accessible through internal scroll +PASS small Inner reaches full popup bottom with native Header and popup dimensions +PASS narrow popup Escape restores More focus +PASS actual Storybook manager iframe fits its own Inner +PASS no browser errors +{"status":"PASS","checks":54,"failures":[]} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/after-index.json b/docs/sw/storybook-dropdown-consolidation-qa/overview/after-index.json new file mode 100644 index 0000000..e687b8e --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/overview/after-index.json @@ -0,0 +1,362 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } +] diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/before-index.json b/docs/sw/storybook-dropdown-consolidation-qa/overview/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/overview/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/chrome-result.json b/docs/sw/storybook-dropdown-consolidation-qa/overview/chrome-result.json new file mode 100644 index 0000000..849e3ff --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/overview/chrome-result.json @@ -0,0 +1,669 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "24 retained Story IDs, names and tags; only approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "retained non-Overview declarations byte-identical; relocated composition separately verified", + "status": "PASS" + }, + { + "name": "retired Dropdown IDs absent", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--layer-detail-input", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot", + "sw-header--property-fields" + ], + "status": "PASS" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/manager-story-order.json b/docs/sw/storybook-dropdown-consolidation-qa/overview/manager-story-order.json new file mode 100644 index 0000000..b6bcebb --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/overview/manager-story-order.json @@ -0,0 +1,24 @@ +[ + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--layer-detail-input", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot", + "sw-header--property-fields" +] diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-expanded.png b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-expanded.png new file mode 100644 index 0000000..9afb4cf Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-expanded.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-scrolled.png b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-scrolled.png new file mode 100644 index 0000000..dc5d847 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after-scrolled.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after.png b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after.png new file mode 100644 index 0000000..8a64869 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-after.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-manager.png b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-manager.png new file mode 100644 index 0000000..83b8a9f Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-manager.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-narrow.png b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-narrow.png new file mode 100644 index 0000000..134f239 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/overview/overview-narrow.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/preservation-run-02/preservation-result.json b/docs/sw/storybook-dropdown-consolidation-qa/preservation-run-02/preservation-result.json new file mode 100644 index 0000000..fcc8479 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/preservation-run-02/preservation-result.json @@ -0,0 +1,114 @@ +{ + "mode": "preservation", + "browser": "155.0.8059.80", + "checks": [ + { + "name": "required responsive width 390", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 768", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1280", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "required responsive width 1440", + "status": "PASS", + "data": { + "height": 49, + "overflow": 0, + "documentOverflow": 0 + } + }, + { + "name": "preserve property panel none", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 256 + } + }, + { + "name": "preserve property panel all", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 361 + } + }, + { + "name": "preserve property panel circle", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 658 + } + }, + { + "name": "preserve property panel expanded", + "status": "PASS", + "data": { + "x": 360, + "y": 204.5, + "width": 314, + "height": 754 + } + }, + { + "name": "preserve window motion 1400ms", + "status": "PASS" + }, + { + "name": "window motion leave clears animations", + "status": "PASS" + }, + { + "name": "preserve K guide animation", + "status": "PASS" + }, + { + "name": "K guide leave closes", + "status": "PASS" + }, + { + "name": "preserve Colorize size", + "status": "PASS" + }, + { + "name": "preserve editable Input", + "status": "PASS" + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "styles": {}, + "status": "PASS" +} \ No newline at end of file diff --git a/docs/sw/storybook-dropdown-consolidation-qa/preservation/preservation-result.json b/docs/sw/storybook-dropdown-consolidation-qa/preservation/preservation-result.json new file mode 100644 index 0000000..b1ef1a2 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/preservation/preservation-result.json @@ -0,0 +1,14 @@ +{ + "mode": "preservation", + "browser": "155.0.8059.80", + "checks": [ + { + "name": "suite completed", + "status": "FAIL", + "data": "page.goto: net::ERR_NETWORK_ACCESS_DENIED at http://127.0.0.1:13169/iframe.html?id=sw-header--composition&viewMode=story\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:13169/iframe.html?id=sw-header--composition&viewMode=story\", waiting until \"load\"\u001b[22m\n\n at goto (D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\detail-buttons.browser.mjs:26:14)\n at D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\detail-buttons.browser.mjs:46:11" + } + ], + "errors": [], + "styles": {}, + "status": "FAIL" +} \ No newline at end of file diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/after-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/after-full-index.json new file mode 100644 index 0000000..cfdff8b --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-manager.png b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-manager.png new file mode 100644 index 0000000..ebc728f Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-manager.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel-390.png b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel-390.png new file mode 100644 index 0000000..365d0ed Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel.png b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel.png new file mode 100644 index 0000000..d9bd514 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/composed-property-panel.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/result.json b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/result.json new file mode 100644 index 0000000..4eb7918 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/result.json @@ -0,0 +1,177 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown group has only Composed Controls with original ID", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "User line weight still updates displayed numeric value", + "status": "PASS" + }, + { + "name": "weight mode label preserves the shared numeric value", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows Dropdown group with the single Composed Controls page", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineWeightSelect(w-bylayer)", + "onLineWeightSelect(weight, 0.25)", + "lineStyleOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [], + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/release-followup/story-inventory.json b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/story-inventory.json new file mode 100644 index 0000000..b645faf --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/release-followup/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/result.json b/docs/sw/storybook-dropdown-consolidation-qa/result.json new file mode 100644 index 0000000..9a515e8 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/result.json @@ -0,0 +1,35 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown group has only Composed Controls with original ID", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "suite completes", + "status": "FAIL", + "data": "page.goto: net::ERR_NETWORK_ACCESS_DENIED at http://127.0.0.1:13170/iframe.html?id=sw-header--detail-buttons&viewMode=story\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:13170/iframe.html?id=sw-header--detail-buttons&viewMode=story\", waiting until \"load\"\u001b[22m\n\n at go (D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:59:16)\n at D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:65:11" + } + ], + "errors": [], + "callbacks": [], + "geometry": [], + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/after-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/run-02/after-full-index.json new file mode 100644 index 0000000..cfdff8b --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-02/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1280.png b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1280.png new file mode 100644 index 0000000..2bac02e Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1280.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1440.png b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1440.png new file mode 100644 index 0000000..171df06 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-1440.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-390.png b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-390.png new file mode 100644 index 0000000..115d2f8 Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-390.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-768.png b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-768.png new file mode 100644 index 0000000..cbca39c Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/run-02/composed-768.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/result.json b/docs/sw/storybook-dropdown-consolidation-qa/run-02/result.json new file mode 100644 index 0000000..dd3d2c6 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-02/result.json @@ -0,0 +1,1663 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown group has only Composed Controls with original ID", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--layer-detail-input", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-variants", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--additional-hover", + "status": "PASS" + }, + { + "name": "render sw-header--property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--dynamic-controls", + "status": "PASS" + }, + { + "name": "render sw-header--colorize", + "status": "PASS" + }, + { + "name": "render sw-header--composition", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-none", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-all", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-circle", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-expanded", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "render sw-header--property-shape-slot", + "status": "PASS" + }, + { + "name": "render sw-header--property-fields", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 287.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 567.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 329.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 511.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 370.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 562.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 413.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 513.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 413.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 513.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 254.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 534.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 254.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 436.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 295.53125, + "w": 473.1875, + "h": 192, + "right": 474.234375, + "bottom": 487.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 296.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 396.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 296.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 396.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 249.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 529.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 249.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 431.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 386.40625, + "y": 248.890625, + "w": 473.1875, + "h": 192, + "right": 859.59375, + "bottom": 440.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 249.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 349.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 249.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 349.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 251.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 531.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 251.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 433.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 468, + "y": 250.5, + "w": 473.1875, + "h": 192, + "right": 941.1875, + "bottom": 442.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 251.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 351.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 251.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 351.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "FAIL" + }, + { + "name": "property Bar and panel share edited state", + "status": "FAIL" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "FAIL" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "suite completes", + "status": "FAIL", + "data": "locator.selectOption: Timeout 6000ms exceeded.\nCall log:\n\u001b[2m - waiting for getByLabel('목록 데이터', { exact: true })\u001b[22m\n\n at D:\\디자인시스템\\HMDesign-SW\\packages\\sw\\tests\\dropdown-consolidation.browser.mjs:194:54" + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-02/story-inventory.json b/docs/sw/storybook-dropdown-consolidation-qa/run-02/story-inventory.json new file mode 100644 index 0000000..b645faf --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-02/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-03/after-full-index.json b/docs/sw/storybook-dropdown-consolidation-qa/run-03/after-full-index.json new file mode 100644 index 0000000..cfdff8b --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-03/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-03/composed-manager.png b/docs/sw/storybook-dropdown-consolidation-qa/run-03/composed-manager.png new file mode 100644 index 0000000..ebc728f Binary files /dev/null and b/docs/sw/storybook-dropdown-consolidation-qa/run-03/composed-manager.png differ diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-03/result.json b/docs/sw/storybook-dropdown-consolidation-qa/run-03/result.json new file mode 100644 index 0000000..4e96e4e --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-03/result.json @@ -0,0 +1,140 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown group has only Composed Controls with original ID", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "FAIL", + "data": { + "width": 314, + "focused": false, + "active": "" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "FAIL", + "data": "4.0526" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows Dropdown group with the single Composed Controls page", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [], + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/run-03/story-inventory.json b/docs/sw/storybook-dropdown-consolidation-qa/run-03/story-inventory.json new file mode 100644 index 0000000..b645faf --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/run-03/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/story-inventory.json b/docs/sw/storybook-dropdown-consolidation-qa/story-inventory.json new file mode 100644 index 0000000..b645faf --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header/Dropdown", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-final.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-final.txt new file mode 100644 index 0000000..69e7eef --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-final.txt @@ -0,0 +1,422 @@ + +> hm-design-system-poc@0.1.0 prebuild-storybook +> npm run check:theme-defaults && npm run build:packages + + +> hm-design-system-poc@0.1.0 check:theme-defaults +> node scripts/theme-defaults.mjs --check + +Theme defaults: 92 JSON colors / 94 contract defaults; generated outputs match + +> hm-design-system-poc@0.1.0 build:packages +> npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw + + +> hm-design-system-poc@0.1.0 build:org-chart +> npm run build -w @hm-design/org-chart + + +> @hm-design/org-chart@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 2,450.52 kB │ gzip: 1,648.92 kB + +✓ built in 99ms +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/orgchart.browser.js 2,456.85 kB │ gzip: 1,649.32 kB + +✓ built in 82ms + +> hm-design-system-poc@0.1.0 build:ui +> npm run build -w @hm-design/ui + + +> @hm-design/ui@0.1.0 build +> node ../../scripts/build-package.mjs ui + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/theme/index.js 25.18 kB │ gzip: 3.98 kB +dist/index.js 120.43 kB │ gzip: 21.30 kB + +✓ built in 56ms + +> hm-design-system-poc@0.1.0 build:center-graphic +> npm run build -w @hm-design/center-graphic + + +> @hm-design/center-graphic@0.1.0 build +> node ../../scripts/build-package.mjs center-graphic + +vite v8.3.0 building client environment for production... +transforming... +✓ 145 modules transformed. +rendering chunks... +computing gzip size... +dist/style.css 88.68 kB │ gzip: 20.14 kB +dist/reference.js 0.65 kB │ gzip: 0.23 kB +dist/index.js 1.86 kB │ gzip: 0.84 kB +dist/FacilityBatch-PtW_fbvn.js 1,675.84 kB │ gzip: 276.13 kB + +✓ built in 125ms + +> hm-design-system-poc@0.1.0 build:org-chart-react +> npm run build -w @hm-design/org-chart-react + + +> @hm-design/org-chart-react@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 5 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 0.09 kB │ gzip: 0.09 kB +dist/hm-dialog.js 4.39 kB │ gzip: 1.80 kB +dist/OrgChart-DZlWXlj3.js 10.50 kB │ gzip: 2.63 kB + +✓ built in 34ms + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 125ms + +> hm-design-system-poc@0.1.0 build-storybook +> storybook build -o storybook-static --disable-telemetry + + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| +• Copying static files: themes at storybook-static\themes +| Vite vite v8.3.0 building client environment for production... +transforming... +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3104 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/sw-header-dropdown-BSCl7vok.css +| 0.54 kB │ gzip: 0.25 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-CUYjY3HM.css +| 73.13 kB │ gzip: 13.58 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-CM3jaXUy.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-ApneaDex.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/sw-header-dropdown.stories-Br2KV7lK.js +| 0.45 kB │ gzip: 0.32 kB +| storybook-static/assets/layout-grid-nh8HaGyO.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-C1ba_qaZ.js +| 0.58 kB │ gzip: 0.36 kB +| storybook-static/assets/org-chart-full-composition.stories-GPbb_d5m.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-DCQDpc-7.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-DlGcicb6.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-BcjI-E_q.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-BzJ-mgGU.js +| 0.76 kB │ gzip: 0.40 kB +| storybook-static/assets/center-information.stories-6HqwRiNF.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-CboGruP9.js +| 0.97 kB │ gzip: 0.65 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-b8Wy3Ztf.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-BPU5gFtT.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-BwbprX0H.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-rTNYqFGa.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-rC1YSGB-.js +| 1.90 kB │ gzip: 1.08 kB +| storybook-static/assets/loading-screen.stories-DM7ZiXRM.js +| 1.96 kB │ gzip: 1.04 kB +| storybook-static/assets/story-board-BS1Lr-yO.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-DsJBAwBV.js +| 2.10 kB │ gzip: 1.00 kB +| storybook-static/assets/story-page-Mm2B99xD.js +| 2.13 kB │ gzip: 0.70 kB +| storybook-static/assets/verification-state-e4eWHzJv.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-BSYsBygc.js +| 2.34 kB │ gzip: 1.09 kB +| storybook-static/assets/alert-dialog.stories-DnPRvVvA.js +| 2.48 kB │ gzip: 1.08 kB +| storybook-static/assets/separator.stories-DS9FQl-a.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-DhPAoBTd.js +| 2.58 kB │ gzip: 1.29 kB +| storybook-static/assets/badge.stories-BFD0yR97.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-CRsgQDV8.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-gqXx-G7G.js +| 2.70 kB │ gzip: 1.15 kB +| storybook-static/assets/calendar.stories-D-j6PsiQ.js +| 2.79 kB │ gzip: 1.31 kB +| storybook-static/assets/switch.stories-DloSC1FQ.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-CpMdp9Z2.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-C6ouCdKo.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-D5aDdCPk.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-CbpxFrLA.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-BsyQhoN0.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-kgdclnC3.js +| 3.06 kB │ gzip: 1.51 kB +| storybook-static/assets/typography.stories-BuPkVjvt.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-BWacQvjk.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-BU4brxEo.js +| 3.16 kB │ gzip: 1.30 kB +| storybook-static/assets/label.stories-Co7JdTv_.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-BVS88QON.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-BaSmHqM9.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-CY98TK9E.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-B9kjzvNC.js +| 3.30 kB │ gzip: 1.45 kB +| storybook-static/assets/page-header.stories-DxMFUAUK.js +| 3.32 kB │ gzip: 1.31 kB +| storybook-static/assets/menubar.stories-BZAo0241.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-CP2PC1uv.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-DZnWZVER.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-Dgdi_xO9.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-nRLRzV3s.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-BzPPdTqn.js +| 3.52 kB │ gzip: 1.61 kB +| storybook-static/assets/breadcrumb.stories-CkfH0o7s.js +| 3.55 kB │ gzip: 1.52 kB +| storybook-static/assets/card.stories-B9eBmSdv.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-y8VEFDG7.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-Bfn9K0Nk.js +| 3.96 kB │ gzip: 1.46 kB +| storybook-static/assets/specimens-CfJadLKx.js +| 4.13 kB │ gzip: 1.36 kB +| storybook-static/assets/sonner.stories-C9ye_86f.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-D4QqZExp.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-CXxvbfRt.js +| 4.45 kB │ gzip: 1.69 kB +| storybook-static/assets/slider.stories-BaEcELmo.js +| 4.53 kB │ gzip: 1.86 kB +| storybook-static/assets/org-chart-page-previews-B9UHOhrw.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-CFBnwgrn.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-B5WhBKHK.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-SuBClsGw.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-CESx8Ovx.js +| 5.03 kB │ gzip: 2.07 kB +| storybook-static/assets/accordion.stories-C3OMv2ip.js +| 5.05 kB │ gzip: 1.82 kB +| storybook-static/assets/OrgChart-DZlWXlj3-StGMIe9Z.js +| 5.35 kB │ gzip: 1.95 kB +| storybook-static/assets/dialog.stories-DGXlEQmD.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-DdsH4L9p.js +| 5.81 kB │ gzip: 2.13 kB +| storybook-static/assets/data-table.stories-DRD5_UXH.js +| 5.92 kB │ gzip: 2.52 kB +| storybook-static/assets/textarea.stories-C4WSH5RY.js +| 5.99 kB │ gzip: 2.44 kB +| storybook-static/assets/runtime-loader.stories-BTlqK2s3.js +| 6.18 kB │ gzip: 2.45 kB +| storybook-static/assets/toggle-group.stories-CbADHYlr.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-BIkica6o.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-D8c2hiIQ.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-C3Bu4-JC.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-BkbEXPXb.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-DY26ETCZ.js +| 12.54 kB │ gzip: 4.16 kB +| storybook-static/assets/designer-theme.stories-DcOn8dQk.js +| 14.62 kB │ gzip: 5.52 kB +| storybook-static/assets/gnb.stories-DoBpBpnv.js +| 16.56 kB │ gzip: 5.83 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-IcrUvnU4.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-BsHMb7vS.js +| 23.84 kB │ gzip: 6.25 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-BzbQhxD8.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-CjNJ1pKM.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-BvgwGLVw.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-8X6qo9xO.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-BN0C1_7E.js +| 755.22 kB │ gzip: 356.75 kB +| storybook-static/assets/reference-CABTZJen.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-yx4EHWsw.js +| 1,754.32 kB │ gzip: 503.66 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 8.01s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 7.0s of this 8.0s +| build (88%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (63%, 5.0s, 3104 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (20 calls) +| - plugin vite:css transform (20 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-release.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-release.txt new file mode 100644 index 0000000..92f343d --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build-release.txt @@ -0,0 +1,422 @@ + +> hm-design-system-poc@0.1.0 prebuild-storybook +> npm run check:theme-defaults && npm run build:packages + + +> hm-design-system-poc@0.1.0 check:theme-defaults +> node scripts/theme-defaults.mjs --check + +Theme defaults: 92 JSON colors / 94 contract defaults; generated outputs match + +> hm-design-system-poc@0.1.0 build:packages +> npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw + + +> hm-design-system-poc@0.1.0 build:org-chart +> npm run build -w @hm-design/org-chart + + +> @hm-design/org-chart@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 2,450.52 kB │ gzip: 1,648.92 kB + +✓ built in 108ms +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/orgchart.browser.js 2,456.85 kB │ gzip: 1,649.32 kB + +✓ built in 91ms + +> hm-design-system-poc@0.1.0 build:ui +> npm run build -w @hm-design/ui + + +> @hm-design/ui@0.1.0 build +> node ../../scripts/build-package.mjs ui + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/theme/index.js 25.18 kB │ gzip: 3.98 kB +dist/index.js 120.43 kB │ gzip: 21.30 kB + +✓ built in 63ms + +> hm-design-system-poc@0.1.0 build:center-graphic +> npm run build -w @hm-design/center-graphic + + +> @hm-design/center-graphic@0.1.0 build +> node ../../scripts/build-package.mjs center-graphic + +vite v8.3.0 building client environment for production... +transforming... +✓ 145 modules transformed. +rendering chunks... +computing gzip size... +dist/style.css 88.68 kB │ gzip: 20.14 kB +dist/reference.js 0.65 kB │ gzip: 0.23 kB +dist/index.js 1.86 kB │ gzip: 0.84 kB +dist/FacilityBatch-PtW_fbvn.js 1,675.84 kB │ gzip: 276.13 kB + +✓ built in 120ms + +> hm-design-system-poc@0.1.0 build:org-chart-react +> npm run build -w @hm-design/org-chart-react + + +> @hm-design/org-chart-react@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 5 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 0.09 kB │ gzip: 0.09 kB +dist/hm-dialog.js 4.39 kB │ gzip: 1.80 kB +dist/OrgChart-DZlWXlj3.js 10.50 kB │ gzip: 2.63 kB + +✓ built in 35ms + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 145ms + +> hm-design-system-poc@0.1.0 build-storybook +> storybook build -o storybook-static --disable-telemetry + + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| +• Copying static files: themes at storybook-static\themes +| Vite vite v8.3.0 building client environment for production... +transforming... +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3104 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/sw-header-dropdown-BSCl7vok.css +| 0.54 kB │ gzip: 0.25 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-CUYjY3HM.css +| 73.13 kB │ gzip: 13.58 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-C2Ijtbuw.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-DpiKBR5R.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/sw-header-dropdown.stories-CwPUbLU3.js +| 0.45 kB │ gzip: 0.32 kB +| storybook-static/assets/layout-grid-DoBd3gNc.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-_Mzf7EWp.js +| 0.58 kB │ gzip: 0.36 kB +| storybook-static/assets/org-chart-full-composition.stories-C8ILQ5mU.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-GdxcPbhX.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-wqlPV7Gm.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-DwTwWkL3.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-CiewzCY0.js +| 0.76 kB │ gzip: 0.39 kB +| storybook-static/assets/center-information.stories-DBOI5xJm.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-OpQYHOa5.js +| 0.97 kB │ gzip: 0.64 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-DRm0gD4S.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-DePzsuN4.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-2oHAoXvE.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-CduR6VWP.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-1va29H8K.js +| 1.90 kB │ gzip: 1.07 kB +| storybook-static/assets/loading-screen.stories-B__9iwMY.js +| 1.96 kB │ gzip: 1.03 kB +| storybook-static/assets/story-board-DIRZiqIX.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-DFlPsZvN.js +| 2.10 kB │ gzip: 1.00 kB +| storybook-static/assets/story-page-DKKaAfvg.js +| 2.13 kB │ gzip: 0.69 kB +| storybook-static/assets/verification-state-C1QH-6Td.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-CjlpW3dD.js +| 2.34 kB │ gzip: 1.08 kB +| storybook-static/assets/alert-dialog.stories-C_PaKmoT.js +| 2.48 kB │ gzip: 1.07 kB +| storybook-static/assets/separator.stories-dztanf4R.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-D7aAEo04.js +| 2.58 kB │ gzip: 1.28 kB +| storybook-static/assets/badge.stories-B_PyBGwt.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-DHulF3J2.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-IMADB1_-.js +| 2.70 kB │ gzip: 1.15 kB +| storybook-static/assets/calendar.stories-BUBkFt6X.js +| 2.79 kB │ gzip: 1.31 kB +| storybook-static/assets/switch.stories-C7x75XRD.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-CzvcR5qJ.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-BjT7sL2t.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-5YMvceaA.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-DnJp7lvg.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-_jMm21-V.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-BWETPes3.js +| 3.06 kB │ gzip: 1.51 kB +| storybook-static/assets/typography.stories-Dyeh6lq6.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-bqK1tES3.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-DF-JBAyG.js +| 3.16 kB │ gzip: 1.30 kB +| storybook-static/assets/label.stories-lKaTDheO.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-7EHEDHCV.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-BIE0Jg6N.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-Qg2WoP84.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-D_fFlwhG.js +| 3.30 kB │ gzip: 1.45 kB +| storybook-static/assets/page-header.stories-DcvSabHi.js +| 3.32 kB │ gzip: 1.30 kB +| storybook-static/assets/menubar.stories-B9wSx0Bf.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-Ci8OudxU.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-D6iiBBF0.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-4azgJAXb.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-B75WuBVv.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-BYIyqVpe.js +| 3.52 kB │ gzip: 1.60 kB +| storybook-static/assets/breadcrumb.stories-CaT23aSa.js +| 3.55 kB │ gzip: 1.53 kB +| storybook-static/assets/card.stories-W_BlQ7HI.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-Cj-FwZvU.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-olfYybED.js +| 3.96 kB │ gzip: 1.47 kB +| storybook-static/assets/specimens-BWHSykrP.js +| 4.13 kB │ gzip: 1.37 kB +| storybook-static/assets/sonner.stories-DFFh1Il5.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-DKf9QgFa.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-BUOYLiRT.js +| 4.45 kB │ gzip: 1.68 kB +| storybook-static/assets/slider.stories-wnVIyMA_.js +| 4.53 kB │ gzip: 1.86 kB +| storybook-static/assets/org-chart-page-previews-Cn1V8VsY.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-CSLYQEO0.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-B9tSy8dZ.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-C8R2AHOe.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-L3-325iN.js +| 5.03 kB │ gzip: 2.07 kB +| storybook-static/assets/accordion.stories-Ckgl_KDR.js +| 5.05 kB │ gzip: 1.81 kB +| storybook-static/assets/OrgChart-DZlWXlj3-B1As9Irb.js +| 5.35 kB │ gzip: 1.95 kB +| storybook-static/assets/dialog.stories-4K6-xjHX.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-CR020H9k.js +| 5.81 kB │ gzip: 2.13 kB +| storybook-static/assets/data-table.stories-DpUf_oZv.js +| 5.92 kB │ gzip: 2.52 kB +| storybook-static/assets/textarea.stories-DY7qK2k5.js +| 5.99 kB │ gzip: 2.43 kB +| storybook-static/assets/runtime-loader.stories-CuO_gd5n.js +| 6.18 kB │ gzip: 2.44 kB +| storybook-static/assets/toggle-group.stories-S8Pg4vrJ.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-CfI8Ka6g.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-DrNOjnzN.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-Ce8N0i9A.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-34fbAscx.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-CSXs_inh.js +| 12.54 kB │ gzip: 4.16 kB +| storybook-static/assets/designer-theme.stories-DLyYiHPD.js +| 14.62 kB │ gzip: 5.51 kB +| storybook-static/assets/gnb.stories-DZIeMpkp.js +| 16.56 kB │ gzip: 5.83 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-DiuLXiPF.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-DIF2K0IC.js +| 23.84 kB │ gzip: 6.26 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-KsXiA_U6.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-EwBJZVYq.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-DVWgMqFw.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-6q_xPzUt.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-B8TX4vCI.js +| 755.24 kB │ gzip: 356.76 kB +| storybook-static/assets/reference-CFT3e7tu.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-C-f76Kkf.js +| 1,754.32 kB │ gzip: 503.68 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 5.46s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 4.8s of this 5.4s +| build (88%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (62%, 3.4s, 3104 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (20 calls) +| - plugin vite:css transform (20 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-build.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build.txt new file mode 100644 index 0000000..4b1f666 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/storybook-build.txt @@ -0,0 +1,422 @@ + +> hm-design-system-poc@0.1.0 prebuild-storybook +> npm run check:theme-defaults && npm run build:packages + + +> hm-design-system-poc@0.1.0 check:theme-defaults +> node scripts/theme-defaults.mjs --check + +Theme defaults: 92 JSON colors / 94 contract defaults; generated outputs match + +> hm-design-system-poc@0.1.0 build:packages +> npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw + + +> hm-design-system-poc@0.1.0 build:org-chart +> npm run build -w @hm-design/org-chart + + +> @hm-design/org-chart@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 2,450.52 kB │ gzip: 1,648.92 kB + +✓ built in 132ms +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/orgchart.browser.js 2,456.85 kB │ gzip: 1,649.32 kB + +✓ built in 78ms + +> hm-design-system-poc@0.1.0 build:ui +> npm run build -w @hm-design/ui + + +> @hm-design/ui@0.1.0 build +> node ../../scripts/build-package.mjs ui + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/theme/index.js 25.18 kB │ gzip: 3.98 kB +dist/index.js 120.43 kB │ gzip: 21.30 kB + +✓ built in 61ms + +> hm-design-system-poc@0.1.0 build:center-graphic +> npm run build -w @hm-design/center-graphic + + +> @hm-design/center-graphic@0.1.0 build +> node ../../scripts/build-package.mjs center-graphic + +vite v8.3.0 building client environment for production... +transforming... +✓ 145 modules transformed. +rendering chunks... +computing gzip size... +dist/style.css 88.68 kB │ gzip: 20.14 kB +dist/reference.js 0.65 kB │ gzip: 0.23 kB +dist/index.js 1.86 kB │ gzip: 0.84 kB +dist/FacilityBatch-PtW_fbvn.js 1,675.84 kB │ gzip: 276.13 kB + +✓ built in 145ms + +> hm-design-system-poc@0.1.0 build:org-chart-react +> npm run build -w @hm-design/org-chart-react + + +> @hm-design/org-chart-react@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 5 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 0.09 kB │ gzip: 0.09 kB +dist/hm-dialog.js 4.39 kB │ gzip: 1.80 kB +dist/OrgChart-DZlWXlj3.js 10.50 kB │ gzip: 2.63 kB + +✓ built in 29ms + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 286ms + +> hm-design-system-poc@0.1.0 build-storybook +> storybook build -o storybook-static --disable-telemetry + + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| +• Copying static files: themes at storybook-static\themes +| Vite vite v8.3.0 building client environment for production... +transforming... +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3104 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/sw-header-dropdown-BSCl7vok.css +| 0.54 kB │ gzip: 0.25 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-CUYjY3HM.css +| 73.13 kB │ gzip: 13.58 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-BND_ij75.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-BmZwTnfz.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/sw-header-dropdown.stories-B70Obnnj.js +| 0.45 kB │ gzip: 0.32 kB +| storybook-static/assets/layout-grid-CMxoQykG.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-txV71QLW.js +| 0.58 kB │ gzip: 0.35 kB +| storybook-static/assets/org-chart-full-composition.stories-CWV8lwpL.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-CLN1jfvC.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-CdJAD27-.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-MWnGhGZk.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-qNk87UMX.js +| 0.76 kB │ gzip: 0.39 kB +| storybook-static/assets/center-information.stories-BOTWb_cK.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-BMTd60ec.js +| 0.97 kB │ gzip: 0.64 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-BhJaDLjN.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-DozDyomh.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-DncuCRkc.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-D-sbnsyq.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-B6UB0vOm.js +| 1.90 kB │ gzip: 1.07 kB +| storybook-static/assets/loading-screen.stories-B2hNfvjn.js +| 1.96 kB │ gzip: 1.03 kB +| storybook-static/assets/story-board-DbCnlBub.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-D0TOnXPZ.js +| 2.10 kB │ gzip: 1.00 kB +| storybook-static/assets/story-page-NviG8jVQ.js +| 2.13 kB │ gzip: 0.69 kB +| storybook-static/assets/verification-state-TLRGhnTS.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-Duxs_WfN.js +| 2.34 kB │ gzip: 1.08 kB +| storybook-static/assets/alert-dialog.stories-Bf2Yn_JE.js +| 2.48 kB │ gzip: 1.08 kB +| storybook-static/assets/separator.stories-CF-6tfX0.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-DJpVX3c2.js +| 2.58 kB │ gzip: 1.28 kB +| storybook-static/assets/badge.stories-DRENhc-L.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-D2sI3-nj.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-BhwDJkC6.js +| 2.70 kB │ gzip: 1.14 kB +| storybook-static/assets/calendar.stories-B6L1E1ig.js +| 2.79 kB │ gzip: 1.30 kB +| storybook-static/assets/switch.stories-qrFKEVn_.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-BNF4vGzV.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-D71JJUlJ.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-vCSD7jKJ.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-C_Zu1dz4.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-IP1JKf6V.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-DfkJgLt5.js +| 3.06 kB │ gzip: 1.51 kB +| storybook-static/assets/typography.stories-BNi63MxZ.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-DcFat-aa.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-UWBN2m_d.js +| 3.16 kB │ gzip: 1.29 kB +| storybook-static/assets/label.stories-DtU51tqo.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-DaoUdkEa.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-sk4Px8e4.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-B7lWhHCZ.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-BKgND-A1.js +| 3.30 kB │ gzip: 1.45 kB +| storybook-static/assets/page-header.stories-BHGBav5D.js +| 3.32 kB │ gzip: 1.30 kB +| storybook-static/assets/menubar.stories-BJhlGfwp.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-DvKNhStG.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-CNJfaYjF.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-3r8fbU61.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-fvK8STyk.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-qlRTLJp4.js +| 3.52 kB │ gzip: 1.60 kB +| storybook-static/assets/breadcrumb.stories-CtjogBGF.js +| 3.55 kB │ gzip: 1.52 kB +| storybook-static/assets/card.stories-DTiVFkEY.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-B944L6Mw.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-Ctx6awzP.js +| 3.96 kB │ gzip: 1.46 kB +| storybook-static/assets/specimens-CGoGpKOp.js +| 4.13 kB │ gzip: 1.36 kB +| storybook-static/assets/sonner.stories-Dd7eOQPZ.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-CSWW9qTX.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-msXZto1d.js +| 4.45 kB │ gzip: 1.68 kB +| storybook-static/assets/slider.stories-BI1THOyA.js +| 4.53 kB │ gzip: 1.86 kB +| storybook-static/assets/org-chart-page-previews-BgTYbXY2.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-C59BwVbC.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-DP-wbrns.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-DtTthfPY.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-DACOm5TI.js +| 5.03 kB │ gzip: 2.07 kB +| storybook-static/assets/accordion.stories-D8ddzKl5.js +| 5.05 kB │ gzip: 1.82 kB +| storybook-static/assets/OrgChart-DZlWXlj3-CufYw9Gu.js +| 5.35 kB │ gzip: 1.95 kB +| storybook-static/assets/dialog.stories-ByFUJMLu.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-BcrufFMD.js +| 5.81 kB │ gzip: 2.12 kB +| storybook-static/assets/data-table.stories-C1t0Gf4P.js +| 5.92 kB │ gzip: 2.51 kB +| storybook-static/assets/textarea.stories-BIz7Y6jk.js +| 5.99 kB │ gzip: 2.43 kB +| storybook-static/assets/runtime-loader.stories-Du2BNudr.js +| 6.18 kB │ gzip: 2.45 kB +| storybook-static/assets/toggle-group.stories-B3eEJmE2.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-BV412_dC.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-C7N36_Bk.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-B0x2TD8t.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-DZeCa27I.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-CrlVDUZh.js +| 12.54 kB │ gzip: 4.15 kB +| storybook-static/assets/designer-theme.stories-D55cbzRx.js +| 14.62 kB │ gzip: 5.52 kB +| storybook-static/assets/gnb.stories-DU2rsFoA.js +| 16.56 kB │ gzip: 5.83 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-Dgj80jo2.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-DCly8dm7.js +| 23.84 kB │ gzip: 6.25 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-D_pra22q.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-BU4d2lC6.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-D2RW7xQa.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-D1IaJpIz.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-DqVylvl_.js +| 754.96 kB │ gzip: 356.68 kB +| storybook-static/assets/reference-DYpK1MLp.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-Dd6GZeg_.js +| 1,754.32 kB │ gzip: 503.64 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 8.85s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 7.2s of this 8.8s +| build (82%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (57%, 5.1s, 3104 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (20 calls) +| - plugin vite:css transform (20 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck-final.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck-final.txt new file mode 100644 index 0000000..e69de29 diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck-release.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck-release.txt new file mode 100644 index 0000000..e69de29 diff --git a/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck.txt b/docs/sw/storybook-dropdown-consolidation-qa/storybook-typecheck.txt new file mode 100644 index 0000000..e69de29 diff --git a/docs/sw/storybook-dropdown-consolidation-qa/validation-summary.json b/docs/sw/storybook-dropdown-consolidation-qa/validation-summary.json new file mode 100644 index 0000000..10bb272 --- /dev/null +++ b/docs/sw/storybook-dropdown-consolidation-qa/validation-summary.json @@ -0,0 +1,61 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "branch": "feature/sw-package", + "scope": "STORYBOOK_ONLY", + "swTypecheck": { + "command": "npm.cmd run typecheck:sw", + "exitCode": 0 + }, + "swBuild": { + "command": "npm.cmd run build-storybook (prebuild-storybook -> build:packages -> build:sw)", + "exitCode": 0, + "log": "storybook-build-release.txt" + }, + "storybookTypecheck": { + "command": "npm.cmd exec -- tsc -p tsconfig.app.json --noEmit", + "exitCode": 0, + "log": "storybook-typecheck-release.txt" + }, + "storybookBuild": { + "command": "npm.cmd run build-storybook", + "exitCode": 0, + "log": "storybook-build-release.txt" + }, + "browser": { + "integration": { + "status": "PASS", + "checks": 229, + "failures": [], + "errors": [] + }, + "affectedFollowup": { + "status": "PASS", + "checks": 29, + "failures": [], + "errors": [] + }, + "overview": { + "status": "PASS", + "checks": 54, + "failures": [], + "errors": [] + }, + "preservation": { + "status": "PASS", + "checks": 15, + "failures": [], + "errors": [] + } + }, + "retainedRelativeOrderPreserved": true, + "reportLinks": { + "count": 10, + "missing": [] + }, + "sourceHashes": { + "src/sw/sw-header.stories.tsx": "474d1ec7eca70fe1605d2f86a4f8ab89b3b78b4c7ec9ce1dcf6edeb5cbe5beb7", + "src/sw/sw-header-dropdown.stories.tsx": "498dffa9ee330c774ec8c34448afbe4bf612f0c8cf9cb32bcf643fe08a529ca5", + "src/sw/sw-composed-controls.css": "f333c02648cedc65ecb1d2e313ae9fdaff5662082919cdfc00d7217f94bf0cd5" + }, + "pushPerformed": false +} diff --git a/docs/sw/storybook-dropdown-page-qa/before-dropdown-csf.txt b/docs/sw/storybook-dropdown-page-qa/before-dropdown-csf.txt new file mode 100644 index 0000000..7c386d8 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/before-dropdown-csf.txt @@ -0,0 +1,16 @@ +import type { Meta, StoryObj } from "@storybook/react-vite" +import { ComposedDemo } from "./sw-header.stories" +import "./sw-composed-controls.css" + +const meta = { + title: "SW/Header/Dropdown", + // Keep existing bookmarks while placing the single example under Dropdown. + id: "sw-header", + parameters: { layout: "fullscreen", controls: { disable: true } }, +} satisfies Meta +export default meta + +export const ComposedControls: StoryObj = { + name: "Composed Controls", + render: () => , +} diff --git a/docs/sw/storybook-dropdown-page-qa/before-full-index.json b/docs/sw/storybook-dropdown-page-qa/before-full-index.json new file mode 100644 index 0000000..27b1c1d --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/before-full-index.json @@ -0,0 +1 @@ +{"v":5,"entries":{"foundation-color--all":{"type":"story","subtype":"story","id":"foundation-color--all","name":"Color","title":"Foundation/Color","importPath":"./src/foundation/color.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-typography--all":{"type":"story","subtype":"story","id":"foundation-typography--all","name":"Typography","title":"Foundation/Typography","importPath":"./src/foundation/typography.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-layout--all":{"type":"story","subtype":"story","id":"foundation-layout--all","name":"Layout","title":"Foundation/Layout","importPath":"./src/foundation/layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--all":{"type":"story","subtype":"story","id":"components-form-button--all","name":"Button","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--roles":{"type":"story","subtype":"story","id":"components-form-button--roles","name":"Roles","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Roles"},"components-form-button--sizes":{"type":"story","subtype":"story","id":"components-form-button--sizes","name":"Sizes","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-button--states":{"type":"story","subtype":"story","id":"components-form-button--states","name":"Brand States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-button--standard-states":{"type":"story","subtype":"story","id":"components-form-button--standard-states","name":"Standard States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandardStates"},"components-form-button--long-label":{"type":"story","subtype":"story","id":"components-form-button--long-label","name":"Long Label","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-form-button--korean-labels":{"type":"story","subtype":"story","id":"components-form-button--korean-labels","name":"Korean Labels","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"KoreanLabels"},"components-form-button--icon-text-narrow":{"type":"story","subtype":"story","id":"components-form-button--icon-text-narrow","name":"Icon Text Narrow","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconTextNarrow"},"components-form-button--destructive":{"type":"story","subtype":"story","id":"components-form-button--destructive","name":"Destructive","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-form-button--playground":{"type":"story","subtype":"story","id":"components-form-button--playground","name":"Playground","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-button--compatibility":{"type":"story","subtype":"story","id":"components-form-button--compatibility","name":"Compatibility","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-form-input--all":{"type":"story","subtype":"story","id":"components-form-input--all","name":"Input","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-input--default":{"type":"story","subtype":"story","id":"components-form-input--default","name":"Default","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-input--focus":{"type":"story","subtype":"story","id":"components-form-input--focus","name":"Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-input--error":{"type":"story","subtype":"story","id":"components-form-input--error","name":"Error","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-input--invalid-focus":{"type":"story","subtype":"story","id":"components-form-input--invalid-focus","name":"Invalid Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-input--error-message":{"type":"story","subtype":"story","id":"components-form-input--error-message","name":"Error Message","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-input--required":{"type":"story","subtype":"story","id":"components-form-input--required","name":"Required","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-input--disabled":{"type":"story","subtype":"story","id":"components-form-input--disabled","name":"Disabled","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-input--readonly":{"type":"story","subtype":"story","id":"components-form-input--readonly","name":"Readonly","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-input--sizes":{"type":"story","subtype":"story","id":"components-form-input--sizes","name":"Compare Sizes","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-input--small":{"type":"story","subtype":"story","id":"components-form-input--small","name":"Small","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Small"},"components-form-input--medium":{"type":"story","subtype":"story","id":"components-form-input--medium","name":"Medium","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-input--large":{"type":"story","subtype":"story","id":"components-form-input--large","name":"Large","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-input--playground":{"type":"story","subtype":"story","id":"components-form-input--playground","name":"Playground","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-textarea--all":{"type":"story","subtype":"story","id":"components-form-textarea--all","name":"Textarea","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-textarea--default":{"type":"story","subtype":"story","id":"components-form-textarea--default","name":"Default","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-textarea--focus":{"type":"story","subtype":"story","id":"components-form-textarea--focus","name":"Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-textarea--error":{"type":"story","subtype":"story","id":"components-form-textarea--error","name":"Error","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-textarea--invalid-focus":{"type":"story","subtype":"story","id":"components-form-textarea--invalid-focus","name":"Invalid Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-textarea--error-message":{"type":"story","subtype":"story","id":"components-form-textarea--error-message","name":"Error Message","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-textarea--required":{"type":"story","subtype":"story","id":"components-form-textarea--required","name":"Required","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-textarea--readonly":{"type":"story","subtype":"story","id":"components-form-textarea--readonly","name":"Readonly","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-textarea--disabled":{"type":"story","subtype":"story","id":"components-form-textarea--disabled","name":"Disabled","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-textarea--long-content":{"type":"story","subtype":"story","id":"components-form-textarea--long-content","name":"Long Content","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-textarea--playground":{"type":"story","subtype":"story","id":"components-form-textarea--playground","name":"Playground","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-select--all":{"type":"story","subtype":"story","id":"components-form-select--all","name":"Select","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-select--default":{"type":"story","subtype":"story","id":"components-form-select--default","name":"Default","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-select--invalid-focus":{"type":"story","subtype":"story","id":"components-form-select--invalid-focus","name":"Invalid Focus","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-form-select--open":{"type":"story","subtype":"story","id":"components-form-select--open","name":"Open","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-form-select--selected":{"type":"story","subtype":"story","id":"components-form-select--selected","name":"Selected","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-form-select--disabled":{"type":"story","subtype":"story","id":"components-form-select--disabled","name":"Disabled","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-select--sizes":{"type":"story","subtype":"story","id":"components-form-select--sizes","name":"Compare Sizes","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-select--medium":{"type":"story","subtype":"story","id":"components-form-select--medium","name":"Medium","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-select--large":{"type":"story","subtype":"story","id":"components-form-select--large","name":"Large","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-select--long-content":{"type":"story","subtype":"story","id":"components-form-select--long-content","name":"Long Content","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-select--open-large-short":{"type":"story","subtype":"story","id":"components-form-select--open-large-short","name":"Open Large Short","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeShort"},"components-form-select--open-medium-long":{"type":"story","subtype":"story","id":"components-form-select--open-medium-long","name":"Open Medium Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenMediumLong"},"components-form-select--open-large-long":{"type":"story","subtype":"story","id":"components-form-select--open-large-long","name":"Open Large Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeLong"},"components-form-select--open-top":{"type":"story","subtype":"story","id":"components-form-select--open-top","name":"Open Top","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-form-select--open-top-long":{"type":"story","subtype":"story","id":"components-form-select--open-top-long","name":"Open Top Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTopLong"},"components-form-select--list-size-comparison":{"type":"story","subtype":"story","id":"components-form-select--list-size-comparison","name":"Medium Trigger / List Size Comparison","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ListSizeComparison"},"components-form-select--scroll":{"type":"story","subtype":"story","id":"components-form-select--scroll","name":"Scroll","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"components-form-select--playground":{"type":"story","subtype":"story","id":"components-form-select--playground","name":"Playground","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-checkbox--all":{"type":"story","subtype":"story","id":"components-form-checkbox--all","name":"Checkbox","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-checkbox--unchecked":{"type":"story","subtype":"story","id":"components-form-checkbox--unchecked","name":"Unchecked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Unchecked"},"components-form-checkbox--checked":{"type":"story","subtype":"story","id":"components-form-checkbox--checked","name":"Checked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Checked"},"components-form-checkbox--indeterminate":{"type":"story","subtype":"story","id":"components-form-checkbox--indeterminate","name":"Indeterminate","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Indeterminate"},"components-form-checkbox--disabled":{"type":"story","subtype":"story","id":"components-form-checkbox--disabled","name":"Disabled","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-checkbox--error":{"type":"story","subtype":"story","id":"components-form-checkbox--error","name":"Error","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-checkbox--playground":{"type":"story","subtype":"story","id":"components-form-checkbox--playground","name":"Playground","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-radio-group--all":{"type":"story","subtype":"story","id":"components-form-radio-group--all","name":"Radio Group","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-radio-group--vertical":{"type":"story","subtype":"story","id":"components-form-radio-group--vertical","name":"Vertical","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-form-radio-group--horizontal":{"type":"story","subtype":"story","id":"components-form-radio-group--horizontal","name":"Horizontal","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-form-radio-group--disabled":{"type":"story","subtype":"story","id":"components-form-radio-group--disabled","name":"Disabled","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-radio-group--error":{"type":"story","subtype":"story","id":"components-form-radio-group--error","name":"Error","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-switch--all":{"type":"story","subtype":"story","id":"components-form-switch--all","name":"Switch","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-switch--off":{"type":"story","subtype":"story","id":"components-form-switch--off","name":"Off","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Off"},"components-form-switch--on":{"type":"story","subtype":"story","id":"components-form-switch--on","name":"On","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"On"},"components-form-switch--disabled":{"type":"story","subtype":"story","id":"components-form-switch--disabled","name":"Disabled","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-slider--all":{"type":"story","subtype":"story","id":"components-form-slider--all","name":"Slider","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-slider--single-value":{"type":"story","subtype":"story","id":"components-form-slider--single-value","name":"Single","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SingleValue"},"components-form-slider--range-value":{"type":"story","subtype":"story","id":"components-form-slider--range-value","name":"Range","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RangeValue"},"components-form-slider--disabled-slider":{"type":"story","subtype":"story","id":"components-form-slider--disabled-slider","name":"Disabled","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledSlider"},"components-form-slider--focus":{"type":"story","subtype":"story","id":"components-form-slider--focus","name":"Focus","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-toggle--all":{"type":"story","subtype":"story","id":"components-form-toggle--all","name":"Toggle","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle--states":{"type":"story","subtype":"story","id":"components-form-toggle--states","name":"States","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-toggle--icon-only":{"type":"story","subtype":"story","id":"components-form-toggle--icon-only","name":"Icon Only","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconOnly"},"components-form-toggle--disabled-toggle":{"type":"story","subtype":"story","id":"components-form-toggle--disabled-toggle","name":"Disabled","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledToggle"},"components-form-toggle--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-toggle-group--all":{"type":"story","subtype":"story","id":"components-form-toggle-group--all","name":"Toggle Group","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle-group--single-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--single-selection","name":"Single","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-form-toggle-group--multiple-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--multiple-selection","name":"Multiple","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"MultipleSelection"},"components-form-toggle-group--vertical-group":{"type":"story","subtype":"story","id":"components-form-toggle-group--vertical-group","name":"Vertical","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"VerticalGroup"},"components-form-toggle-group--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle-group--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-label--all":{"type":"story","subtype":"story","id":"components-form-label--all","name":"Label","title":"Components/Form/Label","importPath":"./src/components/label.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--all":{"type":"story","subtype":"story","id":"components-navigation-tabs--all","name":"Tabs","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--secondary":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary","name":"Secondary","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Secondary"},"components-navigation-tabs--selected-first":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-first","name":"Selected First","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedFirst"},"components-navigation-tabs--selected-last":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-last","name":"Selected Last","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedLast"},"components-navigation-tabs--focus":{"type":"story","subtype":"story","id":"components-navigation-tabs--focus","name":"Focus","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-navigation-tabs--disabled":{"type":"story","subtype":"story","id":"components-navigation-tabs--disabled","name":"Disabled","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-navigation-tabs--overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--overflow","name":"Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-navigation-tabs--secondary-overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary-overflow","name":"Secondary Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SecondaryOverflow"},"components-navigation-tabs--long-label":{"type":"story","subtype":"story","id":"components-navigation-tabs--long-label","name":"Long Label","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-navigation-tabs--compatibility":{"type":"story","subtype":"story","id":"components-navigation-tabs--compatibility","name":"Compatibility","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-navigation-breadcrumb--all":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--all","name":"Breadcrumb","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-breadcrumb--basic-3":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--basic-3","name":"Basic","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic3"},"components-navigation-breadcrumb--with-ellipsis":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--with-ellipsis","name":"Ellipsis","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithEllipsis"},"components-navigation-breadcrumb--long-path":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--long-path","name":"Long Path","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongPath"},"components-navigation-pagination--all":{"type":"story","subtype":"story","id":"components-navigation-pagination--all","name":"Pagination","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-pagination--first-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--first-page","name":"First Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstPage"},"components-navigation-pagination--last-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--last-page","name":"Last Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastPage"},"components-navigation-pagination--long-range":{"type":"story","subtype":"story","id":"components-navigation-pagination--long-range","name":"Long Range","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongRange"},"components-navigation-navigation-menu--all":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--all","name":"Navigation Menu","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-navigation-menu--default":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--default","name":"Default","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-navigation-navigation-menu--no-viewport":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--no-viewport","name":"No Viewport","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NoViewport"},"components-navigation-navigation-menu--indicator-alignment":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--indicator-alignment","name":"Indicator Alignment","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IndicatorAlignment"},"components-navigation-menubar--all":{"type":"story","subtype":"story","id":"components-navigation-menubar--all","name":"Menubar","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-menubar--trigger-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--trigger-focus","name":"Trigger Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"TriggerFocus"},"components-navigation-menubar--open-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--open-focus","name":"Open Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"OpenFocus"},"components-overlay-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-dialog--all","name":"Dialog","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dialog--open":{"type":"story","subtype":"story","id":"components-overlay-dialog--open","name":"Open","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-dialog--long-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--long-content-open","name":"Long Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContentOpen"},"components-overlay-dialog--wide-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--wide-content-open","name":"Wide Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WideContentOpen"},"components-overlay-dialog--body-scroll-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--body-scroll-open","name":"Body Scroll","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BodyScrollOpen"},"components-overlay-dialog--delete-confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--delete-confirmation-open","name":"Delete Confirmation","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DeleteConfirmationOpen"},"components-overlay-alert-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--all","name":"Alert Dialog","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-alert-dialog--confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--confirmation-open","name":"Confirmation","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ConfirmationOpen"},"components-overlay-alert-dialog--destructive-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--destructive-open","name":"Destructive","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DestructiveOpen"},"components-overlay-sheet--all":{"type":"story","subtype":"story","id":"components-overlay-sheet--all","name":"Sheet","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-sheet--right":{"type":"story","subtype":"story","id":"components-overlay-sheet--right","name":"Right","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Right"},"components-overlay-sheet--left":{"type":"story","subtype":"story","id":"components-overlay-sheet--left","name":"Left","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Left"},"components-overlay-sheet--top":{"type":"story","subtype":"story","id":"components-overlay-sheet--top","name":"Top","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Top"},"components-overlay-sheet--bottom":{"type":"story","subtype":"story","id":"components-overlay-sheet--bottom","name":"Bottom","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Bottom"},"components-overlay-sheet--form":{"type":"story","subtype":"story","id":"components-overlay-sheet--form","name":"Form","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-sheet--long-content":{"type":"story","subtype":"story","id":"components-overlay-sheet--long-content","name":"Long Content","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-drawer--all":{"type":"story","subtype":"story","id":"components-overlay-drawer--all","name":"Drawer","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-drawer--open":{"type":"story","subtype":"story","id":"components-overlay-drawer--open","name":"Open","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-drawer--form":{"type":"story","subtype":"story","id":"components-overlay-drawer--form","name":"Form","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-drawer--long-content":{"type":"story","subtype":"story","id":"components-overlay-drawer--long-content","name":"Long Content","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-dropdown-menu--all":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--all","name":"Dropdown Menu","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dropdown-menu--open":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--open","name":"Open","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-context-menu--all":{"type":"story","subtype":"story","id":"components-overlay-context-menu--all","name":"Context Menu","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-context-menu--open":{"type":"story","subtype":"story","id":"components-overlay-context-menu--open","name":"Open","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Open"},"components-overlay-popover--all":{"type":"story","subtype":"story","id":"components-overlay-popover--all","name":"Popover","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-popover--open":{"type":"story","subtype":"story","id":"components-overlay-popover--open","name":"Open","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-tooltip--all":{"type":"story","subtype":"story","id":"components-overlay-tooltip--all","name":"Tooltip","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-tooltip--open":{"type":"story","subtype":"story","id":"components-overlay-tooltip--open","name":"Open","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-hover-card--all":{"type":"story","subtype":"story","id":"components-overlay-hover-card--all","name":"Hover Card","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-hover-card--open":{"type":"story","subtype":"story","id":"components-overlay-hover-card--open","name":"Open","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-data-display-card--all":{"type":"story","subtype":"story","id":"components-data-display-card--all","name":"Card","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-card--surfaces":{"type":"story","subtype":"story","id":"components-data-display-card--surfaces","name":"Surfaces","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Surfaces"},"components-data-display-card--action":{"type":"story","subtype":"story","id":"components-data-display-card--action","name":"Action","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Action"},"components-data-display-card--compatibility":{"type":"story","subtype":"story","id":"components-data-display-card--compatibility","name":"Compatibility","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-data-display-table--all":{"type":"story","subtype":"story","id":"components-data-display-table--all","name":"Table","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-table--basic":{"type":"story","subtype":"story","id":"components-data-display-table--basic","name":"Basic","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic"},"components-data-display-table--selected":{"type":"story","subtype":"story","id":"components-data-display-table--selected","name":"Selected","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-data-display-table--long-text":{"type":"story","subtype":"story","id":"components-data-display-table--long-text","name":"Long Text","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongText"},"components-data-display-table--overflow":{"type":"story","subtype":"story","id":"components-data-display-table--overflow","name":"Horizontal Overflow","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-data-display-badge--all":{"type":"story","subtype":"story","id":"components-data-display-badge--all","name":"Badge","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-badge--variants":{"type":"story","subtype":"story","id":"components-data-display-badge--variants","name":"Variants","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Variants"},"components-data-display-badge--playground":{"type":"story","subtype":"story","id":"components-data-display-badge--playground","name":"Playground","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-data-display-avatar--all":{"type":"story","subtype":"story","id":"components-data-display-avatar--all","name":"Avatar","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-avatar--image":{"type":"story","subtype":"story","id":"components-data-display-avatar--image","name":"Image","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Image"},"components-data-display-avatar--fallback-error":{"type":"story","subtype":"story","id":"components-data-display-avatar--fallback-error","name":"Fallback","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FallbackError"},"components-data-display-progress--all":{"type":"story","subtype":"story","id":"components-data-display-progress--all","name":"Progress","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-progress--zero":{"type":"story","subtype":"story","id":"components-data-display-progress--zero","name":"Zero","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Zero"},"components-data-display-progress--middle":{"type":"story","subtype":"story","id":"components-data-display-progress--middle","name":"Middle","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Middle"},"components-data-display-progress--full":{"type":"story","subtype":"story","id":"components-data-display-progress--full","name":"Full","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Full"},"components-data-display-progress--non-default-max":{"type":"story","subtype":"story","id":"components-data-display-progress--non-default-max","name":"Non Default Max","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"NonDefaultMax"},"components-data-display-skeleton--all":{"type":"story","subtype":"story","id":"components-data-display-skeleton--all","name":"Skeleton","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-skeleton--text":{"type":"story","subtype":"story","id":"components-data-display-skeleton--text","name":"Text","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Text"},"components-data-display-skeleton--card-list":{"type":"story","subtype":"story","id":"components-data-display-skeleton--card-list","name":"Card List","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CardList"},"components-data-display-separator--all":{"type":"story","subtype":"story","id":"components-data-display-separator--all","name":"Separator","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-separator--horizontal":{"type":"story","subtype":"story","id":"components-data-display-separator--horizontal","name":"Horizontal","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-data-display-separator--vertical":{"type":"story","subtype":"story","id":"components-data-display-separator--vertical","name":"Vertical","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-data-display-aspect-ratio--all":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--all","name":"Aspect Ratio","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-aspect-ratio--wide":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--wide","name":"16:9","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Wide"},"components-data-display-aspect-ratio--square":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--square","name":"1:1","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Square"},"components-data-display-carousel--all":{"type":"story","subtype":"story","id":"components-data-display-carousel--all","name":"Carousel","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-carousel--basic-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--basic-carousel","name":"Basic","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BasicCarousel"},"components-data-display-carousel--multiple-items":{"type":"story","subtype":"story","id":"components-data-display-carousel--multiple-items","name":"Multiple Items","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MultipleItems"},"components-data-display-carousel--loop-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--loop-carousel","name":"Loop","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LoopCarousel"},"components-data-display-carousel--vertical-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--vertical-carousel","name":"Vertical","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalCarousel"},"components-data-display-scroll-area--all":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--all","name":"Scroll Area","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-scroll-area--vertical-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--vertical-scroll","name":"Vertical","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalScroll"},"components-data-display-scroll-area--horizontal-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--horizontal-scroll","name":"Horizontal","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalScroll"},"components-disclosure-accordion--all":{"type":"story","subtype":"story","id":"components-disclosure-accordion--all","name":"Accordion","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-accordion--single":{"type":"story","subtype":"story","id":"components-disclosure-accordion--single","name":"Single","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Single"},"components-disclosure-accordion--multiple":{"type":"story","subtype":"story","id":"components-disclosure-accordion--multiple","name":"Multiple","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Multiple"},"components-disclosure-accordion--disabled":{"type":"story","subtype":"story","id":"components-disclosure-accordion--disabled","name":"Disabled","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-accordion--long-content":{"type":"story","subtype":"story","id":"components-disclosure-accordion--long-content","name":"Long Content","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-collapsible--all":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--all","name":"Collapsible","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-collapsible--closed":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--closed","name":"Closed","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Closed"},"components-disclosure-collapsible--open":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--open","name":"Open","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-disclosure-collapsible--disabled":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--disabled","name":"Disabled","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-collapsible--long-content":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--long-content","name":"Long Content","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-resizable--all":{"type":"story","subtype":"story","id":"components-disclosure-resizable--all","name":"Resizable","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-resizable--horizontal-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--horizontal-layout","name":"Horizontal","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalLayout"},"components-disclosure-resizable--vertical-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--vertical-layout","name":"Vertical","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalLayout"},"components-disclosure-resizable--min-max-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--min-max-layout","name":"Min Max","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MinMaxLayout"},"components-search-date-command--all":{"type":"story","subtype":"story","id":"components-search-date-command--all","name":"Command","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-command--search":{"type":"story","subtype":"story","id":"components-search-date-command--search","name":"Search","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Search"},"components-search-date-command--grouped-list":{"type":"story","subtype":"story","id":"components-search-date-command--grouped-list","name":"Grouped","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"GroupedList"},"components-search-date-combobox--all":{"type":"story","subtype":"story","id":"components-search-date-combobox--all","name":"Combobox","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-combobox--empty-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--empty-combobox","name":"Empty","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"EmptyCombobox"},"components-search-date-combobox--controlled-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--controlled-combobox","name":"Controlled","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ControlledCombobox"},"components-search-date-combobox--long-option":{"type":"story","subtype":"story","id":"components-search-date-combobox--long-option","name":"Long Option","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongOption"},"components-search-date-combobox--open-bottom":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-bottom","name":"Open Bottom","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenBottom"},"components-search-date-combobox--open-top":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-top","name":"Open Top","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-search-date-calendar--all":{"type":"story","subtype":"story","id":"components-search-date-calendar--all","name":"Calendar","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-calendar--single-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--single-selection","name":"Single","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-search-date-calendar--disabled-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--disabled-selection","name":"Disabled Dates","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"DisabledSelection"},"components-search-date-calendar--range-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--range-selection","name":"Range","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"RangeSelection"},"components-search-date-date-picker--all":{"type":"story","subtype":"story","id":"components-search-date-date-picker--all","name":"Date Picker","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-date-picker--empty-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--empty-picker","name":"Empty","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EmptyPicker"},"components-search-date-date-picker--invalid-focus":{"type":"story","subtype":"story","id":"components-search-date-date-picker--invalid-focus","name":"Invalid Focus","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-search-date-date-picker--selected-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--selected-picker","name":"Selected","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedPicker"},"components-search-date-date-picker--controlled-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--controlled-picker","name":"Controlled","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ControlledPicker"},"components-feedback-alert--all":{"type":"story","subtype":"story","id":"components-feedback-alert--all","name":"Alert","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-feedback-alert--default":{"type":"story","subtype":"story","id":"components-feedback-alert--default","name":"Default","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-feedback-alert--destructive":{"type":"story","subtype":"story","id":"components-feedback-alert--destructive","name":"Destructive","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-feedback-sonner--all":{"type":"story","subtype":"story","id":"components-feedback-sonner--all","name":"Sonner","title":"Components/Feedback/Sonner","importPath":"./src/components/sonner.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--all":{"type":"story","subtype":"story","id":"patterns-data-data-table--all","name":"Data Table","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--with-filter-bar-story":{"type":"story","subtype":"story","id":"patterns-data-data-table--with-filter-bar-story","name":"With Filter Bar","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithFilterBarStory"},"patterns-data-data-table--loading":{"type":"story","subtype":"story","id":"patterns-data-data-table--loading","name":"Loading","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-data-data-table--empty":{"type":"story","subtype":"story","id":"patterns-data-data-table--empty","name":"Empty","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-data-filter-bar--all":{"type":"story","subtype":"story","id":"patterns-data-filter-bar--all","name":"Filter Bar","title":"Patterns/Data/Filter Bar","importPath":"./src/patterns/filter-bar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--all":{"type":"story","subtype":"story","id":"patterns-layout-gnb--all","name":"GNB","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--default":{"type":"story","subtype":"story","id":"patterns-layout-gnb--default","name":"Default","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-gnb--sticky":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sticky","name":"Sticky","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sticky"},"patterns-layout-gnb--sidebar":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sidebar","name":"GNB Sidebar","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sidebar"},"patterns-layout-gnb--navigation-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--navigation-menu-open","name":"Navigation Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NavigationMenuOpen"},"patterns-layout-gnb--short-depth-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--short-depth-open","name":"Short Depth Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ShortDepthOpen"},"patterns-layout-gnb--right-edge-long-depth":{"type":"story","subtype":"story","id":"patterns-layout-gnb--right-edge-long-depth","name":"Right Edge Long Depth","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RightEdgeLongDepth"},"patterns-layout-gnb--first-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-short","name":"First Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthShort"},"patterns-layout-gnb--first-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-long","name":"First Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthLong"},"patterns-layout-gnb--middle-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-short","name":"Middle Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthShort"},"patterns-layout-gnb--middle-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-long","name":"Middle Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthLong"},"patterns-layout-gnb--last-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-short","name":"Last Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthShort"},"patterns-layout-gnb--last-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-long","name":"Last Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthLong"},"patterns-layout-gnb--edge-first-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-first-long","name":"Edge First Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeFirstLong"},"patterns-layout-gnb--edge-last-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-last-long","name":"Edge Last Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeLastLong"},"patterns-layout-gnb--user-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--user-menu-open","name":"User Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"UserMenuOpen"},"patterns-layout-gnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-gnb--long-labels","name":"Long Labels","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-gnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-gnb--with-logo","name":"With Logo","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-gnb--utilities":{"type":"story","subtype":"story","id":"patterns-layout-gnb--utilities","name":"Utilities","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Utilities"},"patterns-layout-gnb--mobile":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile","name":"Mobile","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Mobile"},"patterns-layout-gnb--mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile-menu-open","name":"Mobile Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MobileMenuOpen"},"patterns-layout-lnb--all":{"type":"story","subtype":"story","id":"patterns-layout-lnb--all","name":"LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-lnb--default":{"type":"story","subtype":"story","id":"patterns-layout-lnb--default","name":"Default","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-lnb--selected":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected","name":"Selected","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"patterns-layout-lnb--expanded":{"type":"story","subtype":"story","id":"patterns-layout-lnb--expanded","name":"Expanded","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Expanded"},"patterns-layout-lnb--selected-child":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected-child","name":"Selected Child","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedChild"},"patterns-layout-lnb--collapsed-with-selection":{"type":"story","subtype":"story","id":"patterns-layout-lnb--collapsed-with-selection","name":"Collapsed With Selection","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CollapsedWithSelection"},"patterns-layout-lnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-logo","name":"With Logo","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-lnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--long-labels","name":"Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-lnb--scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--scroll","name":"Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"patterns-layout-lnb--third-level":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level","name":"Third Level","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-lnb--third-level-long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-long-labels","name":"Third Level Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelLongLabels"},"patterns-layout-lnb--third-level-scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-scroll","name":"Third Level Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelScroll"},"patterns-layout-lnb--with-gnb":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-gnb","name":"VERIFICATION ONLY · GNB + LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithGNB"},"patterns-layout-lnb--standalone-desktop":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-desktop","name":"LNB Standalone Desktop","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneDesktop"},"patterns-layout-lnb--lnb-profile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--lnb-profile-menu-open","name":"LNB Profile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LNBProfileMenuOpen"},"patterns-layout-lnb--standalone-mobile":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile","name":"LNB Standalone Mobile","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobile"},"patterns-layout-lnb--standalone-mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile-menu-open","name":"LNB Standalone Mobile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobileMenuOpen"},"patterns-layout-loading-screen--all":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--all","name":"Loading Screen","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-loading-screen--inline":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--inline","name":"Inline","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Inline"},"patterns-layout-dashboard-layout--all":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--all","name":"Dashboard","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-dashboard-layout--with-sidebar":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--with-sidebar","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithSidebar"},"patterns-layout-dashboard-layout--third-level":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--third-level","name":"VERIFICATION ONLY — 운영 사용 금지 · Third Level","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-dashboard-layout--sidebar-only":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--sidebar-only","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SidebarOnly"},"patterns-layout-dashboard-layout--long-content":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--long-content","name":"VERIFICATION ONLY — 운영 사용 금지 · Long Content","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"patterns-layout-dashboard-layout--loading":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--loading","name":"Loading","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-layout-dashboard-layout--empty":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--empty","name":"Empty","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-layout-dashboard-layout--framed":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--framed","name":"VERIFICATION ONLY — 운영 사용 금지 · Framed","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Framed"},"patterns-layout-page-header--all":{"type":"story","subtype":"story","id":"patterns-layout-page-header--all","name":"Page Header","title":"Patterns/Layout/Page Header","importPath":"./src/patterns/page-header.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"orgchart--logo-personnel-summary":{"type":"story","subtype":"story","id":"orgchart--logo-personnel-summary","name":"Overview","title":"OrgChart/Overview","importPath":"./src/org-chart/org-chart-p1.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"LogoPersonnelSummary"},"orgchart--department-colors":{"type":"story","subtype":"story","id":"orgchart--department-colors","name":"Department Colors","title":"OrgChart/Department Colors","importPath":"./src/org-chart/org-chart-department-colors.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"DepartmentColors"},"orgchart--full-composition":{"type":"story","subtype":"story","id":"orgchart--full-composition","name":"Full Composition","title":"OrgChart/Full Composition","importPath":"./src/org-chart/org-chart-full-composition.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"FullComposition"},"orgchart--expanded-org-chart":{"type":"story","subtype":"story","id":"orgchart--expanded-org-chart","name":"Expanded OrgChart","title":"OrgChart/Expanded OrgChart","importPath":"./src/org-chart/org-chart-expanded.stories.tsx","tags":["dev","test","manifest"],"exportName":"ExpandedOrgChart"},"orgchart-components-cards--business-management":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-management","name":"Business Management","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessManagement"},"orgchart-components-cards--business-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-planning","name":"Business Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessPlanning"},"orgchart-components-cards--talent-growth":{"type":"story","subtype":"story","id":"orgchart-components-cards--talent-growth","name":"Talent Growth","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TalentGrowth"},"orgchart-components-cards--integrated-system":{"type":"story","subtype":"story","id":"orgchart-components-cards--integrated-system","name":"Integrated System","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"IntegratedSystem"},"orgchart-components-cards--design-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--design-planning","name":"Design Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"DesignPlanning"},"orgchart-components-cards--solution-sales":{"type":"story","subtype":"story","id":"orgchart-components-cards--solution-sales","name":"Solution Sales","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"SolutionSales"},"orgchart-components-cards--top-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--top-leader","name":"최상위 리더","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TopLeader"},"orgchart-components-cards--organization-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--organization-leader","name":"조직장","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"OrganizationLeader"},"orgchart-components-cards--employee":{"type":"story","subtype":"story","id":"orgchart-components-cards--employee","name":"일반 직원","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Employee"},"orgchart--logo":{"type":"story","subtype":"story","id":"orgchart--logo","name":"Logo","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Logo"},"orgchart--position-summary":{"type":"story","subtype":"story","id":"orgchart--position-summary","name":"Position Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--position-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--position-summary","name":"Position Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart-components-summaries--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--status-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--status-summary","name":"Status Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"StatusSummary"},"orgchart-content--basic-organization":{"type":"story","subtype":"story","id":"orgchart-content--basic-organization","name":"Basic Organization","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"BasicOrganization"},"orgchart-content--organization-hierarchy":{"type":"story","subtype":"story","id":"orgchart-content--organization-hierarchy","name":"Organization Hierarchy","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationHierarchy"},"orgchart-content--employee-cards":{"type":"story","subtype":"story","id":"orgchart-content--employee-cards","name":"Employee Cards","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"EmployeeCards"},"orgchart-content--organization-summary":{"type":"story","subtype":"story","id":"orgchart-content--organization-summary","name":"Organization Summary","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationSummary"},"orgchart-content--json-data-update":{"type":"story","subtype":"story","id":"orgchart-content--json-data-update","name":"JSON Data Update","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"JSONDataUpdate"},"orgchart-content--loading-empty-error":{"type":"story","subtype":"story","id":"orgchart-content--loading-empty-error","name":"Loading / Empty / Error","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"LoadingEmptyError"},"orgchart-content--responsive-container":{"type":"story","subtype":"story","id":"orgchart-content--responsive-container","name":"Responsive Container","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"ResponsiveContainer"},"orgchart-content--multiple-instances":{"type":"story","subtype":"story","id":"orgchart-content--multiple-instances","name":"Multiple Instances","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"MultipleInstances"},"center-graphic-facility--tunnel":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel","name":"Tunnel","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Tunnel"},"center-graphic-facility--bridge":{"type":"story","subtype":"story","id":"center-graphic-facility--bridge","name":"Bridge","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Bridge"},"center-graphic-facility--intersection":{"type":"story","subtype":"story","id":"center-graphic-facility--intersection","name":"Intersection","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Intersection"},"center-graphic-facility--junction":{"type":"story","subtype":"story","id":"center-graphic-facility--junction","name":"Junction","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Junction"},"center-graphic-facility--interchange":{"type":"story","subtype":"story","id":"center-graphic-facility--interchange","name":"Interchange","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Interchange"},"center-graphic-facility--roadside":{"type":"story","subtype":"story","id":"center-graphic-facility--roadside","name":"Roadside","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Roadside"},"center-graphic-facility--linked":{"type":"story","subtype":"story","id":"center-graphic-facility--linked","name":"Linked","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Linked"},"center-graphic-facility--tunnel-playground":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel-playground","name":"직접 테스트 (터널)","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"TunnelPlayground"},"center-graphic-information--information":{"type":"story","subtype":"story","id":"center-graphic-information--information","name":"Information","title":"Center Graphic/Information","importPath":"./src/center/center-information.stories.tsx","tags":["dev","test","manifest"],"exportName":"Information"},"center-graphic-overview--overview":{"type":"story","subtype":"story","id":"center-graphic-overview--overview","name":"Overview","title":"Center Graphic/Overview","importPath":"./src/center/center-overview.stories.tsx","tags":["dev","test","manifest"],"exportName":"Overview"},"center-graphic-spatial--spatial":{"type":"story","subtype":"story","id":"center-graphic-spatial--spatial","name":"Spatial","title":"Center Graphic/Spatial","importPath":"./src/center/center-spatial.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Spatial"},"center-graphic-title--compositions":{"type":"story","subtype":"story","id":"center-graphic-title--compositions","name":"Title","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Compositions"},"center-graphic-title--playground":{"type":"story","subtype":"story","id":"center-graphic-title--playground","name":"Playground","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"verification-publisher-regression--consumers-regression":{"type":"story","subtype":"story","id":"verification-publisher-regression--consumers-regression","name":"Consumers Regression","title":"Verification/Publisher Regression","importPath":"./src/components/publisher-regression.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"ConsumersRegression"},"sw-header--detail-buttons":{"type":"story","subtype":"story","id":"sw-header--detail-buttons","name":"Detail Buttons (Shared States)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DetailButtons"},"sw-header--overview":{"type":"story","subtype":"story","id":"sw-header--overview","name":"Overview","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Overview"},"sw-header--interactive-states":{"type":"story","subtype":"story","id":"sw-header--interactive-states","name":"Interactive States","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"InteractiveStates"},"sw-header--window-move-motion":{"type":"story","subtype":"story","id":"sw-header--window-move-motion","name":"Window Move Motion","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"WindowMoveMotion"},"sw-header--logo-slot":{"type":"story","subtype":"story","id":"sw-header--logo-slot","name":"Logo Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LogoSlot"},"sw-header--document-dropdown":{"type":"story","subtype":"story","id":"sw-header--document-dropdown","name":"Document Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DocumentDropdown"},"sw-header--responsive-more":{"type":"story","subtype":"story","id":"sw-header--responsive-more","name":"Responsive More","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ResponsiveMore"},"sw-header--layer-detail-input":{"type":"story","subtype":"story","id":"sw-header--layer-detail-input","name":"Layer Detail · Input","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LayerDetailInput"},"sw-header--property-panel":{"type":"story","subtype":"story","id":"sw-header--property-panel","name":"Property Panel","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanel"},"sw-header--property-panel-variants":{"type":"story","subtype":"story","id":"sw-header--property-panel-variants","name":"Property Panel Variants","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelVariants"},"sw-header--k-guide":{"type":"story","subtype":"story","id":"sw-header--k-guide","name":"K Guide","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"KGuide"},"sw-header--additional-hover":{"type":"story","subtype":"story","id":"sw-header--additional-hover","name":"Additional Hover","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"AdditionalHover"},"sw-header--property-bar":{"type":"story","subtype":"story","id":"sw-header--property-bar","name":"Property Bar","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyBar"},"sw-header--dynamic-controls":{"type":"story","subtype":"story","id":"sw-header--dynamic-controls","name":"Dynamic Controls","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DynamicControls"},"sw-header--colorize":{"type":"story","subtype":"story","id":"sw-header--colorize","name":"Colorize","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Colorize"},"sw-header--composition":{"type":"story","subtype":"story","id":"sw-header--composition","name":"Composition (Visibility · Order)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Composition"},"sw-header--property-panel-none":{"type":"story","subtype":"story","id":"sw-header--property-panel-none","name":"Property Panel · 선택 없음","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelNone"},"sw-header--property-panel-all":{"type":"story","subtype":"story","id":"sw-header--property-panel-all","name":"Property Panel · 전체 선택","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelAll"},"sw-header--property-panel-circle":{"type":"story","subtype":"story","id":"sw-header--property-panel-circle","name":"Property Panel · 원 1개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCircle"},"sw-header--property-panel-expanded":{"type":"story","subtype":"story","id":"sw-header--property-panel-expanded","name":"Property Panel · 모두 펼침","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelExpanded"},"sw-header--property-panel-compare":{"type":"story","subtype":"story","id":"sw-header--property-panel-compare","name":"Property Panel · 4개 비교","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCompare"},"sw-header--property-shape-slot":{"type":"story","subtype":"story","id":"sw-header--property-shape-slot","name":"Property Panel · 형상 Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyShapeSlot"},"sw-header--property-fields":{"type":"story","subtype":"story","id":"sw-header--property-fields","name":"Property Panel · 필드 13개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyFields"},"sw-header--composed-controls":{"type":"story","subtype":"story","id":"sw-header--composed-controls","name":"Composed Controls","title":"SW/Header/Dropdown","importPath":"./src/sw/sw-header-dropdown.stories.tsx","tags":["dev","test","manifest"],"exportName":"ComposedControls"},"theme-designer-playground--editor":{"type":"story","subtype":"story","id":"theme-designer-playground--editor","name":"Designer Playground","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal"],"exportName":"Editor"},"theme-designer-playground--live-verification":{"type":"story","subtype":"story","id":"theme-designer-playground--live-verification","name":"Live Verification","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal","verification","play-fn"],"exportName":"LiveVerification"},"theme-runtime-contract--comparison":{"type":"story","subtype":"story","id":"theme-runtime-contract--comparison","name":"Comparison","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Comparison"},"theme-runtime-contract--global-external":{"type":"story","subtype":"story","id":"theme-runtime-contract--global-external","name":"Global External","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"GlobalExternal"},"theme-runtime-contract--verification":{"type":"story","subtype":"story","id":"theme-runtime-contract--verification","name":"Verification","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Verification"},"theme-runtime-contract--dashboard":{"type":"story","subtype":"story","id":"theme-runtime-contract--dashboard","name":"Dashboard","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Dashboard"},"theme-runtime-contract-loader--cdn-verification":{"type":"story","subtype":"story","id":"theme-runtime-contract-loader--cdn-verification","name":"Cdn Verification","title":"Theme/Runtime Contract/Loader","importPath":"./src/theme/runtime-loader.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"CdnVerification"}}} \ No newline at end of file diff --git a/docs/sw/storybook-dropdown-page-qa/browser-smoke.txt b/docs/sw/storybook-dropdown-page-qa/browser-smoke.txt new file mode 100644 index 0000000..0acfb0d --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/browser-smoke.txt @@ -0,0 +1,233 @@ +PASS 28 -> 24 SW Stories, exactly four approved Dropdown retirements +PASS Dropdown is one Story directly under Header with original ID, no Dropdown folder +PASS menu correction keeps all 24 IDs; only composed Story name/title change +PASS all non-SW index entries identical +PASS all retained declarations identical outside imports, meta and ComposedDemo +PASS runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched +PASS render sw-header--composed-controls +PASS render sw-header--detail-buttons +PASS render sw-header--overview +PASS render sw-header--interactive-states +PASS render sw-header--window-move-motion +PASS render sw-header--logo-slot +PASS render sw-header--document-dropdown +PASS render sw-header--responsive-more +PASS render sw-header--layer-detail-input +PASS render sw-header--property-panel +PASS render sw-header--property-panel-variants +PASS render sw-header--k-guide +PASS render sw-header--additional-hover +PASS render sw-header--property-bar +PASS render sw-header--dynamic-controls +PASS render sw-header--colorize +PASS render sw-header--composition +PASS render sw-header--property-panel-none +PASS render sw-header--property-panel-all +PASS render sw-header--property-panel-circle +PASS render sw-header--property-panel-expanded +PASS render sw-header--property-panel-compare +PASS render sw-header--property-shape-slot +PASS render sw-header--property-fields +PASS Dropdown page contains the Composed Controls group +PASS one copy of five Dropdown fields and the details group +PASS composition wraps without page overflow or scaling at 390 +PASS 레이어 Hover does not open at 390 +PASS 레이어 overlay in viewport, not clipped or covered at 390 +PASS 레이어 selected and expanded at 390 +PASS 레이어 Escape closes and restores focus at 390 +PASS 레이어 trigger toggles closed at 390 +PASS 레이어 outside click closes at 390 +PASS 색상 Hover does not open at 390 +PASS 색상 overlay in viewport, not clipped or covered at 390 +PASS 색상 selected and expanded at 390 +PASS 색상 Escape closes and restores focus at 390 +PASS 색상 trigger toggles closed at 390 +PASS 색상 outside click closes at 390 +PASS 선스타일 Hover does not open at 390 +PASS 선스타일 overlay in viewport, not clipped or covered at 390 +PASS 선스타일 selected and expanded at 390 +PASS 선스타일 Escape closes and restores focus at 390 +PASS 선스타일 trigger toggles closed at 390 +PASS 선스타일 outside click closes at 390 +PASS 문자스타일 Hover does not open at 390 +PASS 문자스타일 overlay in viewport, not clipped or covered at 390 +PASS 문자스타일 selected and expanded at 390 +PASS 문자스타일 Escape closes and restores focus at 390 +PASS 문자스타일 trigger toggles closed at 390 +PASS 문자스타일 outside click closes at 390 +PASS 치수스타일 Hover does not open at 390 +PASS 치수스타일 overlay in viewport, not clipped or covered at 390 +PASS 치수스타일 selected and expanded at 390 +PASS 치수스타일 Escape closes and restores focus at 390 +PASS 치수스타일 trigger toggles closed at 390 +PASS 치수스타일 outside click closes at 390 +PASS composition wraps without page overflow or scaling at 768 +PASS 레이어 Hover does not open at 768 +PASS 레이어 overlay in viewport, not clipped or covered at 768 +PASS 레이어 selected and expanded at 768 +PASS 레이어 Escape closes and restores focus at 768 +PASS 레이어 trigger toggles closed at 768 +PASS 레이어 outside click closes at 768 +PASS 색상 Hover does not open at 768 +PASS 색상 overlay in viewport, not clipped or covered at 768 +PASS 색상 selected and expanded at 768 +PASS 색상 Escape closes and restores focus at 768 +PASS 색상 trigger toggles closed at 768 +PASS 색상 outside click closes at 768 +PASS 선스타일 Hover does not open at 768 +PASS 선스타일 overlay in viewport, not clipped or covered at 768 +PASS 선스타일 selected and expanded at 768 +PASS 선스타일 Escape closes and restores focus at 768 +PASS 선스타일 trigger toggles closed at 768 +PASS 선스타일 outside click closes at 768 +PASS 문자스타일 Hover does not open at 768 +PASS 문자스타일 overlay in viewport, not clipped or covered at 768 +PASS 문자스타일 selected and expanded at 768 +PASS 문자스타일 Escape closes and restores focus at 768 +PASS 문자스타일 trigger toggles closed at 768 +PASS 문자스타일 outside click closes at 768 +PASS 치수스타일 Hover does not open at 768 +PASS 치수스타일 overlay in viewport, not clipped or covered at 768 +PASS 치수스타일 selected and expanded at 768 +PASS 치수스타일 Escape closes and restores focus at 768 +PASS 치수스타일 trigger toggles closed at 768 +PASS 치수스타일 outside click closes at 768 +PASS composition wraps without page overflow or scaling at 1280 +PASS 레이어 Hover does not open at 1280 +PASS 레이어 overlay in viewport, not clipped or covered at 1280 +PASS 레이어 selected and expanded at 1280 +PASS 레이어 Escape closes and restores focus at 1280 +PASS 레이어 trigger toggles closed at 1280 +PASS 레이어 outside click closes at 1280 +PASS 색상 Hover does not open at 1280 +PASS 색상 overlay in viewport, not clipped or covered at 1280 +PASS 색상 selected and expanded at 1280 +PASS 색상 Escape closes and restores focus at 1280 +PASS 색상 trigger toggles closed at 1280 +PASS 색상 outside click closes at 1280 +PASS 선스타일 Hover does not open at 1280 +PASS 선스타일 overlay in viewport, not clipped or covered at 1280 +PASS 선스타일 selected and expanded at 1280 +PASS 선스타일 Escape closes and restores focus at 1280 +PASS 선스타일 trigger toggles closed at 1280 +PASS 선스타일 outside click closes at 1280 +PASS 문자스타일 Hover does not open at 1280 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1280 +PASS 문자스타일 selected and expanded at 1280 +PASS 문자스타일 Escape closes and restores focus at 1280 +PASS 문자스타일 trigger toggles closed at 1280 +PASS 문자스타일 outside click closes at 1280 +PASS 치수스타일 Hover does not open at 1280 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1280 +PASS 치수스타일 selected and expanded at 1280 +PASS 치수스타일 Escape closes and restores focus at 1280 +PASS 치수스타일 trigger toggles closed at 1280 +PASS 치수스타일 outside click closes at 1280 +PASS composition wraps without page overflow or scaling at 1440 +PASS 레이어 Hover does not open at 1440 +PASS 레이어 overlay in viewport, not clipped or covered at 1440 +PASS 레이어 selected and expanded at 1440 +PASS 레이어 Escape closes and restores focus at 1440 +PASS 레이어 trigger toggles closed at 1440 +PASS 레이어 outside click closes at 1440 +PASS 색상 Hover does not open at 1440 +PASS 색상 overlay in viewport, not clipped or covered at 1440 +PASS 색상 selected and expanded at 1440 +PASS 색상 Escape closes and restores focus at 1440 +PASS 색상 trigger toggles closed at 1440 +PASS 색상 outside click closes at 1440 +PASS 선스타일 Hover does not open at 1440 +PASS 선스타일 overlay in viewport, not clipped or covered at 1440 +PASS 선스타일 selected and expanded at 1440 +PASS 선스타일 Escape closes and restores focus at 1440 +PASS 선스타일 trigger toggles closed at 1440 +PASS 선스타일 outside click closes at 1440 +PASS 문자스타일 Hover does not open at 1440 +PASS 문자스타일 overlay in viewport, not clipped or covered at 1440 +PASS 문자스타일 selected and expanded at 1440 +PASS 문자스타일 Escape closes and restores focus at 1440 +PASS 문자스타일 trigger toggles closed at 1440 +PASS 문자스타일 outside click closes at 1440 +PASS 치수스타일 Hover does not open at 1440 +PASS 치수스타일 overlay in viewport, not clipped or covered at 1440 +PASS 치수스타일 selected and expanded at 1440 +PASS 치수스타일 Escape closes and restores focus at 1440 +PASS 치수스타일 trigger toggles closed at 1440 +PASS 치수스타일 outside click closes at 1440 +PASS keyboard opens layer menu and focuses current row +PASS keyboard moves to next layer row +PASS onLayerSelect callback exactly once +PASS layer selection appears, closes and restores focus +PASS selected layer retains original row Hover background +PASS onLayerVisibilityChange callback exactly once +PASS onLayerVisibilityChange toggles only its own state, menu remains open +PASS onLayerFreezeChange callback exactly once +PASS onLayerFreezeChange toggles only its own state, menu remains open +PASS onLayerLockChange callback exactly once +PASS onLayerLockChange toggles only its own state, menu remains open +PASS disabled layer selection and toggles blocked +PASS full color menu: seven palette chips, two user colors, modes, RGB and pick +PASS onColorSelect callback exactly once +PASS color palette updates displayed RGB and leaves menu open +PASS onColorModeChange callback exactly once +PASS ByBlock On and displayed mode +PASS onColorInput callback exactly once +PASS RGB commit clears mode and updates chip +PASS invalid RGB restores without callback +PASS onColorPick callback exactly once +PASS color pick closes and restores focus +PASS color changes leave layer, line, text and dimension values intact +PASS all original line rows and weights retained +PASS onLineTypeSelect callback exactly once +PASS selected line retains original row Hover and preview +PASS onLineWeightSelect callback exactly once +PASS onLineWeightValueChange callback exactly once +PASS onLineScaleChange callback exactly once +PASS line type, editable weight and scale update independently; menu stays open +PASS invalid scale restores, no callback +PASS 문자스타일 full two-item list retained +PASS onTextStyleSelect callback exactly once +PASS 문자스타일 selection displayed, closes, focus returns +PASS 치수스타일 full two-item list retained +PASS onDimensionStyleSelect callback exactly once +PASS 치수스타일 selection displayed, closes, focus returns +PASS 레이어 detail Hover uses existing text opacity +PASS onLayerDetail callback exactly once +PASS 레이어 detail closes, focus returns, no fabricated popup +PASS 색상 detail Hover uses existing text opacity +PASS onColorDetail callback exactly once +PASS 색상 detail closes, focus returns, no fabricated popup +PASS 선스타일 detail Hover uses existing text opacity +PASS onLineStyleDetail callback exactly once +PASS 선스타일 detail closes, focus returns, no fabricated popup +PASS 문자스타일 detail Hover uses existing text opacity +PASS onTextStyleDetail callback exactly once +PASS 문자스타일 detail closes, focus returns, no fabricated popup +PASS 치수스타일 detail Hover uses existing text opacity +PASS onDimensionStyleDetail callback exactly once +PASS 치수스타일 detail closes, focus returns, no fabricated popup +PASS opening another control leaves exactly one menu and preserves selection +PASS keyboard Tab enters the open color controls +PASS details opens existing 28px property Bar +PASS details opens existing 314px property panel with focus +PASS property Bar and panel share edited state +PASS property panel weight edit appears in composed line field +PASS property panel close returns focus +PASS property panel Escape returns focus +PASS narrow details panel keeps natural width and fits viewport +PASS all seven actionable controls Disabled +PASS Disabled controls block callbacks and overlays +PASS callback-free layer icons become readonly status images +PASS missing detail callback keeps safe no-op and menu open +PASS retained long layer scenario +PASS long layer name preserved with full title +PASS retained many layer scenario +PASS long layer list scrolls internally +PASS all 40 user colors accessible with palette scroll +PASS retained empty layer scenario +PASS Overview keeps one Header at 49px and 16:9 Stage +PASS Window Move Motion retains only nine 3x steps +PASS manager shows a single Dropdown link directly under Header, no Composed Controls submenu +PASS retired Dropdown links absent in manager +PASS no browser console or page errors +{"status":"PASS","checks":232,"errors":[]} diff --git a/docs/sw/storybook-dropdown-page-qa/draft-source-index.json b/docs/sw/storybook-dropdown-page-qa/draft-source-index.json new file mode 100644 index 0000000..f3d86fc --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/draft-source-index.json @@ -0,0 +1 @@ +{"v":5,"entries":{"foundation-color--all":{"type":"story","subtype":"story","id":"foundation-color--all","name":"Color","title":"Foundation/Color","importPath":"./src/foundation/color.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-typography--all":{"type":"story","subtype":"story","id":"foundation-typography--all","name":"Typography","title":"Foundation/Typography","importPath":"./src/foundation/typography.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-layout--all":{"type":"story","subtype":"story","id":"foundation-layout--all","name":"Layout","title":"Foundation/Layout","importPath":"./src/foundation/layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--all":{"type":"story","subtype":"story","id":"components-form-button--all","name":"Button","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--roles":{"type":"story","subtype":"story","id":"components-form-button--roles","name":"Roles","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Roles"},"components-form-button--sizes":{"type":"story","subtype":"story","id":"components-form-button--sizes","name":"Sizes","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-button--states":{"type":"story","subtype":"story","id":"components-form-button--states","name":"Brand States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-button--standard-states":{"type":"story","subtype":"story","id":"components-form-button--standard-states","name":"Standard States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandardStates"},"components-form-button--long-label":{"type":"story","subtype":"story","id":"components-form-button--long-label","name":"Long Label","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-form-button--korean-labels":{"type":"story","subtype":"story","id":"components-form-button--korean-labels","name":"Korean Labels","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"KoreanLabels"},"components-form-button--icon-text-narrow":{"type":"story","subtype":"story","id":"components-form-button--icon-text-narrow","name":"Icon Text Narrow","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconTextNarrow"},"components-form-button--destructive":{"type":"story","subtype":"story","id":"components-form-button--destructive","name":"Destructive","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-form-button--playground":{"type":"story","subtype":"story","id":"components-form-button--playground","name":"Playground","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-button--compatibility":{"type":"story","subtype":"story","id":"components-form-button--compatibility","name":"Compatibility","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-form-input--all":{"type":"story","subtype":"story","id":"components-form-input--all","name":"Input","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-input--default":{"type":"story","subtype":"story","id":"components-form-input--default","name":"Default","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-input--focus":{"type":"story","subtype":"story","id":"components-form-input--focus","name":"Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-input--error":{"type":"story","subtype":"story","id":"components-form-input--error","name":"Error","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-input--invalid-focus":{"type":"story","subtype":"story","id":"components-form-input--invalid-focus","name":"Invalid Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-input--error-message":{"type":"story","subtype":"story","id":"components-form-input--error-message","name":"Error Message","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-input--required":{"type":"story","subtype":"story","id":"components-form-input--required","name":"Required","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-input--disabled":{"type":"story","subtype":"story","id":"components-form-input--disabled","name":"Disabled","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-input--readonly":{"type":"story","subtype":"story","id":"components-form-input--readonly","name":"Readonly","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-input--sizes":{"type":"story","subtype":"story","id":"components-form-input--sizes","name":"Compare Sizes","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-input--small":{"type":"story","subtype":"story","id":"components-form-input--small","name":"Small","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Small"},"components-form-input--medium":{"type":"story","subtype":"story","id":"components-form-input--medium","name":"Medium","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-input--large":{"type":"story","subtype":"story","id":"components-form-input--large","name":"Large","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-input--playground":{"type":"story","subtype":"story","id":"components-form-input--playground","name":"Playground","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-textarea--all":{"type":"story","subtype":"story","id":"components-form-textarea--all","name":"Textarea","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-textarea--default":{"type":"story","subtype":"story","id":"components-form-textarea--default","name":"Default","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-textarea--focus":{"type":"story","subtype":"story","id":"components-form-textarea--focus","name":"Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-textarea--error":{"type":"story","subtype":"story","id":"components-form-textarea--error","name":"Error","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-textarea--invalid-focus":{"type":"story","subtype":"story","id":"components-form-textarea--invalid-focus","name":"Invalid Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-textarea--error-message":{"type":"story","subtype":"story","id":"components-form-textarea--error-message","name":"Error Message","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-textarea--required":{"type":"story","subtype":"story","id":"components-form-textarea--required","name":"Required","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-textarea--readonly":{"type":"story","subtype":"story","id":"components-form-textarea--readonly","name":"Readonly","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-textarea--disabled":{"type":"story","subtype":"story","id":"components-form-textarea--disabled","name":"Disabled","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-textarea--long-content":{"type":"story","subtype":"story","id":"components-form-textarea--long-content","name":"Long Content","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-textarea--playground":{"type":"story","subtype":"story","id":"components-form-textarea--playground","name":"Playground","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-select--all":{"type":"story","subtype":"story","id":"components-form-select--all","name":"Select","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-select--default":{"type":"story","subtype":"story","id":"components-form-select--default","name":"Default","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-select--invalid-focus":{"type":"story","subtype":"story","id":"components-form-select--invalid-focus","name":"Invalid Focus","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-form-select--open":{"type":"story","subtype":"story","id":"components-form-select--open","name":"Open","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-form-select--selected":{"type":"story","subtype":"story","id":"components-form-select--selected","name":"Selected","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-form-select--disabled":{"type":"story","subtype":"story","id":"components-form-select--disabled","name":"Disabled","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-select--sizes":{"type":"story","subtype":"story","id":"components-form-select--sizes","name":"Compare Sizes","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-select--medium":{"type":"story","subtype":"story","id":"components-form-select--medium","name":"Medium","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-select--large":{"type":"story","subtype":"story","id":"components-form-select--large","name":"Large","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-select--long-content":{"type":"story","subtype":"story","id":"components-form-select--long-content","name":"Long Content","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-select--open-large-short":{"type":"story","subtype":"story","id":"components-form-select--open-large-short","name":"Open Large Short","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeShort"},"components-form-select--open-medium-long":{"type":"story","subtype":"story","id":"components-form-select--open-medium-long","name":"Open Medium Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenMediumLong"},"components-form-select--open-large-long":{"type":"story","subtype":"story","id":"components-form-select--open-large-long","name":"Open Large Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeLong"},"components-form-select--open-top":{"type":"story","subtype":"story","id":"components-form-select--open-top","name":"Open Top","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-form-select--open-top-long":{"type":"story","subtype":"story","id":"components-form-select--open-top-long","name":"Open Top Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTopLong"},"components-form-select--list-size-comparison":{"type":"story","subtype":"story","id":"components-form-select--list-size-comparison","name":"Medium Trigger / List Size Comparison","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ListSizeComparison"},"components-form-select--scroll":{"type":"story","subtype":"story","id":"components-form-select--scroll","name":"Scroll","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"components-form-select--playground":{"type":"story","subtype":"story","id":"components-form-select--playground","name":"Playground","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-checkbox--all":{"type":"story","subtype":"story","id":"components-form-checkbox--all","name":"Checkbox","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-checkbox--unchecked":{"type":"story","subtype":"story","id":"components-form-checkbox--unchecked","name":"Unchecked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Unchecked"},"components-form-checkbox--checked":{"type":"story","subtype":"story","id":"components-form-checkbox--checked","name":"Checked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Checked"},"components-form-checkbox--indeterminate":{"type":"story","subtype":"story","id":"components-form-checkbox--indeterminate","name":"Indeterminate","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Indeterminate"},"components-form-checkbox--disabled":{"type":"story","subtype":"story","id":"components-form-checkbox--disabled","name":"Disabled","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-checkbox--error":{"type":"story","subtype":"story","id":"components-form-checkbox--error","name":"Error","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-checkbox--playground":{"type":"story","subtype":"story","id":"components-form-checkbox--playground","name":"Playground","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-radio-group--all":{"type":"story","subtype":"story","id":"components-form-radio-group--all","name":"Radio Group","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-radio-group--vertical":{"type":"story","subtype":"story","id":"components-form-radio-group--vertical","name":"Vertical","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-form-radio-group--horizontal":{"type":"story","subtype":"story","id":"components-form-radio-group--horizontal","name":"Horizontal","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-form-radio-group--disabled":{"type":"story","subtype":"story","id":"components-form-radio-group--disabled","name":"Disabled","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-radio-group--error":{"type":"story","subtype":"story","id":"components-form-radio-group--error","name":"Error","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-switch--all":{"type":"story","subtype":"story","id":"components-form-switch--all","name":"Switch","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-switch--off":{"type":"story","subtype":"story","id":"components-form-switch--off","name":"Off","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Off"},"components-form-switch--on":{"type":"story","subtype":"story","id":"components-form-switch--on","name":"On","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"On"},"components-form-switch--disabled":{"type":"story","subtype":"story","id":"components-form-switch--disabled","name":"Disabled","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-slider--all":{"type":"story","subtype":"story","id":"components-form-slider--all","name":"Slider","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-slider--single-value":{"type":"story","subtype":"story","id":"components-form-slider--single-value","name":"Single","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SingleValue"},"components-form-slider--range-value":{"type":"story","subtype":"story","id":"components-form-slider--range-value","name":"Range","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RangeValue"},"components-form-slider--disabled-slider":{"type":"story","subtype":"story","id":"components-form-slider--disabled-slider","name":"Disabled","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledSlider"},"components-form-slider--focus":{"type":"story","subtype":"story","id":"components-form-slider--focus","name":"Focus","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-toggle--all":{"type":"story","subtype":"story","id":"components-form-toggle--all","name":"Toggle","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle--states":{"type":"story","subtype":"story","id":"components-form-toggle--states","name":"States","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-toggle--icon-only":{"type":"story","subtype":"story","id":"components-form-toggle--icon-only","name":"Icon Only","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconOnly"},"components-form-toggle--disabled-toggle":{"type":"story","subtype":"story","id":"components-form-toggle--disabled-toggle","name":"Disabled","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledToggle"},"components-form-toggle--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-toggle-group--all":{"type":"story","subtype":"story","id":"components-form-toggle-group--all","name":"Toggle Group","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle-group--single-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--single-selection","name":"Single","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-form-toggle-group--multiple-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--multiple-selection","name":"Multiple","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"MultipleSelection"},"components-form-toggle-group--vertical-group":{"type":"story","subtype":"story","id":"components-form-toggle-group--vertical-group","name":"Vertical","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"VerticalGroup"},"components-form-toggle-group--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle-group--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-label--all":{"type":"story","subtype":"story","id":"components-form-label--all","name":"Label","title":"Components/Form/Label","importPath":"./src/components/label.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--all":{"type":"story","subtype":"story","id":"components-navigation-tabs--all","name":"Tabs","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--secondary":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary","name":"Secondary","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Secondary"},"components-navigation-tabs--selected-first":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-first","name":"Selected First","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedFirst"},"components-navigation-tabs--selected-last":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-last","name":"Selected Last","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedLast"},"components-navigation-tabs--focus":{"type":"story","subtype":"story","id":"components-navigation-tabs--focus","name":"Focus","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-navigation-tabs--disabled":{"type":"story","subtype":"story","id":"components-navigation-tabs--disabled","name":"Disabled","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-navigation-tabs--overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--overflow","name":"Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-navigation-tabs--secondary-overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary-overflow","name":"Secondary Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SecondaryOverflow"},"components-navigation-tabs--long-label":{"type":"story","subtype":"story","id":"components-navigation-tabs--long-label","name":"Long Label","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-navigation-tabs--compatibility":{"type":"story","subtype":"story","id":"components-navigation-tabs--compatibility","name":"Compatibility","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-navigation-breadcrumb--all":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--all","name":"Breadcrumb","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-breadcrumb--basic-3":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--basic-3","name":"Basic","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic3"},"components-navigation-breadcrumb--with-ellipsis":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--with-ellipsis","name":"Ellipsis","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithEllipsis"},"components-navigation-breadcrumb--long-path":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--long-path","name":"Long Path","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongPath"},"components-navigation-pagination--all":{"type":"story","subtype":"story","id":"components-navigation-pagination--all","name":"Pagination","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-pagination--first-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--first-page","name":"First Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstPage"},"components-navigation-pagination--last-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--last-page","name":"Last Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastPage"},"components-navigation-pagination--long-range":{"type":"story","subtype":"story","id":"components-navigation-pagination--long-range","name":"Long Range","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongRange"},"components-navigation-navigation-menu--all":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--all","name":"Navigation Menu","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-navigation-menu--default":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--default","name":"Default","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-navigation-navigation-menu--no-viewport":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--no-viewport","name":"No Viewport","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NoViewport"},"components-navigation-navigation-menu--indicator-alignment":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--indicator-alignment","name":"Indicator Alignment","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IndicatorAlignment"},"components-navigation-menubar--all":{"type":"story","subtype":"story","id":"components-navigation-menubar--all","name":"Menubar","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-menubar--trigger-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--trigger-focus","name":"Trigger Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"TriggerFocus"},"components-navigation-menubar--open-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--open-focus","name":"Open Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"OpenFocus"},"components-overlay-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-dialog--all","name":"Dialog","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dialog--open":{"type":"story","subtype":"story","id":"components-overlay-dialog--open","name":"Open","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-dialog--long-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--long-content-open","name":"Long Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContentOpen"},"components-overlay-dialog--wide-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--wide-content-open","name":"Wide Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WideContentOpen"},"components-overlay-dialog--body-scroll-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--body-scroll-open","name":"Body Scroll","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BodyScrollOpen"},"components-overlay-dialog--delete-confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--delete-confirmation-open","name":"Delete Confirmation","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DeleteConfirmationOpen"},"components-overlay-alert-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--all","name":"Alert Dialog","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-alert-dialog--confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--confirmation-open","name":"Confirmation","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ConfirmationOpen"},"components-overlay-alert-dialog--destructive-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--destructive-open","name":"Destructive","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DestructiveOpen"},"components-overlay-sheet--all":{"type":"story","subtype":"story","id":"components-overlay-sheet--all","name":"Sheet","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-sheet--right":{"type":"story","subtype":"story","id":"components-overlay-sheet--right","name":"Right","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Right"},"components-overlay-sheet--left":{"type":"story","subtype":"story","id":"components-overlay-sheet--left","name":"Left","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Left"},"components-overlay-sheet--top":{"type":"story","subtype":"story","id":"components-overlay-sheet--top","name":"Top","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Top"},"components-overlay-sheet--bottom":{"type":"story","subtype":"story","id":"components-overlay-sheet--bottom","name":"Bottom","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Bottom"},"components-overlay-sheet--form":{"type":"story","subtype":"story","id":"components-overlay-sheet--form","name":"Form","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-sheet--long-content":{"type":"story","subtype":"story","id":"components-overlay-sheet--long-content","name":"Long Content","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-drawer--all":{"type":"story","subtype":"story","id":"components-overlay-drawer--all","name":"Drawer","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-drawer--open":{"type":"story","subtype":"story","id":"components-overlay-drawer--open","name":"Open","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-drawer--form":{"type":"story","subtype":"story","id":"components-overlay-drawer--form","name":"Form","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-drawer--long-content":{"type":"story","subtype":"story","id":"components-overlay-drawer--long-content","name":"Long Content","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-dropdown-menu--all":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--all","name":"Dropdown Menu","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dropdown-menu--open":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--open","name":"Open","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-context-menu--all":{"type":"story","subtype":"story","id":"components-overlay-context-menu--all","name":"Context Menu","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-context-menu--open":{"type":"story","subtype":"story","id":"components-overlay-context-menu--open","name":"Open","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Open"},"components-overlay-popover--all":{"type":"story","subtype":"story","id":"components-overlay-popover--all","name":"Popover","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-popover--open":{"type":"story","subtype":"story","id":"components-overlay-popover--open","name":"Open","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-tooltip--all":{"type":"story","subtype":"story","id":"components-overlay-tooltip--all","name":"Tooltip","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-tooltip--open":{"type":"story","subtype":"story","id":"components-overlay-tooltip--open","name":"Open","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-hover-card--all":{"type":"story","subtype":"story","id":"components-overlay-hover-card--all","name":"Hover Card","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-hover-card--open":{"type":"story","subtype":"story","id":"components-overlay-hover-card--open","name":"Open","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-data-display-card--all":{"type":"story","subtype":"story","id":"components-data-display-card--all","name":"Card","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-card--surfaces":{"type":"story","subtype":"story","id":"components-data-display-card--surfaces","name":"Surfaces","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Surfaces"},"components-data-display-card--action":{"type":"story","subtype":"story","id":"components-data-display-card--action","name":"Action","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Action"},"components-data-display-card--compatibility":{"type":"story","subtype":"story","id":"components-data-display-card--compatibility","name":"Compatibility","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-data-display-table--all":{"type":"story","subtype":"story","id":"components-data-display-table--all","name":"Table","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-table--basic":{"type":"story","subtype":"story","id":"components-data-display-table--basic","name":"Basic","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic"},"components-data-display-table--selected":{"type":"story","subtype":"story","id":"components-data-display-table--selected","name":"Selected","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-data-display-table--long-text":{"type":"story","subtype":"story","id":"components-data-display-table--long-text","name":"Long Text","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongText"},"components-data-display-table--overflow":{"type":"story","subtype":"story","id":"components-data-display-table--overflow","name":"Horizontal Overflow","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-data-display-badge--all":{"type":"story","subtype":"story","id":"components-data-display-badge--all","name":"Badge","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-badge--variants":{"type":"story","subtype":"story","id":"components-data-display-badge--variants","name":"Variants","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Variants"},"components-data-display-badge--playground":{"type":"story","subtype":"story","id":"components-data-display-badge--playground","name":"Playground","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-data-display-avatar--all":{"type":"story","subtype":"story","id":"components-data-display-avatar--all","name":"Avatar","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-avatar--image":{"type":"story","subtype":"story","id":"components-data-display-avatar--image","name":"Image","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Image"},"components-data-display-avatar--fallback-error":{"type":"story","subtype":"story","id":"components-data-display-avatar--fallback-error","name":"Fallback","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FallbackError"},"components-data-display-progress--all":{"type":"story","subtype":"story","id":"components-data-display-progress--all","name":"Progress","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-progress--zero":{"type":"story","subtype":"story","id":"components-data-display-progress--zero","name":"Zero","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Zero"},"components-data-display-progress--middle":{"type":"story","subtype":"story","id":"components-data-display-progress--middle","name":"Middle","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Middle"},"components-data-display-progress--full":{"type":"story","subtype":"story","id":"components-data-display-progress--full","name":"Full","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Full"},"components-data-display-progress--non-default-max":{"type":"story","subtype":"story","id":"components-data-display-progress--non-default-max","name":"Non Default Max","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"NonDefaultMax"},"components-data-display-skeleton--all":{"type":"story","subtype":"story","id":"components-data-display-skeleton--all","name":"Skeleton","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-skeleton--text":{"type":"story","subtype":"story","id":"components-data-display-skeleton--text","name":"Text","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Text"},"components-data-display-skeleton--card-list":{"type":"story","subtype":"story","id":"components-data-display-skeleton--card-list","name":"Card List","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CardList"},"components-data-display-separator--all":{"type":"story","subtype":"story","id":"components-data-display-separator--all","name":"Separator","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-separator--horizontal":{"type":"story","subtype":"story","id":"components-data-display-separator--horizontal","name":"Horizontal","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-data-display-separator--vertical":{"type":"story","subtype":"story","id":"components-data-display-separator--vertical","name":"Vertical","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-data-display-aspect-ratio--all":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--all","name":"Aspect Ratio","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-aspect-ratio--wide":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--wide","name":"16:9","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Wide"},"components-data-display-aspect-ratio--square":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--square","name":"1:1","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Square"},"components-data-display-carousel--all":{"type":"story","subtype":"story","id":"components-data-display-carousel--all","name":"Carousel","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-carousel--basic-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--basic-carousel","name":"Basic","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BasicCarousel"},"components-data-display-carousel--multiple-items":{"type":"story","subtype":"story","id":"components-data-display-carousel--multiple-items","name":"Multiple Items","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MultipleItems"},"components-data-display-carousel--loop-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--loop-carousel","name":"Loop","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LoopCarousel"},"components-data-display-carousel--vertical-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--vertical-carousel","name":"Vertical","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalCarousel"},"components-data-display-scroll-area--all":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--all","name":"Scroll Area","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-scroll-area--vertical-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--vertical-scroll","name":"Vertical","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalScroll"},"components-data-display-scroll-area--horizontal-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--horizontal-scroll","name":"Horizontal","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalScroll"},"components-disclosure-accordion--all":{"type":"story","subtype":"story","id":"components-disclosure-accordion--all","name":"Accordion","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-accordion--single":{"type":"story","subtype":"story","id":"components-disclosure-accordion--single","name":"Single","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Single"},"components-disclosure-accordion--multiple":{"type":"story","subtype":"story","id":"components-disclosure-accordion--multiple","name":"Multiple","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Multiple"},"components-disclosure-accordion--disabled":{"type":"story","subtype":"story","id":"components-disclosure-accordion--disabled","name":"Disabled","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-accordion--long-content":{"type":"story","subtype":"story","id":"components-disclosure-accordion--long-content","name":"Long Content","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-collapsible--all":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--all","name":"Collapsible","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-collapsible--closed":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--closed","name":"Closed","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Closed"},"components-disclosure-collapsible--open":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--open","name":"Open","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-disclosure-collapsible--disabled":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--disabled","name":"Disabled","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-collapsible--long-content":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--long-content","name":"Long Content","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-resizable--all":{"type":"story","subtype":"story","id":"components-disclosure-resizable--all","name":"Resizable","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-resizable--horizontal-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--horizontal-layout","name":"Horizontal","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalLayout"},"components-disclosure-resizable--vertical-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--vertical-layout","name":"Vertical","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalLayout"},"components-disclosure-resizable--min-max-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--min-max-layout","name":"Min Max","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MinMaxLayout"},"components-search-date-command--all":{"type":"story","subtype":"story","id":"components-search-date-command--all","name":"Command","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-command--search":{"type":"story","subtype":"story","id":"components-search-date-command--search","name":"Search","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Search"},"components-search-date-command--grouped-list":{"type":"story","subtype":"story","id":"components-search-date-command--grouped-list","name":"Grouped","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"GroupedList"},"components-search-date-combobox--all":{"type":"story","subtype":"story","id":"components-search-date-combobox--all","name":"Combobox","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-combobox--empty-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--empty-combobox","name":"Empty","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"EmptyCombobox"},"components-search-date-combobox--controlled-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--controlled-combobox","name":"Controlled","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ControlledCombobox"},"components-search-date-combobox--long-option":{"type":"story","subtype":"story","id":"components-search-date-combobox--long-option","name":"Long Option","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongOption"},"components-search-date-combobox--open-bottom":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-bottom","name":"Open Bottom","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenBottom"},"components-search-date-combobox--open-top":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-top","name":"Open Top","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-search-date-calendar--all":{"type":"story","subtype":"story","id":"components-search-date-calendar--all","name":"Calendar","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-calendar--single-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--single-selection","name":"Single","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-search-date-calendar--disabled-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--disabled-selection","name":"Disabled Dates","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"DisabledSelection"},"components-search-date-calendar--range-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--range-selection","name":"Range","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"RangeSelection"},"components-search-date-date-picker--all":{"type":"story","subtype":"story","id":"components-search-date-date-picker--all","name":"Date Picker","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-date-picker--empty-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--empty-picker","name":"Empty","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EmptyPicker"},"components-search-date-date-picker--invalid-focus":{"type":"story","subtype":"story","id":"components-search-date-date-picker--invalid-focus","name":"Invalid Focus","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-search-date-date-picker--selected-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--selected-picker","name":"Selected","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedPicker"},"components-search-date-date-picker--controlled-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--controlled-picker","name":"Controlled","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ControlledPicker"},"components-feedback-alert--all":{"type":"story","subtype":"story","id":"components-feedback-alert--all","name":"Alert","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-feedback-alert--default":{"type":"story","subtype":"story","id":"components-feedback-alert--default","name":"Default","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-feedback-alert--destructive":{"type":"story","subtype":"story","id":"components-feedback-alert--destructive","name":"Destructive","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-feedback-sonner--all":{"type":"story","subtype":"story","id":"components-feedback-sonner--all","name":"Sonner","title":"Components/Feedback/Sonner","importPath":"./src/components/sonner.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--all":{"type":"story","subtype":"story","id":"patterns-data-data-table--all","name":"Data Table","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--with-filter-bar-story":{"type":"story","subtype":"story","id":"patterns-data-data-table--with-filter-bar-story","name":"With Filter Bar","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithFilterBarStory"},"patterns-data-data-table--loading":{"type":"story","subtype":"story","id":"patterns-data-data-table--loading","name":"Loading","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-data-data-table--empty":{"type":"story","subtype":"story","id":"patterns-data-data-table--empty","name":"Empty","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-data-filter-bar--all":{"type":"story","subtype":"story","id":"patterns-data-filter-bar--all","name":"Filter Bar","title":"Patterns/Data/Filter Bar","importPath":"./src/patterns/filter-bar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--all":{"type":"story","subtype":"story","id":"patterns-layout-gnb--all","name":"GNB","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--default":{"type":"story","subtype":"story","id":"patterns-layout-gnb--default","name":"Default","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-gnb--sticky":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sticky","name":"Sticky","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sticky"},"patterns-layout-gnb--sidebar":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sidebar","name":"GNB Sidebar","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sidebar"},"patterns-layout-gnb--navigation-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--navigation-menu-open","name":"Navigation Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NavigationMenuOpen"},"patterns-layout-gnb--short-depth-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--short-depth-open","name":"Short Depth Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ShortDepthOpen"},"patterns-layout-gnb--right-edge-long-depth":{"type":"story","subtype":"story","id":"patterns-layout-gnb--right-edge-long-depth","name":"Right Edge Long Depth","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RightEdgeLongDepth"},"patterns-layout-gnb--first-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-short","name":"First Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthShort"},"patterns-layout-gnb--first-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-long","name":"First Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthLong"},"patterns-layout-gnb--middle-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-short","name":"Middle Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthShort"},"patterns-layout-gnb--middle-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-long","name":"Middle Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthLong"},"patterns-layout-gnb--last-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-short","name":"Last Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthShort"},"patterns-layout-gnb--last-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-long","name":"Last Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthLong"},"patterns-layout-gnb--edge-first-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-first-long","name":"Edge First Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeFirstLong"},"patterns-layout-gnb--edge-last-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-last-long","name":"Edge Last Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeLastLong"},"patterns-layout-gnb--user-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--user-menu-open","name":"User Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"UserMenuOpen"},"patterns-layout-gnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-gnb--long-labels","name":"Long Labels","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-gnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-gnb--with-logo","name":"With Logo","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-gnb--utilities":{"type":"story","subtype":"story","id":"patterns-layout-gnb--utilities","name":"Utilities","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Utilities"},"patterns-layout-gnb--mobile":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile","name":"Mobile","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Mobile"},"patterns-layout-gnb--mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile-menu-open","name":"Mobile Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MobileMenuOpen"},"patterns-layout-lnb--all":{"type":"story","subtype":"story","id":"patterns-layout-lnb--all","name":"LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-lnb--default":{"type":"story","subtype":"story","id":"patterns-layout-lnb--default","name":"Default","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-lnb--selected":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected","name":"Selected","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"patterns-layout-lnb--expanded":{"type":"story","subtype":"story","id":"patterns-layout-lnb--expanded","name":"Expanded","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Expanded"},"patterns-layout-lnb--selected-child":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected-child","name":"Selected Child","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedChild"},"patterns-layout-lnb--collapsed-with-selection":{"type":"story","subtype":"story","id":"patterns-layout-lnb--collapsed-with-selection","name":"Collapsed With Selection","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CollapsedWithSelection"},"patterns-layout-lnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-logo","name":"With Logo","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-lnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--long-labels","name":"Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-lnb--scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--scroll","name":"Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"patterns-layout-lnb--third-level":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level","name":"Third Level","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-lnb--third-level-long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-long-labels","name":"Third Level Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelLongLabels"},"patterns-layout-lnb--third-level-scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-scroll","name":"Third Level Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelScroll"},"patterns-layout-lnb--with-gnb":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-gnb","name":"VERIFICATION ONLY · GNB + LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithGNB"},"patterns-layout-lnb--standalone-desktop":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-desktop","name":"LNB Standalone Desktop","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneDesktop"},"patterns-layout-lnb--lnb-profile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--lnb-profile-menu-open","name":"LNB Profile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LNBProfileMenuOpen"},"patterns-layout-lnb--standalone-mobile":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile","name":"LNB Standalone Mobile","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobile"},"patterns-layout-lnb--standalone-mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile-menu-open","name":"LNB Standalone Mobile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobileMenuOpen"},"patterns-layout-loading-screen--all":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--all","name":"Loading Screen","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-loading-screen--inline":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--inline","name":"Inline","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Inline"},"patterns-layout-dashboard-layout--all":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--all","name":"Dashboard","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-dashboard-layout--with-sidebar":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--with-sidebar","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithSidebar"},"patterns-layout-dashboard-layout--third-level":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--third-level","name":"VERIFICATION ONLY — 운영 사용 금지 · Third Level","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-dashboard-layout--sidebar-only":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--sidebar-only","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SidebarOnly"},"patterns-layout-dashboard-layout--long-content":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--long-content","name":"VERIFICATION ONLY — 운영 사용 금지 · Long Content","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"patterns-layout-dashboard-layout--loading":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--loading","name":"Loading","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-layout-dashboard-layout--empty":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--empty","name":"Empty","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-layout-dashboard-layout--framed":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--framed","name":"VERIFICATION ONLY — 운영 사용 금지 · Framed","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Framed"},"patterns-layout-page-header--all":{"type":"story","subtype":"story","id":"patterns-layout-page-header--all","name":"Page Header","title":"Patterns/Layout/Page Header","importPath":"./src/patterns/page-header.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"orgchart--logo-personnel-summary":{"type":"story","subtype":"story","id":"orgchart--logo-personnel-summary","name":"Overview","title":"OrgChart/Overview","importPath":"./src/org-chart/org-chart-p1.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"LogoPersonnelSummary"},"orgchart--department-colors":{"type":"story","subtype":"story","id":"orgchart--department-colors","name":"Department Colors","title":"OrgChart/Department Colors","importPath":"./src/org-chart/org-chart-department-colors.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"DepartmentColors"},"orgchart--full-composition":{"type":"story","subtype":"story","id":"orgchart--full-composition","name":"Full Composition","title":"OrgChart/Full Composition","importPath":"./src/org-chart/org-chart-full-composition.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"FullComposition"},"orgchart--expanded-org-chart":{"type":"story","subtype":"story","id":"orgchart--expanded-org-chart","name":"Expanded OrgChart","title":"OrgChart/Expanded OrgChart","importPath":"./src/org-chart/org-chart-expanded.stories.tsx","tags":["dev","test","manifest"],"exportName":"ExpandedOrgChart"},"orgchart-components-cards--business-management":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-management","name":"Business Management","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessManagement"},"orgchart-components-cards--business-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-planning","name":"Business Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessPlanning"},"orgchart-components-cards--talent-growth":{"type":"story","subtype":"story","id":"orgchart-components-cards--talent-growth","name":"Talent Growth","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TalentGrowth"},"orgchart-components-cards--integrated-system":{"type":"story","subtype":"story","id":"orgchart-components-cards--integrated-system","name":"Integrated System","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"IntegratedSystem"},"orgchart-components-cards--design-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--design-planning","name":"Design Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"DesignPlanning"},"orgchart-components-cards--solution-sales":{"type":"story","subtype":"story","id":"orgchart-components-cards--solution-sales","name":"Solution Sales","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"SolutionSales"},"orgchart-components-cards--top-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--top-leader","name":"최상위 리더","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TopLeader"},"orgchart-components-cards--organization-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--organization-leader","name":"조직장","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"OrganizationLeader"},"orgchart-components-cards--employee":{"type":"story","subtype":"story","id":"orgchart-components-cards--employee","name":"일반 직원","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Employee"},"orgchart--logo":{"type":"story","subtype":"story","id":"orgchart--logo","name":"Logo","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Logo"},"orgchart--position-summary":{"type":"story","subtype":"story","id":"orgchart--position-summary","name":"Position Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--position-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--position-summary","name":"Position Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart-components-summaries--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--status-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--status-summary","name":"Status Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"StatusSummary"},"orgchart-content--basic-organization":{"type":"story","subtype":"story","id":"orgchart-content--basic-organization","name":"Basic Organization","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"BasicOrganization"},"orgchart-content--organization-hierarchy":{"type":"story","subtype":"story","id":"orgchart-content--organization-hierarchy","name":"Organization Hierarchy","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationHierarchy"},"orgchart-content--employee-cards":{"type":"story","subtype":"story","id":"orgchart-content--employee-cards","name":"Employee Cards","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"EmployeeCards"},"orgchart-content--organization-summary":{"type":"story","subtype":"story","id":"orgchart-content--organization-summary","name":"Organization Summary","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationSummary"},"orgchart-content--json-data-update":{"type":"story","subtype":"story","id":"orgchart-content--json-data-update","name":"JSON Data Update","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"JSONDataUpdate"},"orgchart-content--loading-empty-error":{"type":"story","subtype":"story","id":"orgchart-content--loading-empty-error","name":"Loading / Empty / Error","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"LoadingEmptyError"},"orgchart-content--responsive-container":{"type":"story","subtype":"story","id":"orgchart-content--responsive-container","name":"Responsive Container","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"ResponsiveContainer"},"orgchart-content--multiple-instances":{"type":"story","subtype":"story","id":"orgchart-content--multiple-instances","name":"Multiple Instances","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"MultipleInstances"},"center-graphic-facility--tunnel":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel","name":"Tunnel","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Tunnel"},"center-graphic-facility--bridge":{"type":"story","subtype":"story","id":"center-graphic-facility--bridge","name":"Bridge","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Bridge"},"center-graphic-facility--intersection":{"type":"story","subtype":"story","id":"center-graphic-facility--intersection","name":"Intersection","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Intersection"},"center-graphic-facility--junction":{"type":"story","subtype":"story","id":"center-graphic-facility--junction","name":"Junction","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Junction"},"center-graphic-facility--interchange":{"type":"story","subtype":"story","id":"center-graphic-facility--interchange","name":"Interchange","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Interchange"},"center-graphic-facility--roadside":{"type":"story","subtype":"story","id":"center-graphic-facility--roadside","name":"Roadside","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Roadside"},"center-graphic-facility--linked":{"type":"story","subtype":"story","id":"center-graphic-facility--linked","name":"Linked","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Linked"},"center-graphic-facility--tunnel-playground":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel-playground","name":"직접 테스트 (터널)","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"TunnelPlayground"},"center-graphic-information--information":{"type":"story","subtype":"story","id":"center-graphic-information--information","name":"Information","title":"Center Graphic/Information","importPath":"./src/center/center-information.stories.tsx","tags":["dev","test","manifest"],"exportName":"Information"},"center-graphic-overview--overview":{"type":"story","subtype":"story","id":"center-graphic-overview--overview","name":"Overview","title":"Center Graphic/Overview","importPath":"./src/center/center-overview.stories.tsx","tags":["dev","test","manifest"],"exportName":"Overview"},"center-graphic-spatial--spatial":{"type":"story","subtype":"story","id":"center-graphic-spatial--spatial","name":"Spatial","title":"Center Graphic/Spatial","importPath":"./src/center/center-spatial.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Spatial"},"center-graphic-title--compositions":{"type":"story","subtype":"story","id":"center-graphic-title--compositions","name":"Title","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Compositions"},"center-graphic-title--playground":{"type":"story","subtype":"story","id":"center-graphic-title--playground","name":"Playground","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"verification-publisher-regression--consumers-regression":{"type":"story","subtype":"story","id":"verification-publisher-regression--consumers-regression","name":"Consumers Regression","title":"Verification/Publisher Regression","importPath":"./src/components/publisher-regression.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"ConsumersRegression"},"sw-header--composed-controls":{"type":"story","subtype":"story","id":"sw-header--composed-controls","name":"Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header-dropdown.stories.tsx","tags":["dev","test","manifest"],"exportName":"ComposedControls"},"sw-header--detail-buttons":{"type":"story","subtype":"story","id":"sw-header--detail-buttons","name":"Detail Buttons (Shared States)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DetailButtons"},"sw-header--overview":{"type":"story","subtype":"story","id":"sw-header--overview","name":"Overview","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Overview"},"sw-header--interactive-states":{"type":"story","subtype":"story","id":"sw-header--interactive-states","name":"Interactive States","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"InteractiveStates"},"sw-header--window-move-motion":{"type":"story","subtype":"story","id":"sw-header--window-move-motion","name":"Window Move Motion","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"WindowMoveMotion"},"sw-header--logo-slot":{"type":"story","subtype":"story","id":"sw-header--logo-slot","name":"Logo Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LogoSlot"},"sw-header--document-dropdown":{"type":"story","subtype":"story","id":"sw-header--document-dropdown","name":"Document Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DocumentDropdown"},"sw-header--responsive-more":{"type":"story","subtype":"story","id":"sw-header--responsive-more","name":"Responsive More","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ResponsiveMore"},"sw-header--layer-detail-input":{"type":"story","subtype":"story","id":"sw-header--layer-detail-input","name":"Layer Detail · Input","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LayerDetailInput"},"sw-header--property-panel":{"type":"story","subtype":"story","id":"sw-header--property-panel","name":"Property Panel","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanel"},"sw-header--property-panel-variants":{"type":"story","subtype":"story","id":"sw-header--property-panel-variants","name":"Property Panel Variants","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelVariants"},"sw-header--k-guide":{"type":"story","subtype":"story","id":"sw-header--k-guide","name":"K Guide","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"KGuide"},"sw-header--additional-hover":{"type":"story","subtype":"story","id":"sw-header--additional-hover","name":"Additional Hover","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"AdditionalHover"},"sw-header--property-bar":{"type":"story","subtype":"story","id":"sw-header--property-bar","name":"Property Bar","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyBar"},"sw-header--dynamic-controls":{"type":"story","subtype":"story","id":"sw-header--dynamic-controls","name":"Dynamic Controls","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DynamicControls"},"sw-header--colorize":{"type":"story","subtype":"story","id":"sw-header--colorize","name":"Colorize","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Colorize"},"sw-header--composition":{"type":"story","subtype":"story","id":"sw-header--composition","name":"Composition (Visibility · Order)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Composition"},"sw-header--property-panel-none":{"type":"story","subtype":"story","id":"sw-header--property-panel-none","name":"Property Panel · 선택 없음","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelNone"},"sw-header--property-panel-all":{"type":"story","subtype":"story","id":"sw-header--property-panel-all","name":"Property Panel · 전체 선택","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelAll"},"sw-header--property-panel-circle":{"type":"story","subtype":"story","id":"sw-header--property-panel-circle","name":"Property Panel · 원 1개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCircle"},"sw-header--property-panel-expanded":{"type":"story","subtype":"story","id":"sw-header--property-panel-expanded","name":"Property Panel · 모두 펼침","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelExpanded"},"sw-header--property-panel-compare":{"type":"story","subtype":"story","id":"sw-header--property-panel-compare","name":"Property Panel · 4개 비교","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCompare"},"sw-header--property-shape-slot":{"type":"story","subtype":"story","id":"sw-header--property-shape-slot","name":"Property Panel · 형상 Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyShapeSlot"},"sw-header--property-fields":{"type":"story","subtype":"story","id":"sw-header--property-fields","name":"Property Panel · 필드 13개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyFields"},"theme-designer-playground--editor":{"type":"story","subtype":"story","id":"theme-designer-playground--editor","name":"Designer Playground","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal"],"exportName":"Editor"},"theme-designer-playground--live-verification":{"type":"story","subtype":"story","id":"theme-designer-playground--live-verification","name":"Live Verification","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal","verification","play-fn"],"exportName":"LiveVerification"},"theme-runtime-contract--comparison":{"type":"story","subtype":"story","id":"theme-runtime-contract--comparison","name":"Comparison","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Comparison"},"theme-runtime-contract--global-external":{"type":"story","subtype":"story","id":"theme-runtime-contract--global-external","name":"Global External","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"GlobalExternal"},"theme-runtime-contract--verification":{"type":"story","subtype":"story","id":"theme-runtime-contract--verification","name":"Verification","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Verification"},"theme-runtime-contract--dashboard":{"type":"story","subtype":"story","id":"theme-runtime-contract--dashboard","name":"Dashboard","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Dashboard"},"theme-runtime-contract-loader--cdn-verification":{"type":"story","subtype":"story","id":"theme-runtime-contract-loader--cdn-verification","name":"Cdn Verification","title":"Theme/Runtime Contract/Loader","importPath":"./src/theme/runtime-loader.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"CdnVerification"}}} \ No newline at end of file diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/after-full-index.json b/docs/sw/storybook-dropdown-page-qa/smoke/after-full-index.json new file mode 100644 index 0000000..36910bb --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/smoke/after-full-index.json @@ -0,0 +1,5353 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--layer-detail-input": { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + "sw-header--property-panel": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + "sw-header--property-panel-variants": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--additional-hover": { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + "sw-header--property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + "sw-header--dynamic-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + "sw-header--colorize": { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + "sw-header--composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + "sw-header--property-panel-none": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + "sw-header--property-panel-all": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + "sw-header--property-panel-circle": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + "sw-header--property-panel-expanded": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-header--property-shape-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + "sw-header--property-fields": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-1280.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-1280.png new file mode 100644 index 0000000..37ed59f Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-1280.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-1440.png new file mode 100644 index 0000000..074dc19 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-390.png new file mode 100644 index 0000000..dc36845 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-768.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-768.png new file mode 100644 index 0000000..1c567ce Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-768.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-manager.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-manager.png new file mode 100644 index 0000000..a211c01 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-manager.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel-390.png new file mode 100644 index 0000000..d89d661 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel.png b/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel.png new file mode 100644 index 0000000..cd9ea5b Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/composed-property-panel.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-1440.png new file mode 100644 index 0000000..5f45607 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-390.png new file mode 100644 index 0000000..36e8300 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-0-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-1440.png new file mode 100644 index 0000000..f3dd8c3 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-390.png new file mode 100644 index 0000000..701ea9e Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-1-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-1440.png new file mode 100644 index 0000000..29330b6 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-390.png new file mode 100644 index 0000000..9027973 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-2-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-1440.png new file mode 100644 index 0000000..fa54908 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-390.png new file mode 100644 index 0000000..9470a10 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-3-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-1440.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-1440.png new file mode 100644 index 0000000..b6dc805 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-1440.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-390.png b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-390.png new file mode 100644 index 0000000..d8075e0 Binary files /dev/null and b/docs/sw/storybook-dropdown-page-qa/smoke/overlay-4-390.png differ diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/result.json b/docs/sw/storybook-dropdown-page-qa/smoke/result.json new file mode 100644 index 0000000..80cb18d --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/smoke/result.json @@ -0,0 +1,1761 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "PASS" + }, + { + "name": "Dropdown is one Story directly under Header with original ID, no Dropdown folder", + "status": "PASS" + }, + { + "name": "menu correction keeps all 24 IDs; only composed Story name/title change", + "status": "PASS" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "PASS" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--layer-detail-input", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-variants", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--additional-hover", + "status": "PASS" + }, + { + "name": "render sw-header--property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--dynamic-controls", + "status": "PASS" + }, + { + "name": "render sw-header--colorize", + "status": "PASS" + }, + { + "name": "render sw-header--composition", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-none", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-all", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-circle", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-expanded", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "render sw-header--property-shape-slot", + "status": "PASS" + }, + { + "name": "render sw-header--property-fields", + "status": "PASS" + }, + { + "name": "Dropdown page contains the Composed Controls group", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 364.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 644.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 406.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 588.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 447.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 639.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 490.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 490.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 331.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 611.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 331.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 513.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 372.53125, + "w": 473.1875, + "h": 192, + "right": 474.234375, + "bottom": 564.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 326.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 606.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 326.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 508.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 386.40625, + "y": 325.890625, + "w": 473.1875, + "h": 192, + "right": 859.59375, + "bottom": 517.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 328.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 608.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 328.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 510.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 468, + "y": 327.5, + "w": 473.1875, + "h": 192, + "right": 941.1875, + "bottom": 519.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "selected layer retains original row Hover background", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "selected line retains original row Hover and preview", + "status": "PASS" + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows a single Dropdown link directly under Header, no Composed Controls submenu", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "menuCorrectionBaseCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/storybook-dropdown-page-qa/smoke/story-inventory.json b/docs/sw/storybook-dropdown-page-qa/smoke/story-inventory.json new file mode 100644 index 0000000..1fcdc99 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/smoke/story-inventory.json @@ -0,0 +1,849 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-dropdown-page-qa/source-preservation.json b/docs/sw/storybook-dropdown-page-qa/source-preservation.json new file mode 100644 index 0000000..5011d06 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/source-preservation.json @@ -0,0 +1,5 @@ +{ + "hostStateAndCallbacksUnchanged": true, + "publicSWComponentNodesUnchanged": true, + "publicComponentNodes": 8 +} diff --git a/docs/sw/storybook-dropdown-page-qa/storybook-build.txt b/docs/sw/storybook-dropdown-page-qa/storybook-build.txt new file mode 100644 index 0000000..dd0e5a3 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/storybook-build.txt @@ -0,0 +1,422 @@ + +> hm-design-system-poc@0.1.0 prebuild-storybook +> npm run check:theme-defaults && npm run build:packages + + +> hm-design-system-poc@0.1.0 check:theme-defaults +> node scripts/theme-defaults.mjs --check + +Theme defaults: 92 JSON colors / 94 contract defaults; generated outputs match + +> hm-design-system-poc@0.1.0 build:packages +> npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw + + +> hm-design-system-poc@0.1.0 build:org-chart +> npm run build -w @hm-design/org-chart + + +> @hm-design/org-chart@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 2,450.52 kB │ gzip: 1,648.92 kB + +✓ built in 118ms +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/orgchart.browser.js 2,456.85 kB │ gzip: 1,649.32 kB + +✓ built in 98ms + +> hm-design-system-poc@0.1.0 build:ui +> npm run build -w @hm-design/ui + + +> @hm-design/ui@0.1.0 build +> node ../../scripts/build-package.mjs ui + +vite v8.3.0 building client environment for production... +transforming... +✓ 70 modules transformed. +rendering chunks... +computing gzip size... +dist/theme/index.js 25.18 kB │ gzip: 3.98 kB +dist/index.js 120.43 kB │ gzip: 21.30 kB + +✓ built in 78ms + +> hm-design-system-poc@0.1.0 build:center-graphic +> npm run build -w @hm-design/center-graphic + + +> @hm-design/center-graphic@0.1.0 build +> node ../../scripts/build-package.mjs center-graphic + +vite v8.3.0 building client environment for production... +transforming... +✓ 145 modules transformed. +rendering chunks... +computing gzip size... +dist/style.css 88.68 kB │ gzip: 20.14 kB +dist/reference.js 0.65 kB │ gzip: 0.23 kB +dist/index.js 1.86 kB │ gzip: 0.84 kB +dist/FacilityBatch-PtW_fbvn.js 1,675.84 kB │ gzip: 276.13 kB + +✓ built in 139ms + +> hm-design-system-poc@0.1.0 build:org-chart-react +> npm run build -w @hm-design/org-chart-react + + +> @hm-design/org-chart-react@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 5 modules transformed. +rendering chunks... +computing gzip size... +dist/index.js 0.09 kB │ gzip: 0.09 kB +dist/hm-dialog.js 4.39 kB │ gzip: 1.80 kB +dist/OrgChart-DZlWXlj3.js 10.50 kB │ gzip: 2.63 kB + +✓ built in 36ms + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 128ms + +> hm-design-system-poc@0.1.0 build-storybook +> storybook build -o storybook-static --disable-telemetry + + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| +• Copying static files: themes at storybook-static\themes +| Vite vite v8.3.0 building client environment for production... +transforming... +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3104 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/sw-header-dropdown-BSCl7vok.css +| 0.54 kB │ gzip: 0.25 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-CUYjY3HM.css +| 73.13 kB │ gzip: 13.58 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-Olchztma.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-DzTQQROB.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/sw-header-dropdown.stories-BLWq_qUx.js +| 0.43 kB │ gzip: 0.31 kB +| storybook-static/assets/layout-grid-DQpkss7s.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-DRHybvZF.js +| 0.58 kB │ gzip: 0.35 kB +| storybook-static/assets/org-chart-full-composition.stories-C9mxZF1K.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-DkPE6w6D.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-Ds9ysgvK.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-DHMVC_pq.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-D6G98X-G.js +| 0.76 kB │ gzip: 0.39 kB +| storybook-static/assets/center-information.stories-itj1KVcH.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-CUNMjSD5.js +| 0.97 kB │ gzip: 0.64 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-DuVsqEkP.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-XQneG5-p.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-F30e8loV.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-D5eRfXN2.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-BVDL8QJu.js +| 1.90 kB │ gzip: 1.07 kB +| storybook-static/assets/loading-screen.stories-D_y2tsKX.js +| 1.96 kB │ gzip: 1.04 kB +| storybook-static/assets/story-board-GBWHbV_K.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-Dq2xvuJ_.js +| 2.10 kB │ gzip: 1.00 kB +| storybook-static/assets/story-page-Dw6AdeT9.js +| 2.13 kB │ gzip: 0.69 kB +| storybook-static/assets/verification-state-BC88p1ZF.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-Bh3l2dpe.js +| 2.34 kB │ gzip: 1.09 kB +| storybook-static/assets/alert-dialog.stories-CGb5RGim.js +| 2.48 kB │ gzip: 1.08 kB +| storybook-static/assets/separator.stories-BWtjCMgQ.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-BGSwg2KO.js +| 2.58 kB │ gzip: 1.29 kB +| storybook-static/assets/badge.stories-C7oTwj2k.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-BPEd_H_I.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-CEknSZ4X.js +| 2.70 kB │ gzip: 1.15 kB +| storybook-static/assets/calendar.stories-CDN9mxN4.js +| 2.79 kB │ gzip: 1.30 kB +| storybook-static/assets/switch.stories-QO4IieTO.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-CAnPEoPV.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-Oc31UkaS.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-CAy6Ywyu.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-CUTu_J3W.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-BUhDynt2.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-BMMNpNOx.js +| 3.06 kB │ gzip: 1.51 kB +| storybook-static/assets/typography.stories-BQNl5UzS.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-B3mMRcF9.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-Bpfea0DC.js +| 3.16 kB │ gzip: 1.30 kB +| storybook-static/assets/label.stories-yhROtKGf.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-C-tONiTQ.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-UQ-fYs8P.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-CRxOEo0j.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-C25lHWKC.js +| 3.30 kB │ gzip: 1.44 kB +| storybook-static/assets/page-header.stories-Cca60xSQ.js +| 3.32 kB │ gzip: 1.30 kB +| storybook-static/assets/menubar.stories-DpBcJw9T.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-DzL402bG.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-CEWSyuc4.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-CXLay5xk.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-B6hlcis0.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-DUXjr1dD.js +| 3.52 kB │ gzip: 1.60 kB +| storybook-static/assets/breadcrumb.stories-BGljEtUL.js +| 3.55 kB │ gzip: 1.52 kB +| storybook-static/assets/card.stories-D9PU1M3e.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-aty95A-R.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-RUyN8U34.js +| 3.96 kB │ gzip: 1.46 kB +| storybook-static/assets/specimens-DXXR0Cv1.js +| 4.13 kB │ gzip: 1.36 kB +| storybook-static/assets/sonner.stories-CJGIhpCk.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-BJELvagz.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-Mg8eAg-o.js +| 4.45 kB │ gzip: 1.68 kB +| storybook-static/assets/slider.stories-CCtXkumo.js +| 4.53 kB │ gzip: 1.86 kB +| storybook-static/assets/org-chart-page-previews-D8Bwno3s.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-B9e7wXBD.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-Dn0rmVbC.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-D0MAaypx.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-Ciii4aa6.js +| 5.03 kB │ gzip: 2.07 kB +| storybook-static/assets/accordion.stories-dVthhhqA.js +| 5.05 kB │ gzip: 1.82 kB +| storybook-static/assets/OrgChart-DZlWXlj3-Cs1hDnbD.js +| 5.35 kB │ gzip: 1.95 kB +| storybook-static/assets/dialog.stories-CaHEQpaa.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-gFZxA17G.js +| 5.81 kB │ gzip: 2.12 kB +| storybook-static/assets/data-table.stories-n73aBYUO.js +| 5.92 kB │ gzip: 2.52 kB +| storybook-static/assets/textarea.stories-rpRk5Jpl.js +| 5.99 kB │ gzip: 2.43 kB +| storybook-static/assets/runtime-loader.stories-BedrGYfx.js +| 6.18 kB │ gzip: 2.45 kB +| storybook-static/assets/toggle-group.stories-DtMpXk--.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-DBnPw4ZA.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-BVQl4fat.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-C43RzEnL.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-D3ZKHlxd.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-gv5n3NPq.js +| 12.54 kB │ gzip: 4.15 kB +| storybook-static/assets/designer-theme.stories-1iYlo6i7.js +| 14.62 kB │ gzip: 5.52 kB +| storybook-static/assets/gnb.stories-Du_W3nke.js +| 16.56 kB │ gzip: 5.83 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-S5renETM.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-CQ13TQtR.js +| 23.84 kB │ gzip: 6.25 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-C9ryFORc.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-ChqDNkXm.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-Dw6a0NoJ.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-t5Y-0WSV.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-DbU2s6M2.js +| 755.29 kB │ gzip: 356.77 kB +| storybook-static/assets/reference-isdVcKCS.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-DaG6F32f.js +| 1,754.32 kB │ gzip: 503.65 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 4.65s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 4.1s of this 4.6s +| build (89%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (61%, 2.8s, 3104 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (20 calls) +| - plugin vite:css transform (20 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-dropdown-page-qa/storybook-typecheck.txt b/docs/sw/storybook-dropdown-page-qa/storybook-typecheck.txt new file mode 100644 index 0000000..e69de29 diff --git a/docs/sw/storybook-dropdown-page-qa/sw-typecheck.txt b/docs/sw/storybook-dropdown-page-qa/sw-typecheck.txt new file mode 100644 index 0000000..628ebf5 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/sw-typecheck.txt @@ -0,0 +1,7 @@ + +> hm-design-system-poc@0.1.0 typecheck:sw +> npm run typecheck -w @hm-design/sw + + +> @hm-design/sw@0.1.0 typecheck +> tsc -p tsconfig.json diff --git a/docs/sw/storybook-dropdown-page-qa/validation-summary.json b/docs/sw/storybook-dropdown-page-qa/validation-summary.json new file mode 100644 index 0000000..a36a4c1 --- /dev/null +++ b/docs/sw/storybook-dropdown-page-qa/validation-summary.json @@ -0,0 +1,44 @@ +{ + "startCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "branch": "feature/sw-package", + "swBefore": 24, + "swAfter": 24, + "repositoryBefore": 343, + "repositoryAfter": 343, + "originalRemovedIds": [ + "sw-header--layer-dropdown", + "sw-header--color-dropdown", + "sw-header--line-style-dropdown", + "sw-header--text-dimension-style-dropdown" + ], + "additionalRemovals": [], + "dropdownId": "sw-header--composed-controls", + "menu": "SW/Header > Dropdown", + "browser": { + "status": "PASS", + "checks": 232, + "errors": [] + }, + "swTypecheck": { + "exitCode": 0, + "log": "sw-typecheck.txt" + }, + "swBuild": { + "exitCode": 0, + "via": "build-storybook prebuild", + "log": "storybook-build.txt" + }, + "storybookTypecheck": { + "exitCode": 0, + "log": "storybook-typecheck.txt" + }, + "storybookBuild": { + "exitCode": 0, + "log": "storybook-build.txt" + }, + "missingReportLinks": [], + "sourceHashes": { + "src/sw/sw-header.stories.tsx": "8ed1f4fb79415ddce23537e9924da4c3c067d80f748f4117f9525a65e3897ce1", + "src/sw/sw-header-dropdown.stories.tsx": "d67275c1ed13890b2dd6046e71d42d0e340dc5f5bee4247ce25e8f5b36bf8d39" + } +} diff --git a/docs/sw/storybook-overview-qa/after-index.json b/docs/sw/storybook-overview-qa/after-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/storybook-overview-qa/after-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-overview-qa/before-index.json b/docs/sw/storybook-overview-qa/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/storybook-overview-qa/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-overview-qa/changed-files.json b/docs/sw/storybook-overview-qa/changed-files.json new file mode 100644 index 0000000..c5945d8 --- /dev/null +++ b/docs/sw/storybook-overview-qa/changed-files.json @@ -0,0 +1,234 @@ +[ + { + "status": " M", + "path": "src/sw/sw-header.stories.tsx" + }, + { + "status": " M", + "path": "src/sw/sw-stories.css" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/after-index.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/before-index.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/chrome-overlays-result.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/chrome-result.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/firefox-initial-infrastructure-result.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/firefox-result.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/initial-verifier-failure.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/manager-story-order.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-after-expanded.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-after-scrolled.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-after.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-before.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-firefox-1400.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-firefox-500.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-manager.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-narrow-overlay.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/overview-narrow.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/review-candidates.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screen-survey.json" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--additional-hover.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--color-dropdown.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--colorize.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--composed-controls.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--composition.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--detail-buttons.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--document-dropdown.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--dynamic-controls.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--interactive-states.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--k-guide.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--layer-detail-input.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--layer-dropdown.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--line-style-dropdown.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--logo-slot.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--overview.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-bar.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-fields.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-all.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-circle.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-compare.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-expanded.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-none.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel-variants.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-panel.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--property-shape-slot.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--responsive-more.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--text-dimension-style-dropdown.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/screens/sw-header--window-move-motion.png" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/storybook-build.txt" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/sw-build.txt" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/sw-typecheck.txt" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/validation-summary.json" + }, + { + "status": "??", + "path": "docs/sw/sw-storybook-screen-review-2026-10-19.md" + }, + { + "status": "??", + "path": "packages/sw/tests/overview-firefox.browser.mjs" + }, + { + "status": "??", + "path": "packages/sw/tests/overview.browser.mjs" + }, + { + "status": "??", + "path": "src/sw/sw-header-overview.tsx" + }, + { + "status": "??", + "path": "docs/sw/storybook-overview-qa/changed-files.json" + } +] diff --git a/docs/sw/storybook-overview-qa/chrome-overlays-result.json b/docs/sw/storybook-overview-qa/chrome-overlays-result.json new file mode 100644 index 0000000..cfc59d5 --- /dev/null +++ b/docs/sw/storybook-overview-qa/chrome-overlays-result.json @@ -0,0 +1,104 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "all 28 Story IDs, names, order and tags retained", + "status": "PASS" + }, + { + "name": "other 27 Story declarations byte-identical", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "document first row is above the property Bar and clickable", + "status": "PASS" + }, + { + "name": "existing 레이어 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 색상 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 선스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 문자스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "existing 치수스타일 상세 reports Callback", + "status": "PASS" + }, + { + "name": "ByBlock mode immediately appears in Header without changing numeric RGB property", + "status": "PASS" + }, + { + "name": "direct color selection clears Header mode label", + "status": "PASS" + }, + { + "name": "small Inner layer dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 141, + "y": 345.0625, + "width": 234, + "height": 250 + } + }, + { + "name": "small Inner lower layer row hit-test is unobstructed", + "status": "PASS" + }, + { + "name": "small Inner layer selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "small Inner line dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 186, + "y": 39.0625, + "width": 189.1875, + "height": 342 + } + }, + { + "name": "small Inner line selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "small Inner color dropdown stays in browser width", + "status": "PASS", + "data": { + "x": 175, + "y": 377.0625, + "width": 192, + "height": 182 + } + }, + { + "name": "small Inner color selection or Escape closes only nested dropdown", + "status": "PASS" + }, + { + "name": "no overlay browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [], + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/storybook-overview-qa/chrome-result.json b/docs/sw/storybook-overview-qa/chrome-result.json new file mode 100644 index 0000000..68a0805 --- /dev/null +++ b/docs/sw/storybook-overview-qa/chrome-result.json @@ -0,0 +1,670 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "all 28 Story IDs, names, order and tags retained", + "status": "PASS" + }, + { + "name": "other 27 Story declarations byte-identical", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--composed-controls", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--layer-dropdown", + "sw-header--color-dropdown", + "sw-header--line-style-dropdown", + "sw-header--text-dimension-style-dropdown", + "sw-header--responsive-more", + "sw-header--layer-detail-input", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot", + "sw-header--property-fields" + ], + "status": "PASS" +} diff --git a/docs/sw/storybook-overview-qa/firefox-initial-infrastructure-result.json b/docs/sw/storybook-overview-qa/firefox-initial-infrastructure-result.json new file mode 100644 index 0000000..6fa7b70 --- /dev/null +++ b/docs/sw/storybook-overview-qa/firefox-initial-infrastructure-result.json @@ -0,0 +1,86 @@ +{ + "checks": [ + { + "name": "Firefox 1400: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 1200, + "height": 675, + "slotWidth": 1200, + "slotHeight": 702.5, + "headerHeight": 49, + "viewportWidth": 1400, + "viewportHeight": 915 + } + }, + { + "name": "Firefox 1400: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": false + } + }, + { + "name": "Firefox 1400: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 156, + "visible": true + } + }, + { + "name": "Firefox 1400: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox 500: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 468, + "height": 263.25, + "slotWidth": 468, + "slotHeight": 502.5, + "headerHeight": 49, + "viewportWidth": 500, + "viewportHeight": 715 + } + }, + { + "name": "Firefox 500: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": false + } + }, + { + "name": "Firefox 500: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 567.75, + "visible": true + } + }, + { + "name": "Firefox 500: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox browser errors absent", + "status": "FAIL", + "data": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:12495/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:12495/sb-common-assets/nunito-sans-regular.woff2" + ] + } + ], + "errors": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:12495/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:12495/sb-common-assets/nunito-sans-regular.woff2" + ], + "version": "158.0", + "status": "FAIL" +} diff --git a/docs/sw/storybook-overview-qa/firefox-result.json b/docs/sw/storybook-overview-qa/firefox-result.json new file mode 100644 index 0000000..ea9b253 --- /dev/null +++ b/docs/sw/storybook-overview-qa/firefox-result.json @@ -0,0 +1,90 @@ +{ + "checks": [ + { + "name": "Firefox 1400: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 1200, + "height": 675, + "slotWidth": 1200, + "slotHeight": 700.5, + "headerHeight": 49, + "viewportWidth": 1400, + "viewportHeight": 915 + } + }, + { + "name": "Firefox 1400: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": false + } + }, + { + "name": "Firefox 1400: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 156, + "visible": true + } + }, + { + "name": "Firefox 1400: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox 500: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 468, + "height": 263.25, + "slotWidth": 468, + "slotHeight": 502.5, + "headerHeight": 49, + "viewportWidth": 500, + "viewportHeight": 715 + } + }, + { + "name": "Firefox 500: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": false + } + }, + { + "name": "Firefox 500: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 567.75, + "visible": true + } + }, + { + "name": "Firefox 500: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox SW runtime errors absent; known Storybook font warnings recorded separately", + "status": "PASS", + "data": { + "errors": [], + "warnings": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2" + ] + } + } + ], + "errors": [], + "infrastructureWarnings": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2" + ], + "version": "158.0", + "status": "PASS" +} diff --git a/docs/sw/storybook-overview-qa/initial-verifier-failure.png b/docs/sw/storybook-overview-qa/initial-verifier-failure.png new file mode 100644 index 0000000..5a7c188 Binary files /dev/null and b/docs/sw/storybook-overview-qa/initial-verifier-failure.png differ diff --git a/docs/sw/storybook-overview-qa/manager-story-order.json b/docs/sw/storybook-overview-qa/manager-story-order.json new file mode 100644 index 0000000..8f3393c --- /dev/null +++ b/docs/sw/storybook-overview-qa/manager-story-order.json @@ -0,0 +1,29 @@ +[ + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--composed-controls", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--layer-dropdown", + "sw-header--color-dropdown", + "sw-header--line-style-dropdown", + "sw-header--text-dimension-style-dropdown", + "sw-header--responsive-more", + "sw-header--layer-detail-input", + "sw-header--property-panel", + "sw-header--property-panel-variants", + "sw-header--k-guide", + "sw-header--additional-hover", + "sw-header--property-bar", + "sw-header--dynamic-controls", + "sw-header--colorize", + "sw-header--composition", + "sw-header--property-panel-none", + "sw-header--property-panel-all", + "sw-header--property-panel-circle", + "sw-header--property-panel-expanded", + "sw-header--property-panel-compare", + "sw-header--property-shape-slot", + "sw-header--property-fields" +] diff --git a/docs/sw/storybook-overview-qa/overview-after-expanded.png b/docs/sw/storybook-overview-qa/overview-after-expanded.png new file mode 100644 index 0000000..9afb4cf Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-after-expanded.png differ diff --git a/docs/sw/storybook-overview-qa/overview-after-scrolled.png b/docs/sw/storybook-overview-qa/overview-after-scrolled.png new file mode 100644 index 0000000..dc5d847 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-after-scrolled.png differ diff --git a/docs/sw/storybook-overview-qa/overview-after.png b/docs/sw/storybook-overview-qa/overview-after.png new file mode 100644 index 0000000..8a64869 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-after.png differ diff --git a/docs/sw/storybook-overview-qa/overview-before.png b/docs/sw/storybook-overview-qa/overview-before.png new file mode 100644 index 0000000..e6d87e3 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-before.png differ diff --git a/docs/sw/storybook-overview-qa/overview-firefox-1400.png b/docs/sw/storybook-overview-qa/overview-firefox-1400.png new file mode 100644 index 0000000..6e52ab3 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-firefox-1400.png differ diff --git a/docs/sw/storybook-overview-qa/overview-firefox-500.png b/docs/sw/storybook-overview-qa/overview-firefox-500.png new file mode 100644 index 0000000..bae769c Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-firefox-500.png differ diff --git a/docs/sw/storybook-overview-qa/overview-manager.png b/docs/sw/storybook-overview-qa/overview-manager.png new file mode 100644 index 0000000..f44c5ac Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-manager.png differ diff --git a/docs/sw/storybook-overview-qa/overview-narrow-overlay.png b/docs/sw/storybook-overview-qa/overview-narrow-overlay.png new file mode 100644 index 0000000..7aff1f1 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-narrow-overlay.png differ diff --git a/docs/sw/storybook-overview-qa/overview-narrow.png b/docs/sw/storybook-overview-qa/overview-narrow.png new file mode 100644 index 0000000..134f239 Binary files /dev/null and b/docs/sw/storybook-overview-qa/overview-narrow.png differ diff --git a/docs/sw/storybook-overview-qa/review-candidates.json b/docs/sw/storybook-overview-qa/review-candidates.json new file mode 100644 index 0000000..6caf03a --- /dev/null +++ b/docs/sw/storybook-overview-qa/review-candidates.json @@ -0,0 +1,366 @@ +[ + { + "number": "V-01", + "name": "Overview", + "id": "sw-header--overview", + "status": "KEEP", + "audience": "통합 시연 / 사용자", + "content": "16:9 Stage에서 Header·전체 Dropdown·속성Bar·속성창·공유 속성을 조작.", + "proposal": "현재 메인으로 유지.", + "impact": "중간", + "loss": "대체 메인 없음. 이번에 실제 수정한 유일한 Story.", + "url": "http://localhost:6024/?path=/story/sw-header--overview", + "screenshot": "overview-after.png" + }, + { + "number": "V-02", + "name": "Interactive States", + "id": "sw-header--interactive-states", + "status": "SIMPLIFY", + "audience": "상태 비교 / 사용자·QA", + "content": "12개 섹션: Host state, Hover/Selected/Disabled, 토글, 창 버튼 Callback, 긴 파일명.", + "proposal": "반복 Header 표본과 설명을 상태별로 축소 검토.", + "impact": "낮음", + "loss": "삭제하면 Disabled+Hover·키보드·창 버튼 Callback 비교를 잃음. 메인은 상태 비교표를 대체하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--interactive-states", + "screenshot": "screens/sw-header--interactive-states.png" + }, + { + "number": "V-03", + "name": "Window Move Motion", + "id": "sw-header--window-move-motion", + "status": "KEEP", + "audience": "단계별 실컴포넌트 정지 표본 / QA", + "content": "기존 9단계의 창 이동 모션을 3배 확대.", + "proposal": "이번에 확정한 단계별 섹션 그대로 유지.", + "impact": "낮음", + "loss": "타이밍·위치 비교의 유일한 상세 화면. 메인의 실시간 Hover와 목적이 다름.", + "url": "http://localhost:6024/?path=/story/sw-header--window-move-motion", + "screenshot": "screens/sw-header--window-move-motion.png" + }, + { + "number": "V-04", + "name": "Composed Controls", + "id": "sw-header--composed-controls", + "status": "KEEP", + "audience": "하위 컴포넌트 조합 / 사용자", + "content": "레이어·색상·상세보기, 선·문자·치수 공개 하위 컴포넌트와 그룹 Hover.", + "proposal": "독립 조합 API 사용 예제로 유지.", + "impact": "중간", + "loss": "전체 Header 통합 시연으로 하위 컴포넌트 단독 조합을 대체할 수 없음.", + "url": "http://localhost:6024/?path=/story/sw-header--composed-controls", + "screenshot": "screens/sw-header--composed-controls.png" + }, + { + "number": "V-05", + "name": "Logo Slot", + "id": "sw-header--logo-slot", + "status": "KEEP", + "audience": "설정 예제 / 사용자", + "content": "기본 임시 로고, 가로형 logoSrc, 세로형 React logo, 미전달 4개 표본.", + "proposal": "로고 슬롯 계약 예제로 유지.", + "impact": "낮음", + "loss": "삭제하면 이미지/ReactNode/미전달의 차이를 직접 확인할 수 없음.", + "url": "http://localhost:6024/?path=/story/sw-header--logo-slot", + "screenshot": "screens/sw-header--logo-slot.png" + }, + { + "number": "V-06", + "name": "Document Dropdown", + "id": "sw-header--document-dropdown", + "status": "SIMPLIFY", + "audience": "실제 조작+정적 상태 / 사용자·QA", + "content": "18개 섹션: 문서 선택·닫기·New/Open·현재 문서 위치·Hover·18개/빈 목록·긴 이름·390px.", + "proposal": "반복 현재 문서/Hover 표본을 한 비교 구역으로 줄이는 방안 검토.", + "impact": "중간", + "loss": "메인은 기본 선택·목록 변경을 대체하지만 빈 목록·긴 이름·행 위치·18개 스크롤 사례는 대체하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--document-dropdown", + "screenshot": "screens/sw-header--document-dropdown.png" + }, + { + "number": "V-07", + "name": "Layer Dropdown", + "id": "sw-header--layer-dropdown", + "status": "SIMPLIFY", + "audience": "실제 조작+정적 상태 / 사용자·QA", + "content": "19개 섹션: 전구·눈꽃·잠금, 상태 혼합, 선택, 긴/빈/많은 레이어, 6개 좁은 폭.", + "proposal": "중복 Header 표본을 줄이고 아이콘 상태표·예외 사례 유지 검토.", + "impact": "중간", + "loss": "메인은 정상 선택·Toggle만 대체. On/Off/Hover 아이콘 매트릭스·20개 목록·Callback 없는 상태가 고유함.", + "url": "http://localhost:6024/?path=/story/sw-header--layer-dropdown", + "screenshot": "screens/sw-header--layer-dropdown.png" + }, + { + "number": "V-08", + "name": "Color Dropdown", + "id": "sw-header--color-dropdown", + "status": "SIMPLIFY", + "audience": "실제 조작+디자인 비교 / 사용자·QA", + "content": "9개 섹션: 팔레트·사용자 색상 40개·ByLayer·RGB 입력·Colorize·상세 Callback.", + "proposal": "반복 Default/Hover Header와 설명을 축소; Colorize 통합 목적지로 검토.", + "impact": "중간", + "loss": "메인의 색상 변경은 40개 색상·정적 Hover 비교를 대체하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--color-dropdown", + "screenshot": "screens/sw-header--color-dropdown.png" + }, + { + "number": "V-09", + "name": "Line Style Dropdown", + "id": "sw-header--line-style-dropdown", + "status": "SIMPLIFY", + "audience": "실제 조작+디자인 비교 / 사용자·QA", + "content": "8개 섹션: 3열 선 종류·가중치·스케일, 현재 행/상세 Hover, 390px.", + "proposal": "중복 Default/Hover를 줄이고 3열 입력·좁은 화면 사례 보존 검토.", + "impact": "중간", + "loss": "메인은 정상 선택을 대체하지만 상세 상태·열 배치 기준은 남길 필요가 있음.", + "url": "http://localhost:6024/?path=/story/sw-header--line-style-dropdown", + "screenshot": "screens/sw-header--line-style-dropdown.png" + }, + { + "number": "V-10", + "name": "Text · Dimension Style Dropdown", + "id": "sw-header--text-dimension-style-dropdown", + "status": "KEEP", + "audience": "실제 조작+디자인 비교 / 사용자·QA", + "content": "문자·치수스타일 목록과 각 행·상세 Hover, 선택 Callback 등 6개 섹션.", + "proposal": "서로 다른 두 필드의 목록 계약을 함께 확인하는 현 구성 유지.", + "impact": "낮음", + "loss": "메인의 선택만으로 각 행 미리보기와 Figma Hover 비교를 대체하지 못함.", + "url": "http://localhost:6024/?path=/story/sw-header--text-dimension-style-dropdown", + "screenshot": "screens/sw-header--text-dimension-style-dropdown.png" + }, + { + "number": "V-11", + "name": "Responsive More", + "id": "sw-header--responsive-more", + "status": "SIMPLIFY", + "audience": "반응형 실제 조작+폭 표본 / 사용자·QA", + "content": "1440/768/390 조작 구역 3개 + 경계 폭 16개. More 대표 필드 전환과 Callback.", + "proposal": "경계 폭 표본을 접는 방식 등 화면 길이 축소 검토. 기능은 유지 권장.", + "impact": "중간", + "loss": "삭제한 Responsive와 다른 기능. 메인은 현재 폭만 보여 주므로 모든 경계값 비교를 대체하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--responsive-more", + "screenshot": "screens/sw-header--responsive-more.png" + }, + { + "number": "V-12", + "name": "Layer Detail · Input", + "id": "sw-header--layer-detail-input", + "status": "MERGE REVIEW", + "audience": "상세 버튼+독립 Input / 사용자·QA", + "content": "6개 섹션: Figma PNG, 레이어 상세 3상태, Input Default/Hover/ReadOnly/Disabled/Focus 및 입력·IME·확정/취소.", + "proposal": "상세 버튼 비교는 Detail Buttons로 옮기는 방안 검토. 독립 Input 시연은 남겨야 함.", + "impact": "중간", + "loss": "독립 Input Story는 현재 없음. 페이지 전체를 지우면 텍스트/숫자·외부 Props·취소 예제를 잃음. detail-buttons 검증이 이 ID를 참조함.", + "url": "http://localhost:6024/?path=/story/sw-header--layer-detail-input", + "screenshot": "screens/sw-header--layer-detail-input.png" + }, + { + "number": "V-13", + "name": "Property Panel", + "id": "sw-header--property-panel", + "status": "KEEP", + "audience": "Header 연동과 데이터 변형 / 사용자·QA", + "content": "4가지 선택, Controlled/Uncontrolled, 외부 Open/값, 항목 추가·삭제·순서, 제한 상태·게이지.", + "proposal": "고급 데이터/API 검증 화면으로 유지.", + "impact": "중간", + "loss": "메인에 없는 Controlled 전환, 개별 제한·옵션 삭제·선택 객체 교체가 남음. Firefox·닫기·필드 테스트가 참조.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel", + "screenshot": "screens/sw-header--property-panel.png" + }, + { + "number": "V-14", + "name": "Property Panel Variants", + "id": "sw-header--property-panel-variants", + "status": "MERGE REVIEW", + "audience": "독립 패널과 데이터 변형 / QA", + "content": "같은 PropertyPanelDemo를 standalone으로 렌더링. 4상태·데이터 버튼이 Property Panel과 거의 동일.", + "proposal": "단독 패널 기준이 필요하면 4개 개별/4개 비교 화면과 통합 검토.", + "impact": "중간", + "loss": "Header Overlay·Focus 복귀와 다른 단독 맥락. standalone의 닫기는 기록만 하고 패널을 유지하며 너비/Open 버튼은 Header 연동 검증을 대신하지 못함.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-variants", + "screenshot": "screens/sw-header--property-panel-variants.png" + }, + { + "number": "V-15", + "name": "K Guide", + "id": "sw-header--k-guide", + "status": "KEEP", + "audience": "실시간 모션 / 사용자", + "content": "K 버튼 Hover/Focus의 원본 이미지 Pan·Zoom, 이탈 정지, Reduced Motion 안내.", + "proposal": "고유한 가이드 모션 예제로 유지.", + "impact": "낮음", + "loss": "Header 실시간 모션과 창 이동 1400ms 모션은 별개. 메인에서는 일부만 볼 수 있음.", + "url": "http://localhost:6024/?path=/story/sw-header--k-guide", + "screenshot": "screens/sw-header--k-guide.png" + }, + { + "number": "V-16", + "name": "Additional Hover", + "id": "sw-header--additional-hover", + "status": "MERGE REVIEW", + "audience": "상세/Selected 회귀·외부 모드 / QA", + "content": "StyleDemo 1920과 RequiredColorDemo: 5개 상세 Hover, Selected, 외부 ByLayer/ByBlock/직접 색상.", + "proposal": "상세 상태는 Detail Buttons, 외부 색상 모드는 Color Dropdown으로 이전 검토.", + "impact": "중간", + "loss": "외부 colorMode 제어는 메인의 일반 색상 선택과 다름. followup-four가 이 ID를 참조하므로 먼저 대체 시나리오가 필요함.", + "url": "http://localhost:6024/?path=/story/sw-header--additional-hover", + "screenshot": "screens/sw-header--additional-hover.png" + }, + { + "number": "V-17", + "name": "Property Bar", + "id": "sw-header--property-bar", + "status": "KEEP", + "audience": "속성Bar 전체 API / 사용자·QA", + "content": "Controlled, 외부 Open/값, 추가·삭제·순서 반전·객체 교체·개별 Disabled/ReadOnly, 1222px 부모 폭.", + "proposal": "메인의 참조 구현이자 고급 API 예제로 유지.", + "impact": "중간", + "loss": "메인은 공유 값·기본 추가/제거·제한만 제공. 개별 제한·순서·객체 교체·Controlled를 대체하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--property-bar", + "screenshot": "screens/sw-header--property-bar.png" + }, + { + "number": "V-18", + "name": "Dynamic Controls", + "id": "sw-header--dynamic-controls", + "status": "KEEP", + "audience": "controls allowlist / 사용자", + "content": "12개 구성의 제거·재추가·라벨·순서·visible, 동적 문서 데이터.", + "proposal": "Composition과 다른 API임을 설명하는 방향으로 유지.", + "impact": "중간", + "loss": "controls는 전체 allowlist이며 로고 외 16개 요소를 숨기는 hiddenControls와 다름. 이름이 비슷해도 동일 기능이 아님.", + "url": "http://localhost:6024/?path=/story/sw-header--dynamic-controls", + "screenshot": "screens/sw-header--dynamic-controls.png" + }, + { + "number": "V-19", + "name": "Colorize", + "id": "sw-header--colorize", + "status": "REMOVE REVIEW", + "audience": "색상 추출 버튼 접근 / QA", + "content": "별도 기본/확대 상태표 없이 StyleDemo(1920)를 다시 표시. 색상 Dropdown의 추출 버튼으로 연결.", + "proposal": "Color Dropdown에 버튼 접근·Hover·Callback 증거를 남긴 뒤 메뉴 삭제 검토 가능.", + "impact": "중간", + "loss": "실제 색상 추출 CAD 기능은 호스트 소유. 삭제 시 전용 접근 URL을 잃고 detail-buttons preservation의 colorize 참조를 이전해야 함. 지금은 삭제하지 않음.", + "url": "http://localhost:6024/?path=/story/sw-header--colorize", + "screenshot": "screens/sw-header--colorize.png" + }, + { + "number": "V-20", + "name": "Composition (Visibility · Order)", + "id": "sw-header--composition", + "status": "KEEP", + "audience": "hiddenControls/menuOrder / 사용자·QA", + "content": "16개 표시 항목, 프리셋·순서·중복/알 수 없는 ID, 실제 화면/고정 폭, Callback 보존.", + "proposal": "개별 제거와 순서 계약을 보여 주는 예제로 유지.", + "impact": "중간", + "loss": "Dynamic Controls와 다른 API. 홈·창 이동·최소화·종료까지 개별 제어하고 메뉴 순서 정규화를 검증함.", + "url": "http://localhost:6024/?path=/story/sw-header--composition", + "screenshot": "screens/sw-header--composition.png" + }, + { + "number": "V-21", + "name": "Property Panel · 선택 없음", + "id": "sw-header--property-panel-none", + "status": "QA", + "audience": "단독 실제 컴포넌트 / 디자인 QA", + "content": "선택 없음 314×256 고정 상태와 실제 필드.", + "proposal": "일반 사용자 목록보다는 QA 분류 검토.", + "impact": "중간", + "loss": "Variants/Compare와 겹치지만 테스트의 상태별 직접 URL·치수 기준임. 삭제/통합 시 ID 참조 이전 필요.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-none", + "screenshot": "screens/sw-header--property-panel-none.png" + }, + { + "number": "V-22", + "name": "Property Panel · 전체 선택", + "id": "sw-header--property-panel-all", + "status": "QA", + "audience": "단독 실제 컴포넌트 / 디자인 QA", + "content": "전체 선택 314×361, 혼합 레이어 값과 선택 개수.", + "proposal": "개별 QA 기준으로 유지하거나 Compare 통합 검토.", + "impact": "중간", + "loss": "선택 없음/원 상태와 내용이 다름. 테스트 직접 URL·혼합 값·개수 레이아웃을 보존해야 함.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-all", + "screenshot": "screens/sw-header--property-panel-all.png" + }, + { + "number": "V-23", + "name": "Property Panel · 원 1개", + "id": "sw-header--property-panel-circle", + "status": "QA", + "audience": "단독 실제 컴포넌트 / 디자인 QA", + "content": "원 1개 314×658, 기본 형상·치수·XYZ·전체 선택 복귀.", + "proposal": "개별 QA 기준으로 유지하거나 Compare 통합 검토.", + "impact": "중간", + "loss": "원형 Slot과 위치·푸터를 포함. 다른 상태와 같은 이름의 단순 중복이 아님.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-circle", + "screenshot": "screens/sw-header--property-panel-circle.png" + }, + { + "number": "V-24", + "name": "Property Panel · 모두 펼침", + "id": "sw-header--property-panel-expanded", + "status": "QA", + "audience": "단독 실제 컴포넌트 / 디자인 QA", + "content": "전체 펼침 314×754, 추가 공통 속성·형상·위치·푸터.", + "proposal": "개별 QA 기준으로 유지하거나 Compare 통합 검토.", + "impact": "중간", + "loss": "754px 전체 높이와 하단 잘림 검증에 필요. 개별 ID가 기존 테스트에서 동적으로 참조됨.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-expanded", + "screenshot": "screens/sw-header--property-panel-expanded.png" + }, + { + "number": "V-25", + "name": "Property Panel · 4개 비교", + "id": "sw-header--property-panel-compare", + "status": "QA", + "audience": "4개 실제 패널 병렬 비교 / 디자인 QA", + "content": "4개 선택 상태를 동시에 렌더링하고 실측 폭·높이를 표시.", + "proposal": "나란히 비교하는 QA 목적을 유지. 개별 메뉴 통합 목적지로 검토 가능.", + "impact": "중간", + "loss": "Variants는 상태 전환, Compare는 동시 비교라는 차이가 있음. property-fields의 4상태 치수 검증이 참조함.", + "url": "http://localhost:6024/?path=/story/sw-header--property-panel-compare", + "screenshot": "screens/sw-header--property-panel-compare.png" + }, + { + "number": "V-26", + "name": "Property Panel · 형상 Slot", + "id": "sw-header--property-shape-slot", + "status": "KEEP", + "audience": "형상 확장 API / 사용자", + "content": "기본/null/ReactNode/Render Prop, 원·사각형 교체, 치수/그룹 추가.", + "proposal": "외부 컴포넌트 확장 계약 예제로 유지.", + "impact": "중간", + "loss": "메인은 기본/null만 제공. ReactNode와 Render Prop·형상 교체를 대체할 수 없음.", + "url": "http://localhost:6024/?path=/story/sw-header--property-shape-slot", + "screenshot": "screens/sw-header--property-shape-slot.png" + }, + { + "number": "V-27", + "name": "Property Panel · 필드 13개", + "id": "sw-header--property-fields", + "status": "QA", + "audience": "필드 상태·실제 조작 / 디자인 QA", + "content": "Figma 13개 필드 Default/Hover 표본, 실제 패널, 혼합 레이어·외부 값·제한·단위.", + "proposal": "77개 필드 검증의 기준 화면으로 유지 권장.", + "impact": "중간", + "loss": "메인은 필드별 디자인 상태표를 대체하지 않음. property-fields.browser.mjs의 핵심 직접 ID.", + "url": "http://localhost:6024/?path=/story/sw-header--property-fields", + "screenshot": "screens/sw-header--property-fields.png" + }, + { + "number": "V-28", + "name": "Detail Buttons (Shared States)", + "id": "sw-header--detail-buttons", + "status": "QA", + "audience": "실제 Pointer/Callback 비교 / QA", + "content": "5개 상세 버튼 × Default/Hover/Disabled/Callback 없음, 클릭 횟수. verification 태그로 기본 숨김.", + "proposal": "이미 적용된 숨김과 검증 표본 유지.", + "impact": "중간", + "loss": "메인은 실제 Dropdown 접근용이며 이 비교 매트릭스를 대체하지 못함. detail-buttons 검증의 직접 ID.", + "url": "http://localhost:6024/?path=/story/sw-header--detail-buttons", + "screenshot": "screens/sw-header--detail-buttons.png" + } +] diff --git a/docs/sw/storybook-overview-qa/screen-survey.json b/docs/sw/storybook-overview-qa/screen-survey.json new file mode 100644 index 0000000..75c6e52 --- /dev/null +++ b/docs/sw/storybook-overview-qa/screen-survey.json @@ -0,0 +1,2395 @@ +[ + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "레이어 상세", + "레이어 상세", + "레이어 상세", + "레이어 상세", + "색상 상세", + "색상 상세", + "색상 상세", + "색상 상세", + "선스타일 상세", + "선스타일 상세", + "선스타일 상세", + "선스타일 상세", + "문자스타일 상세", + "문자스타일 상세", + "문자스타일 상세", + "문자스타일 상세", + "치수스타일 상세", + "치수스타일 상세", + "치수스타일 상세", + "치수스타일 상세" + ], + "inputs": 0 + }, + { + "id": "sw-header--overview", + "name": "Overview", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Figma 기준 1920 × 49", + "description": "홈 / 파일명 / 객체 수정(그리기모드 · 레이어 · 색상 · 선스타일 · 문자스타일 · 치수스타일 · 상세보기) / 인쇄 · 팝업 가이드 · 창 이동 · 최소화 · 종료" + }, + { + "title": "선택 상태", + "description": "선택된 텍스트와 화살표는 #FFC600으로만 바뀝니다. 선택 전용 배경·테두리·그림자는 없습니다." + } + ], + "headings": [ + "Figma 기준 1920 × 49", + "선택 상태" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Host state 연결 · Keyboard Focus", + "description": "실제로 마우스를 올려 Hover를, 메뉴·속성 토글을 눌러 선택 상태를 확인합니다. Tab 키로 Focus 윤곽선(2px #F0F7F5)을 확인합니다. Focus 윤곽선은 Hover 테두리보다 위에 그려집니다." + }, + { + "title": "Default", + "description": "Hover 전. 각 버튼의 기존 테두리·배경·그림자." + }, + { + "title": "Hover (고정)", + "description": "홈 · 5개 속성 필드 · 인쇄 · 팝업 가이드는 크기·배경·그림자·위치 변화 없이 테두리만 노란 gradient로 바뀝니다. 인쇄 · 팝업 가이드는 아이콘의 #B6D0C9 부분만 #FFC600으로 함께 바뀝니다. 파일명과 속성Bar · 속성창은 테두리 없이 글자만 #FFC600으로 바뀝니다. 최소화는 검정 20% 배경 + 흰 아이콘, 종료는 #E40000 배경 + 흰 X입니다(Figma 26:12156 / 26:12161). 그리기모드(텍스트)·창 이동은 대상이 아닙니다." + }, + { + "title": "Selected", + "description": "레이어 메뉴·속성창 선택. 글자만 #FFC600이고 선택 전용 테두리는 없습니다." + }, + { + "title": "Selected + Hover (고정)", + "description": "레이어 메뉴는 선택 글자색(#FFC600)을 유지하고 Hover 테두리를 더합니다. 속성창은 선택·Hover 모두 글자색만이라 노란 테두리가 없습니다." + }, + { + "title": "속성Bar · 속성창 상태", + "description": "두 토글은 Hover 시 글자만 #FFC600이고 노란 테두리·배경·그림자가 없습니다. 선택(propertyBarOpen / propertyPanelOpen)도 글자 #FFC600이며, 선택된 토글에 Hover해도 테두리가 생기지 않습니다. '상세보기' 안내 글자는 바뀌지 않습니다. 키보드 Focus 윤곽선은 위 Host state 예제에서 Tab으로 확인합니다." + }, + { + "title": "Disabled + Hover (고정)", + "description": "비활성 버튼에는 Hover 테두리와 아이콘 색 변화를 표시하지 않습니다. 홈·파일명·최소화·종료는 disabled 대상이 아니므로 Hover가 표시됩니다." + }, + { + "title": "인쇄 · 팝업 가이드 · 최소화 · 종료", + "description": "Default(위)와 Hover 고정(아래). 인쇄 · 팝업 가이드: 기존 노란 Gradient 테두리 + 아이콘의 #B6D0C9 부분만 #FFC600(검정 외곽선·그림자·팝업 가이드 녹색 타일은 그대로). 최소화: 투명 → 검정 20% 배경, 아이콘 #ADB0AF → #FFFFFF. 종료: 투명 → #E40000 배경, X #ADB0AF → #FFFFFF. 최소화·종료는 32 × 48 그대로이며 테두리·그림자·노란 테두리가 없습니다." + }, + { + "title": "인쇄 · 팝업 가이드 · 최소화 · 종료 Callback 기록", + "description": "각 버튼은 자기 Callback만 한 번 호출합니다. 종료는 onClose만 호출하며 Storybook에서 실제 창을 닫지 않습니다(창 동작은 호스트 소유). Tab으로 Focus 윤곽선(2px #F0F7F5)을 확인합니다." + }, + { + "title": "더보기 버튼 Hover (고정, 헤더 1440px)", + "description": "더보기 버튼에도 같은 테두리를 적용합니다. 더보기 메뉴 안 항목은 목록 구조이므로 기존 배경 Hover를 유지합니다." + }, + { + "title": "Disabled", + "description": "메뉴·속성·인쇄/가이드가 비활성화됩니다. 창 제어(최소화·종료)는 유지됩니다." + }, + { + "title": "긴 파일명", + "description": "파일명은 말줄임으로 처리하고 글자 크기를 줄이지 않습니다." + } + ], + "headings": [ + "Host state 연결 · Keyboard Focus", + "Default", + "Hover (고정)", + "Selected", + "Selected + Hover (고정)", + "속성Bar · 속성창 상태", + "Disabled + Hover (고정)", + "인쇄 · 팝업 가이드 · 최소화 · 종료", + "인쇄 · 팝업 가이드 · 최소화 · 종료 Callback 기록", + "더보기 버튼 Hover (고정, 헤더 1440px)", + "Disabled", + "긴 파일명" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄" + ], + "inputs": 0 + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "단계별 진행 (3배 확대)", + "description": "CSS 애니메이션을 해당 시점에 멈춘 화면입니다(Storybook 전용 data-sb-hover + Web Animations API로 시간만 고정)." + } + ], + "headings": [ + "단계별 진행 (3배 확대)" + ], + "buttons": [ + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "레이어 · 색상 · 상세보기" + }, + { + "title": "선스타일 · 문자스타일 · 치수스타일", + "description": "필드 전체 Hover 시 라벨·값·선/폰트/치수 미리보기가 #FFC600입니다. 선의 검정 border와 치수 SVG의 검정 외곽선은 유지합니다." + }, + { + "title": "그룹 필드 Hover (고정)", + "description": "기존 노란 Gradient Border에 텍스트·지정 미리보기 강조만 더합니다. 색상 견본과 레이어 상태는 원래 색을 유지하며, 상세보기는 기존 텍스트 전용 Hover 그대로입니다." + } + ], + "headings": [ + "레이어 · 색상 · 상세보기", + "선스타일 · 문자스타일 · 치수스타일", + "그룹 필드 Hover (고정)" + ], + "buttons": [ + "레이어", + "색상", + "속성Bar", + "속성창", + "선스타일", + "문자스타일", + "치수스타일", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일" + ], + "inputs": 0 + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "기본 임시 로고", + "description": "logoSrc에 임시 SVG, logoAlt에 「임시 로고」를 전달합니다." + }, + { + "title": "사용자 지정 로고 — 가로형 이미지(logoSrc)", + "description": "120 × 20 비율의 이미지도 로고 영역 안에 contain으로 맞춰지고 넘치지 않습니다." + }, + { + "title": "사용자 지정 로고 — 세로형 React 요소(logo)", + "description": "logo에 SVG 요소를 전달하면 logoSrc보다 우선합니다." + }, + { + "title": "로고 미전달", + "description": "logo·logoSrc가 없으면 로고를 그리지 않고 홈 버튼 배경과 전체 배치를 그대로 유지합니다. 접근성 이름은 「홈」입니다." + } + ], + "headings": [ + "기본 임시 로고", + "사용자 지정 로고 — 가로형 이미지(logoSrc)", + "사용자 지정 로고 — 세로형 React 요소(logo)", + "로고 미전달" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "샘플 SW 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "샘플 SW 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "현재 열린 문서 1개 (기본 예제)", + "description": "2026-10-16 추가 요구: 기본 예제는 빈 목록 대신 현재 열린 문서 1개를 전달합니다(documents = [현재 문서], activeDocumentId). 펼치면 그 문서명이 #FFC600(현재 문서)으로 보이고 X·+ New·Open은 기존 그대로입니다. 문서를 늘리면 실제 개수만큼 표시되며 배열을 1개로 고정하지 않습니다." + }, + { + "title": "현재 열린 문서 1개 · 선택 · X · New / Open Callback", + "description": "파일명을 눌러 열고 확인합니다. 문서 선택은 onDocumentSelect, X는 onDocumentClose(이 예제의 호스트는 목록에서 제거 → '열린 문서 없음'), + New / Open은 각 Callback만 한 번 호출합니다. 존재하지 않는 문서를 임의로 만들지 않습니다." + }, + { + "title": "Default", + "description": "documents를 전달하면 파일명이 문서 목록 버튼이 됩니다(aria-expanded). 화살표는 아래 방향입니다." + }, + { + "title": "Hover (고정)", + "description": "파일명 Hover는 노란 테두리 없이 글자만 #FFC600으로 바꿉니다. 녹색 테두리·배경·초록 화살표는 그대로이며 목록은 열리지 않습니다." + }, + { + "title": "Dropdown Open (Figma 4개 문서)", + "description": "열린 상태: 파일명과 화살표 #FFC600, 화살표 위쪽. 목록 310 × 168(항목 32 × 4 + 하단 40), 배경 #103127, 1px #041611, 하단 radius 4px." + }, + { + "title": "목록 항목 · + New · Open Hover (고정)", + "description": "Figma hover: 목록 항목은 검정 40% 배경(글자·아이콘 그대로, 26:10680), + New / Open은 배경 20% → 30%, 글자 검정 70% → 100%(26:10762 / 26:10805). 노란 테두리는 쓰지 않습니다. 위 Default와 비교합니다(두 번째 항목, + New, Open 고정)." + }, + { + "title": "문서 항목 선택 · New / Open", + "description": "클릭으로 열고 닫습니다. 항목을 고르면 onDocumentSelect가 호출되고(이 예제는 선택한 문서를 파일명·현재 문서로 표시), New / Open은 각각 onDocumentNew / onDocumentOpen을 호출합니다. 바깥 클릭·Escape로 닫힙니다. 키보드: Enter/Space 열기, ↓↑ 이동." + }, + { + "title": "현재 문서 — 첫 번째 문서 선택", + "description": "사용자 추가 요구(Figma 외): activeDocumentId 문서의 이름만 #FFC600으로 표시합니다. 목록은 documents 순서 그대로이고, 아이콘·높이·padding은 같으며 노란 테두리·배경은 없습니다. 모든 행 오른쪽에 Close Document(X) 자리가 있으며 평상시에는 숨겨져 있습니다." + }, + { + "title": "현재 문서 — 중간 문서(3번째) 선택", + "description": "선택한 문서는 제자리(3번째)에 있고 이름만 #FFC600입니다. 목록 순서 1 → 2 → 3 → 4는 바뀌지 않습니다." + }, + { + "title": "현재 문서 — 마지막 문서 선택" + }, + { + "title": "일반 문서 Hover (고정)", + "description": "Hover한 행에만 X가 나타납니다(선택 여부와 무관). 배경은 Figma 목록 Hover(검정 40%), 글자는 #F0F7F5 그대로입니다." + }, + { + "title": "현재 문서 Hover (고정)", + "description": "현재 문서는 노란 글자를 유지한 채 Hover 배경(검정 40%)과 X가 함께 표시됩니다. 선택은 글자색, Hover는 배경이라 서로 구분됩니다." + }, + { + "title": "X 버튼 Hover (고정)", + "description": "X 자체에 Hover하면 배경 rgba(182,208,201,.2)와 밝은 아이콘으로 바뀝니다(사용자 추가 요소, Figma 없음). 키보드 Focus는 아래 예제에서 Tab으로 확인합니다(행에 Focus가 오면 X가 보이고, X에는 2px #F0F7F5 윤곽선)." + }, + { + "title": "선택 변경 · 닫기 Callback 기록", + "description": "다른 문서를 고르면 onDocumentSelect만 호출되고, 목록 순서는 그대로 둔 채 노란 글자가 그 문서로 옮겨갑니다. 마우스를 옮기면 X도 Hover한 행으로 옮겨갑니다. 어느 행이든 X(또는 X에 Focus 후 Enter/Space)는 그 문서의 onDocumentClose만 한 번 호출합니다. 이 예제의 호스트는 닫은 문서를 목록에서 빼고, 현재 문서를 닫았을 때만 선택을 비웁니다(다음 문서 자동 선택은 호스트가 결정)." + }, + { + "title": "여러 문서 (18개)", + "description": "목록이 길면 Dropdown 안에서만 세로 스크롤합니다(최대 320px)." + }, + { + "title": "예외 — 문서 없음 (documents = [])", + "description": "호스트에 열린 문서가 없을 때만의 예외 상태입니다(기본 예제 아님). 목록 영역 없이 New / Open만 표시합니다. documents를 전달하지 않으면 Dropdown 없이 기존 버튼으로 동작합니다." + }, + { + "title": "긴 파일명", + "description": "파일명과 목록 항목 모두 말줄임을 유지합니다." + }, + { + "title": "좁은 화면 (헤더 390px)", + "description": "파일명이 좁아져도 목록은 파일명 왼쪽에 맞춰 열리고, 헤더 폭을 넘지 않도록 너비가 줄어듭니다." + } + ], + "headings": [ + "현재 열린 문서 1개 (기본 예제)", + "현재 열린 문서 1개 · 선택 · X · New / Open Callback", + "Default", + "Hover (고정)", + "Dropdown Open (Figma 4개 문서)", + "목록 항목 · + New · Open Hover (고정)", + "문서 항목 선택 · New / Open", + "현재 문서 — 첫 번째 문서 선택", + "현재 문서 — 중간 문서(3번째) 선택", + "현재 문서 — 마지막 문서 선택", + "일반 문서 Hover (고정)", + "현재 문서 Hover (고정)", + "X 버튼 Hover (고정)", + "선택 변경 · 닫기 Callback 기록", + "여러 문서 (18개)", + "예외 — 문서 없음 (documents = [])", + "긴 파일명", + "좁은 화면 (헤더 390px)" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "C0020101-006-평면및종단면도(06)", + "문서 닫기", + "+ New", + "Open", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "Sample-Drawing-01.dwg", + "문서 닫기", + "Sample-Drawing-02.dwg", + "문서 닫기", + "Sample-Plan-03.dxf", + "문서 닫기", + "Sample-Section-04.dxf", + "문서 닫기", + "+ New", + "Open", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "Sample-Drawing-01.dwg", + "문서 닫기", + "Sample-Drawing-02.dwg", + "문서 닫기", + "Sample-Plan-03.dxf", + "문서 닫기", + "Sample-Section-04.dxf", + "문서 닫기", + "+ New", + "Open", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: Sample-Drawing-01.dwg", + "Sample-Drawing-01.dwg", + "문서 닫기", + "Sample-Drawing-02.dwg", + "문서 닫기", + "Sample-Plan-03.dxf", + "문서 닫기", + "Sample-Section-04.dxf", + "문서 닫기", + "+ New", + "Open", + "레이어", + "색상", + "선스타일" + ], + "inputs": 0 + }, + { + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Layer Default", + "description": "layers를 전달한 기본 상태. 필드 234 × 38, 기존 테두리·그림자, 아이콘 3개 + 라벨/레이어명. layers를 전달하지 않으면 기존 필드 버튼(onLayerOpen) 그대로입니다." + }, + { + "title": "Layer Hover (고정)", + "description": "기존 노란 Gradient Border와 라벨·레이어명 #FFC600. 목록은 열리지 않습니다." + }, + { + "title": "Layer Dropdown Open (Figma 8개 행)", + "description": "Variant3: 라벨·레이어명 #FFC600, 필드 테두리 #081813·하단 각진 모서리, 필드+목록을 감싸는 노란 Gradient 1px 외곽선(236 × 320). 목록 234 × 280(행 30 × 8 + 하단 40), 배경 #27241D, 검정 1px, 하단 radius 3px, Shadow 0 4px 8px rgba(16,48,38,.25). 이 예제는 onLayerDetail이 없어 클릭은 무동작이며 상세 버튼의 공통 Hover는 유지합니다." + }, + { + "title": "Layer Row Default · Row Hover (고정)", + "description": "두 번째 행 Hover 고정: 배경 #62533D, 레이어명 #FF5C00(26:10695). 행 크기·아이콘 위치는 그대로입니다. 다른 필드·문서 목록의 Hover 색과 무관한 이 목록 전용 색입니다." + }, + { + "title": "전구 · 눈꽃 · 자물쇠 On / Hover / Off / Off Hover (3배 확대)", + "description": "1행 컬러(Default: visible=true · frozen=false · locked=false) · 2행 컬러 Hover(Variant2, 고정) · 3행 회색(Variant3: visible=false · frozen=true · locked=true) · 4행 회색 Hover(Variant4, 고정). 전구 Hover는 검정 25% 배경, 눈꽃·자물쇠 Hover는 Figma Hover SVG(같은 아이콘 + 검정 25% 타일)입니다. Off → Off Hover는 Figma Smart Animate에 맞춰 300ms ease-out으로 전환됩니다." + }, + { + "title": "레이어 선택 · 개별 아이콘 Toggle · Callback 기록", + "description": "필드 클릭으로 열고, 레이어명(색상 견본 포함)을 누르면 onLayerSelect만 호출되고 필드에 그 레이어가 표시되며 목록이 닫힙니다. 전구·눈꽃·자물쇠는 각각 onLayerVisibilityChange(layer, !visible) / onLayerFreezeChange(layer, !frozen) / onLayerLockChange(layer, !locked)만 한 번 호출하고 목록은 열린 채 유지됩니다(전구 컬러 = visible=true, 눈꽃 컬러 = frozen=false 동결 해제, 자물쇠 컬러 = locked=false 잠금 해제, 회색은 반대). 위 상태표로 해당 레이어만 바뀌는 것을 확인합니다. 키보드: Enter/Space 열기, ↓↑ 행 이동(같은 열 유지), ←→ 행 안 이동, Escape 닫기, Tab으로 벗어나면 닫힘." + }, + { + "title": "여러 레이어의 서로 다른 상태 · 현재 레이어", + "description": "현재 레이어(activeLayerId)는 Hover와 같은 갈색 배경·주황 글자이고 필드 아이콘도 그 레이어 상태를 따릅니다. Sample-Defpoints는 disabled 예시입니다." + }, + { + "title": "현재 레이어 Hover (고정)", + "description": "현재 레이어의 갈색 배경·주황 글자는 Hover 및 Mouse Leave 뒤에도 유지됩니다." + }, + { + "title": "긴 레이어명", + "description": "필드와 행 모두 말줄임으로 처리합니다. 전체 이름은 title로 확인합니다." + }, + { + "title": "많은 레이어 (20개)", + "description": "목록 부분만 세로 스크롤(최대 8행, 240px)하고 레이어 상세 영역은 고정입니다. 헤더에는 스크롤이 생기지 않습니다." + }, + { + "title": "레이어가 없는 상태", + "description": "layers=[]이면 목록 없이 레이어 상세 영역만 표시하고 필드는 layer.name을 표시합니다." + }, + { + "title": "레이어 상세 버튼", + "description": "onLayerDetail을 전달하면 Callback 호출 후 목록을 닫습니다(아래 기록). 전달하지 않아도 공통 Default/Hover(텍스트 35%)를 유지하며 클릭은 안전한 무동작입니다(위 Figma 8개 행 예제). Disabled는 명시적으로 지정합니다." + }, + { + "title": "상태 표시 전용(Toggle Callback 없음)", + "description": "onLayerVisibilityChange 등을 전달하지 않으면 해당 아이콘은 버튼이 아닌 상태 표시(role=img)이며 Hover·클릭 반응이 없습니다." + }, + { + "title": "좁은 화면 (헤더 1440px)", + "description": "필드 위치와 헤더 49px를 유지하고 목록은 필드 왼쪽에 맞춰 열립니다." + }, + { + "title": "좁은 화면 (헤더 1080px)", + "description": "필드 위치와 헤더 49px를 유지하고 목록은 필드 왼쪽에 맞춰 열립니다." + }, + { + "title": "좁은 화면 (헤더 900px)", + "description": "필드 위치와 헤더 49px를 유지하고 목록은 필드 왼쪽에 맞춰 열립니다." + }, + { + "title": "좁은 화면 (헤더 768px)", + "description": "필드 위치와 헤더 49px를 유지하고 목록은 필드 왼쪽에 맞춰 열립니다." + }, + { + "title": "좁은 화면 (헤더 640px)", + "description": "필드 위치와 헤더 49px를 유지하고 목록은 필드 왼쪽에 맞춰 열립니다." + }, + { + "title": "좁은 화면 (헤더 390px)", + "description": "520 미만에서는 필드의 상태 아이콘이 숨고 레이어명이 말줄임됩니다. 목록은 234px 그대로이며 헤더 밖으로 넘치지 않도록 왼쪽으로 이동합니다(이때 노란 외곽선은 목록만 감쌉니다). 필드를 눌러 열고 조작합니다." + } + ], + "headings": [ + "Layer Default", + "Layer Hover (고정)", + "Layer Dropdown Open (Figma 8개 행)", + "Layer Row Default · Row Hover (고정)", + "전구 · 눈꽃 · 자물쇠 On / Hover / Off / Off Hover (3배 확대)", + "레이어 선택 · 개별 아이콘 Toggle · Callback 기록", + "여러 레이어의 서로 다른 상태 · 현재 레이어", + "현재 레이어 Hover (고정)", + "긴 레이어명", + "많은 레이어 (20개)", + "레이어가 없는 상태", + "레이어 상세 버튼", + "상태 표시 전용(Toggle Callback 없음)", + "좁은 화면 (헤더 1440px)", + "좁은 화면 (헤더 1080px)", + "좁은 화면 (헤더 900px)", + "좁은 화면 (헤더 768px)", + "좁은 화면 (헤더 640px)", + "좁은 화면 (헤더 390px)" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "레이어 상세", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "CC-D GNL 표시", + "CC-D GNL 동결", + "CC-D GNL 잠금", + "CC-D GNL", + "레이어 상세", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "레이어", + "컬러 (Default) 표시", + "컬러 (Default) 동결", + "컬러 (Default) 잠금", + "컬러 (Default)", + "컬러 Hover (Variant2) 표시", + "컬러 Hover (Variant2) 동결", + "컬러 Hover (Variant2) 잠금", + "컬러 Hover (Variant2)", + "회색 (Variant3) 표시", + "회색 (Variant3) 동결", + "회색 (Variant3) 잠금", + "회색 (Variant3)", + "회색 Hover (Variant4) 표시", + "회색 Hover (Variant4) 동결" + ], + "inputs": 0 + }, + { + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Default", + "description": "colors를 전달하면 색상 필드가 Dropdown 버튼이 됩니다. 192 × 38, 견본은 현재 색상(color.swatch)." + }, + { + "title": "Hover (고정)", + "description": "기존 노란 Gradient Border + 라벨·값 #FFC600. 색상 견본은 실제 색 그대로입니다." + }, + { + "title": "Expanded (Figma 26:11005)", + "description": "192 × 158: ByLayer/ByBlock 167 × 30 · 팔레트 168 × 22(칩 22px 7개) · 색상 추출 24 + 입력 130 · 하단 40(색상 상세). 필드 테두리 #081813·아래 모서리 각짐, 필드+목록 노란 1px 외곽선(194 × 198)." + }, + { + "title": "사용자 추가 색상 (Figma 26:11036)", + "description": "userColors 2개: 24px 행이 추가되어 본문 182px. 개수는 가변이며 2px 간격으로 줄바꿈합니다." + }, + { + "title": "사용자 색상 40개", + "description": "팔레트 + 사용자 색상 4행(118px)을 넘으면 팔레트 영역만 세로 스크롤합니다. 헤더 높이·다른 필드 위치는 그대로입니다." + }, + { + "title": "ByLayer On (Figma on 26:12671)", + "description": "colorMode='byLayer': #62533D 배경 + 밝은 inner shadow. 텍스트 #D4CBBD + 검정 Stroke. ByBlock은 Default(rgba(98,83,61,.3) + 어두운 inner shadow)." + }, + { + "title": "내부 버튼 Hover (고정) — 2026-10-16 추가 수정 정책", + "description": "ByLayer / ByBlock 글자 #FF5C00. 선택 배경과 Inset Shadow는 유지합니다. 색상 상세는 배경 .25·radius 25·Hover 아이콘으로 변합니다. 색상 칩은 Hover가 없고, 색상 추출은 btn_colorize Hover(26:11305)입니다." + }, + { + "title": "RGB 입력 Hover (고정)", + "description": "입력은 수정 가능함을 알리는 Figma Hover를 유지합니다(header/menu/색상/input hover: 1px rgba(197,177,158,.2)). 편집 중(Focus)에는 값 영역이 검정이 되고 커서는 #E60403입니다 — 아래 실제 예제에서 클릭해 확인합니다." + }, + { + "title": "선택 · 입력 · Callback 기록", + "description": "칩 → onColorSelect, ByLayer/ByBlock → onColorModeChange(서로 배타: 이 호스트는 선택한 쪽만 On), 입력(255,0,0 · #00ff00 등, Enter 또는 Focus 이동) → 유효하면 onColorInput, 잘못된 값(256,0,0 · abc)은 복원. 색상 추출 → onColorPick 후 닫힘, 색상 상세 → onColorDetail 후 닫힘. 선택·입력 후에도 목록은 열려 있고 다른 속성(레이어·선스타일 등)은 그대로입니다. Escape·바깥 클릭·Tab으로 닫힘." + } + ], + "headings": [ + "Default", + "Hover (고정)", + "Expanded (Figma 26:11005)", + "사용자 추가 색상 (Figma 26:11036)", + "사용자 색상 40개", + "ByLayer On (Figma on 26:12671)", + "내부 버튼 Hover (고정) — 2026-10-16 추가 수정 정책", + "RGB 입력 Hover (고정)", + "선택 · 입력 · Callback 기록" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "ByLayer", + "ByBlock", + "흰색", + "빨강", + "초록", + "노랑", + "파랑", + "자홍", + "청록", + "색상 추출", + "색상 상세", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "ByLayer", + "ByBlock", + "흰색", + "빨강", + "초록", + "노랑", + "파랑", + "자홍", + "청록", + "사용자 색상 1", + "사용자 색상 2", + "색상 추출", + "색상 상세", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "ByLayer", + "ByBlock", + "흰색", + "빨강", + "초록", + "노랑", + "파랑", + "자홍", + "청록", + "사용자 색상 1", + "사용자 색상 2", + "사용자 색상 3", + "사용자 색상 4", + "사용자 색상 5", + "사용자 색상 6", + "사용자 색상 7", + "사용자 색상 8", + "사용자 색상 9", + "사용자 색상 10", + "사용자 색상 11", + "사용자 색상 12", + "사용자 색상 13", + "사용자 색상 14", + "사용자 색상 15", + "사용자 색상 16", + "사용자 색상 17", + "사용자 색상 18", + "사용자 색상 19", + "사용자 색상 20", + "사용자 색상 21", + "사용자 색상 22", + "사용자 색상 23", + "사용자 색상 24", + "사용자 색상 25", + "사용자 색상 26", + "사용자 색상 27", + "사용자 색상 28", + "사용자 색상 29", + "사용자 색상 30", + "사용자 색상 31", + "사용자 색상 32", + "사용자 색상 33", + "사용자 색상 34", + "사용자 색상 35", + "사용자 색상 36", + "사용자 색상 37", + "사용자 색상 38", + "사용자 색상 39", + "사용자 색상 40", + "색상 추출", + "색상 상세", + "선스타일", + "문자스타일" + ], + "inputs": 6 + }, + { + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Default", + "description": "284 × 38. 선 미리보기 10 × 4 × 5, 선스타일 / 가중치 / 스케일." + }, + { + "title": "Hover (고정)", + "description": "라벨·값 #FFC600, 선 미리보기 채움 #FFC600(검정 1px 유지), 노란 Gradient Border." + }, + { + "title": "Expanded (Figma 26:11143)", + "description": "필드 링(286 × 39) + 468 × 192 drop_wrap(1px 노란 링, x −92, y 37). 선 종류 5행 + 하단 40(선스타일 상세), 가중치 4행(ByDefault 0.25, User 입력), 스케일 입력. 현재 선 종류·가중치는 Hover와 같은 갈색 배경·주황 텍스트·선입니다." + }, + { + "title": "선 종류 행 Default · Hover (Figma 26:10703 / 26:10706, 고정)", + "description": "1·4번째 행 Hover 고정: 배경 #62533D, 선 미리보기·텍스트 #FF5C00, 검정 Stroke 유지, 크기 182 × 30·위치 그대로. CENTER·HIDDEN은 각자의 패턴(22·7 / 33·33)을 유지합니다. 가중치 2번째 행·스케일 행도 Figma 행 Hover를 고정했습니다." + }, + { + "title": "현재 행 Hover (고정)", + "description": "현재 선 종류(Continuous)는 Hover 및 Mouse Leave 뒤에도 갈색 배경·주황 선·이름을 유지합니다." + }, + { + "title": "상세 버튼 Hover (고정)", + "description": "2026-10-16 추가 수정 기준으로 선스타일 상세의 Figma 배경 .25·radius 25·Hover 아이콘을 적용합니다." + }, + { + "title": "선 종류 · 가중치 · 스케일 선택 Callback", + "description": "선 종류 → onLineTypeSelect(가중치·스케일 유지), 가중치 → onLineWeightSelect(선 종류·스케일 유지), User 입력 → onLineWeightValueChange(0 이상), 스케일 입력 → onLineScaleChange(0 초과). 입력은 Enter/Focus 이동으로 확정, Escape는 취소. ↓↑로 항목 이동." + }, + { + "title": "좁은 헤더 390px", + "description": "468px 목록이 헤더보다 넓으면 3열을 세로로 쌓아(필요 시 세로 스크롤) 화면 밖 이탈·가로 스크롤 없이 모든 항목에 접근합니다. 더보기 → 선스타일로 엽니다." + } + ], + "headings": [ + "Default", + "Hover (고정)", + "Expanded (Figma 26:11143)", + "선 종류 행 Default · Hover (Figma 26:10703 / 26:10706, 고정)", + "현재 행 Hover (고정)", + "상세 버튼 Hover (고정)", + "선 종류 · 가중치 · 스케일 선택 Callback", + "좁은 헤더 390px" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "ByBlock", + "ByLayer", + "Continuous", + "CENTER", + "HIDDEN", + "선스타일 상세", + "ByLayer", + "ByBlock", + "ByDefault0.25", + "User", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "ByBlock", + "ByLayer", + "Continuous", + "CENTER", + "HIDDEN", + "선스타일 상세", + "ByLayer", + "ByBlock", + "ByDefault0.25", + "User", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "ByBlock", + "ByLayer", + "Continuous", + "CENTER", + "HIDDEN", + "선스타일 상세", + "ByLayer", + "ByBlock", + "ByDefault0.25", + "User", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "ByBlock", + "ByLayer", + "Continuous", + "CENTER", + "HIDDEN", + "선스타일 상세", + "ByLayer", + "ByBlock", + "ByDefault0.25", + "User", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화" + ], + "inputs": 8 + }, + { + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Default · Hover (고정)", + "description": "위: Default. 아래: Hover — 라벨·값·글꼴 미리보기 #FFC600, 치수 미리보기는 Figma Hover SVG, 검정 외곽선 유지." + }, + { + "title": "문자스타일 Expanded (Figma 26:11200)", + "description": "Arial / Standard, 돋움 / Dotum. 글꼴 16px + 이름 14px(모두 검정 Stroke). 하단 '문자스타일 상세'는 Figma처럼 왼쪽 정렬(테두리 .25)." + }, + { + "title": "문자스타일 행·상세 버튼 Hover (고정)", + "description": "두 번째 행과 현재 스타일 모두 #62533D / 글꼴·이름 #FF5C00입니다. 상세 버튼도 Figma Hover입니다." + }, + { + "title": "치수스타일 Expanded (Figma 26:11242)", + "description": "Standard, ISO - 25. 치수 미리보기 60 × 15(Figma 행 자산 #F6F4F2). 하단 '치수스타일 상세' 오른쪽 정렬." + }, + { + "title": "치수스타일 행·상세 버튼 Hover (고정)", + "description": "두 번째 행: #62533D, 이름·치수 미리보기 #FF5C00(Figma Hover 자산). 상세 버튼 Hover는 26:10799(기본 아이콘·텍스트 100%)이며 Variant3와 혼합하지 않습니다." + }, + { + "title": "선택 Callback", + "description": "행 → onTextStyleSelect / onDimensionStyleSelect 1회 후 닫힘, 상세 → on*Detail 1회 후 닫힘. 필드 값이 호스트 상태로 갱신됩니다." + } + ], + "headings": [ + "Default · Hover (고정)", + "문자스타일 Expanded (Figma 26:11200)", + "문자스타일 행·상세 버튼 Hover (고정)", + "치수스타일 Expanded (Figma 26:11242)", + "치수스타일 행·상세 버튼 Hover (고정)", + "선택 Callback" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "ArialStandard", + "돋움Dotum", + "문자스타일 상세", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "ArialStandard", + "돋움Dotum", + "문자스타일 상세", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "Standard", + "ISO - 25", + "치수스타일 상세", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "Standard", + "ISO - 25", + "치수스타일 상세", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "전환 · Callback 기록 (1440)", + "description": "… → 선스타일: 대표 칸이 선스타일(미리보기·이름·가중치·스케일)로 바뀌고 선스타일 Dropdown이 열립니다. … → 문자스타일: 선스타일 Dropdown이 닫히고 대표 칸이 문자스타일로. … → 레이어: 원래 배치로 복귀. 값은 모두 유지됩니다." + }, + { + "title": "전환 · Callback 기록 (768)", + "description": "색상도 더보기에 있는 폭입니다. … → 색상: 색상 필드와 목록." + }, + { + "title": "전환 · Callback 기록 (390)", + "description": "대표 필드는 남는 폭에 맞춰 값이 말줄임되고, 목록은 헤더 안쪽으로 이동합니다." + }, + { + "title": "1920px" + }, + { + "title": "1800px" + }, + { + "title": "1799px" + }, + { + "title": "1440px" + }, + { + "title": "1180px" + }, + { + "title": "1179px" + }, + { + "title": "1080px" + }, + { + "title": "1079px" + }, + { + "title": "900px" + }, + { + "title": "899px" + }, + { + "title": "768px" + }, + { + "title": "640px" + }, + { + "title": "639px" + }, + { + "title": "520px" + }, + { + "title": "519px" + }, + { + "title": "390px" + } + ], + "headings": [ + "전환 · Callback 기록 (1440)", + "전환 · Callback 기록 (768)", + "전환 · Callback 기록 (390)", + "1920px", + "1800px", + "1799px", + "1440px", + "1180px", + "1179px", + "1080px", + "1079px", + "900px", + "899px", + "768px", + "640px", + "639px", + "520px", + "519px", + "390px" + ], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄" + ], + "inputs": 0 + }, + { + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "Figma 원본 (비교용 이미지)", + "description": "왼쪽: 레이어 상세 Default / Hover(배경 .25 · radius 25 · 아이콘 35%). 오른쪽: Input Default 58 × 20 / Hover 58 × 24 / On 58 × 24. 최신 요청에 따라 아래 실제 버튼에도 Hover를 적용합니다. 이미지는 Storybook 비교용이며 패키지에 포함하지 않습니다." + }, + { + "title": "레이어 상세 — Default · Hover (고정) · Disabled (3배 확대)", + "description": "왼쪽: Callback 없이 사용 가능(Default). 가운데: Hover 배경 .25·radius 25·Hover 아이콘. 오른쪽: 호스트가 fieldset disabled를 명시한 상태. Figma와 같은 113 × 24, 아이콘 14 · 간격 4 · padding 5 / 10 · 배경 rgba(197,177,158,.15) · radius 24 · 글자 35%. CAD 상세 실행은 호스트 Callback이 있을 때만 가능합니다." + }, + { + "title": "레이어 상세 Click Callback", + "description": "필드를 열고 '레이어 상세'를 누르면 onLayerDetail 1회 후 목록이 닫힙니다(기존 동작). 레이어 선택·전구·눈꽃·자물쇠 매핑은 변경하지 않았습니다." + }, + { + "title": "Input — Default · Hover (고정) · ReadOnly · Disabled (3배 확대)", + "description": "Default: 배경·테두리 없음, #E60403 14px + 검정 1.3px Stroke. Hover: 1px rgba(212,203,189,.25), 24px(글자 위치 그대로). ReadOnly(onCommit 없음 또는 readOnly): Hover·편집 상태 없음. Disabled: 40%." + }, + { + "title": "Input — Editing (Focus)", + "description": "편집 중(26:11661): 배경 #0F0D0A, 1px rgba(212,203,189,.3), 글자 #E60403 유지, 네이티브 커서 #E60403(caret-color, 깜박임 = Figma cursor Default / Variant2). 이 예제는 입력에 자동 Focus합니다." + }, + { + "title": "Input — 입력 · Enter 확정 · Escape 취소 · 외부 값 갱신", + "description": "숫자 입력(valueType='number'): 유효한 소수만 onCommit, 잘못된 값은 복원. 텍스트 입력(한글 IME 포함): 조합 중 Enter는 확정하지 않습니다. Escape는 편집 취소(onCancel) — 확정값으로 복원. Focus 이동(Tab / 바깥 클릭)도 확정합니다. 위 버튼으로 호스트 값을 바꾸면 최신 값이 표시됩니다." + } + ], + "headings": [ + "Figma 원본 (비교용 이미지)", + "레이어 상세 — Default · Hover (고정) · Disabled (3배 확대)", + "레이어 상세 Click Callback", + "Input — Default · Hover (고정) · ReadOnly · Disabled (3배 확대)", + "Input — Editing (Focus)", + "Input — 입력 · Enter 확정 · Escape 취소 · 외부 값 갱신" + ], + "buttons": [ + "레이어", + "CC-D GNL", + "CC-D GNL", + "레이어 상세", + "레이어", + "CC-D GNL", + "CC-D GNL", + "레이어 상세", + "레이어", + "CC-D GNL", + "CC-D GNL", + "레이어 상세", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "외부 값 변경 (12.5)", + "외부 텍스트 변경" + ], + "inputs": 7 + }, + { + "id": "sw-header--property-panel", + "name": "Property Panel", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "선택 없음", + "전체 선택", + "원 1개", + "모두 펼침", + "1920px", + "1440px", + "1080px", + "900px", + "768px", + "640px", + "390px", + "Controlled: false", + "외부 Open 변경", + "속성 추가", + "형상 속성 추가", + "CENTER 옵션 삭제", + "레이어 속성 삭제", + "외부 값 변경", + "선택 객체 교체", + "속성 순서 뒤집기", + "가중치 Disabled", + "레이어 ReadOnly", + "투명도 외부 값 변경", + "투명도 Disabled", + "투명도 ReadOnly", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "선택 없음", + "전체 선택", + "원 1개", + "모두 펼침", + "1920px", + "1440px", + "1080px", + "900px", + "768px", + "640px", + "390px", + "Controlled: false", + "외부 Open 변경", + "속성 추가", + "형상 속성 추가", + "CENTER 옵션 삭제", + "레이어 속성 삭제", + "외부 값 변경", + "선택 객체 교체", + "속성 순서 뒤집기", + "가중치 Disabled", + "레이어 ReadOnly", + "투명도 외부 값 변경", + "투명도 Disabled", + "투명도 ReadOnly", + "객체 선택 도구", + "속성창 닫기", + "0", + "Continuous(ByL)", + "공통 속성 펼치기" + ], + "inputs": 5 + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료", + "외부 ByLayer", + "외부 ByBlock", + "외부 직접 색상", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--property-bar", + "name": "Property Bar", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [ + { + "title": "콘텐츠 폭 기준 (부모 1222px, 높이 28)" + } + ], + "headings": [ + "콘텐츠 폭 기준 (부모 1222px, 높이 28)" + ], + "buttons": [ + "Controlled 전환", + "외부 열림 변경", + "Bar 필드 추가", + "Bar 반지름 삭제", + "Bar 순서 반전", + "Bar 외부 값 변경", + "Bar 객체 교체", + "Bar ReadOnly", + "Bar Disabled", + "Bar 개별 제한", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 4 + }, + { + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "구성 초기화", + "모두 제거", + "레이어·선스타일만", + "파일·색상 제거", + "구성 순서 반전", + "구성 라벨 변경", + "색상 숨김", + "숨김 복원", + "임시 로고 홈", + "문서: 현재 문서.dwg", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "더보기", + "최소화", + "종료" + ], + "inputs": 12 + }, + { + "id": "sw-header--colorize", + "name": "Colorize", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 0 + }, + { + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "기본 전체", + "구성 A", + "구성 B (레이어·선스타일)", + "구성 C (로고만)", + "파일 목록 제거", + "레이어 제거", + "색상 제거", + "스타일 그룹 제거", + "여러 메뉴 제거", + "순서 변경", + "숨김 + 순서 변경", + "기본 순서", + "순서 반전", + "첫 메뉴를 끝으로", + "중복·알 수 없는 ID", + "실제 화면", + "1920px", + "1440px", + "1080px", + "900px", + "768px", + "640px", + "390px", + "임시 로고 홈", + "문서: C0020101-006-평면및종단면도(06)", + "레이어", + "색상", + "선스타일", + "문자스타일", + "치수스타일", + "더보기", + "속성Bar", + "속성창", + "인쇄", + "팝업 가이드", + "최소화", + "종료" + ], + "inputs": 16 + }, + { + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "객체 선택 도구", + "속성창 닫기", + "0", + "Continuous(ByL)", + "공통 속성 펼치기" + ], + "inputs": 5 + }, + { + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "객체 선택 도구", + "속성창 닫기", + "다양함", + "Continuous(ByL)", + "공통 속성 펼치기" + ], + "inputs": 5 + }, + { + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [ + "형상", + "위치" + ], + "buttons": [ + "속성창 닫기", + "0_Layer_Cludmark", + "Continuous(ByL)", + "공통 속성 펼치기", + "선택된 객체 - 전체 11" + ], + "inputs": 12 + }, + { + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [ + "형상", + "위치" + ], + "buttons": [ + "속성창 닫기", + "0_Layer_Cludmark", + "Continuous(ByL)", + "공통 속성 접기", + "선택된 객체 - 전체 11" + ], + "inputs": 15 + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [ + "형상", + "위치", + "형상", + "위치" + ], + "buttons": [ + "객체 선택 도구", + "속성창 닫기", + "0", + "Continuous(ByL)", + "공통 속성 펼치기", + "객체 선택 도구", + "속성창 닫기", + "다양함", + "Continuous(ByL)", + "공통 속성 펼치기", + "속성창 닫기", + "0_Layer_Cludmark", + "Continuous(ByL)", + "공통 속성 펼치기", + "선택된 객체 - 전체 11", + "속성창 닫기", + "0_Layer_Cludmark", + "Continuous(ByL)", + "공통 속성 접기", + "선택된 객체 - 전체 11" + ], + "inputs": 37 + }, + { + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [ + "형상", + "위치" + ], + "buttons": [ + "기본 Figma 형상", + "비움 (null)", + "외부 컴포넌트", + "Render Prop", + "형상 교체 (원 ↔ 사각형)", + "지름·반지름 외부 변경", + "형상 그룹 항목 추가", + "면적 삭제", + "속성창 닫기", + "0_Layer_Cludmark", + "Continuous(ByL)", + "공통 속성 펼치기", + "선택된 객체 - 전체 11" + ], + "inputs": 12 + }, + { + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "tags": [ + "dev", + "test", + "manifest" + ], + "render": true, + "errors": [], + "sections": [], + "headings": [], + "buttons": [ + "레이어 다양함 ↔ 단일", + "레이어 외부 값 변경", + "선축적 외부 값 변경", + "두께 단위 변경", + "선스타일 외부 CENTER", + "두께·레이어 ReadOnly", + "선축적·색상 Disabled", + "속성 추가", + "하이퍼링크 삭제", + "menus 없음(options 사용): false", + "객체 선택 도구", + "속성창 닫기", + "다양함", + "0_Layer_Cludmark", + "Continuous(ByL)", + "객체 선택 도구", + "속성창 닫기", + "다양함", + "0_Layer_Cludmark", + "Continuous(ByL)", + "객체 선택 도구", + "속성창 닫기", + "다양함", + "0_Layer_Cludmark", + "Continuous(ByL)" + ], + "inputs": 24 + } +] diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--additional-hover.png b/docs/sw/storybook-overview-qa/screens/sw-header--additional-hover.png new file mode 100644 index 0000000..0226cc5 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--additional-hover.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--color-dropdown.png b/docs/sw/storybook-overview-qa/screens/sw-header--color-dropdown.png new file mode 100644 index 0000000..94b4605 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--color-dropdown.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--colorize.png b/docs/sw/storybook-overview-qa/screens/sw-header--colorize.png new file mode 100644 index 0000000..470ca41 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--colorize.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--composed-controls.png b/docs/sw/storybook-overview-qa/screens/sw-header--composed-controls.png new file mode 100644 index 0000000..3c9dbb1 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--composed-controls.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--composition.png b/docs/sw/storybook-overview-qa/screens/sw-header--composition.png new file mode 100644 index 0000000..04269f9 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--composition.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--detail-buttons.png b/docs/sw/storybook-overview-qa/screens/sw-header--detail-buttons.png new file mode 100644 index 0000000..6114106 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--detail-buttons.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--document-dropdown.png b/docs/sw/storybook-overview-qa/screens/sw-header--document-dropdown.png new file mode 100644 index 0000000..586b910 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--document-dropdown.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--dynamic-controls.png b/docs/sw/storybook-overview-qa/screens/sw-header--dynamic-controls.png new file mode 100644 index 0000000..e8d7e33 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--dynamic-controls.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--interactive-states.png b/docs/sw/storybook-overview-qa/screens/sw-header--interactive-states.png new file mode 100644 index 0000000..cfc8f68 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--interactive-states.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--k-guide.png b/docs/sw/storybook-overview-qa/screens/sw-header--k-guide.png new file mode 100644 index 0000000..17444c9 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--k-guide.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--layer-detail-input.png b/docs/sw/storybook-overview-qa/screens/sw-header--layer-detail-input.png new file mode 100644 index 0000000..3476f02 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--layer-detail-input.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--layer-dropdown.png b/docs/sw/storybook-overview-qa/screens/sw-header--layer-dropdown.png new file mode 100644 index 0000000..396b4d8 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--layer-dropdown.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--line-style-dropdown.png b/docs/sw/storybook-overview-qa/screens/sw-header--line-style-dropdown.png new file mode 100644 index 0000000..c37fae1 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--line-style-dropdown.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--logo-slot.png b/docs/sw/storybook-overview-qa/screens/sw-header--logo-slot.png new file mode 100644 index 0000000..3af064b Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--logo-slot.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--overview.png b/docs/sw/storybook-overview-qa/screens/sw-header--overview.png new file mode 100644 index 0000000..e6d87e3 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--overview.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-bar.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-bar.png new file mode 100644 index 0000000..5430403 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-bar.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-fields.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-fields.png new file mode 100644 index 0000000..7271205 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-fields.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-all.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-all.png new file mode 100644 index 0000000..a8e1a65 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-all.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-circle.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-circle.png new file mode 100644 index 0000000..3d7d73d Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-circle.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-compare.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-compare.png new file mode 100644 index 0000000..9656dfa Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-compare.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-expanded.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-expanded.png new file mode 100644 index 0000000..feb935e Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-expanded.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-none.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-none.png new file mode 100644 index 0000000..d9d9667 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-none.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-variants.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-variants.png new file mode 100644 index 0000000..97cf3d0 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel-variants.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-panel.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel.png new file mode 100644 index 0000000..ed6697d Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-panel.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--property-shape-slot.png b/docs/sw/storybook-overview-qa/screens/sw-header--property-shape-slot.png new file mode 100644 index 0000000..1c90410 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--property-shape-slot.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--responsive-more.png b/docs/sw/storybook-overview-qa/screens/sw-header--responsive-more.png new file mode 100644 index 0000000..eb45b13 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--responsive-more.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--text-dimension-style-dropdown.png b/docs/sw/storybook-overview-qa/screens/sw-header--text-dimension-style-dropdown.png new file mode 100644 index 0000000..28ebb7e Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--text-dimension-style-dropdown.png differ diff --git a/docs/sw/storybook-overview-qa/screens/sw-header--window-move-motion.png b/docs/sw/storybook-overview-qa/screens/sw-header--window-move-motion.png new file mode 100644 index 0000000..3da7a58 Binary files /dev/null and b/docs/sw/storybook-overview-qa/screens/sw-header--window-move-motion.png differ diff --git a/docs/sw/storybook-overview-qa/storybook-build.txt b/docs/sw/storybook-overview-qa/storybook-build.txt new file mode 100644 index 0000000..a3fc2a2 --- /dev/null +++ b/docs/sw/storybook-overview-qa/storybook-build.txt @@ -0,0 +1,306 @@ + +T Building storybook v10.6.1 +| +o Cleaning outputDir: storybook-static +| +o Loading presets +| +o Building manager.. +| +• Building open services.. +| +• Building preview.. +| +• Copying static files: public\fonts at storybook-static\fonts +| +• Copying static files: themes at storybook-static\themes +| Vite vite v8.3.0 building client environment for production... +transforming... +Found 1 warning while optimizing generated CSS: + +│ } +│ .bg-\[var\(\.\.\.\)\] { +│ background-color: var(...); +┆ ^-- Unexpected token Delim('.') +┆ +│ } +│ .bg-background { + +✓ 3102 modules transformed. +| +! Vite [lightningcss minify] 'host-context' is not recognized as a valid +| pseudo-class. Did you mean '::host-context' (pseudo-element) or is +| this a typo? +| 1322 | background-color: var(--hm-orgchart-dialog-close-hover); +| 1323 | } +| 1324 | :host-context(.dark) .hm-orgchart-employee-dialog-close:hover, +| | ^ +| 1325 | .dark .hm-orgchart-employee-dialog-close:hover { +| 1326 | background-color: color-mix(in oklab, +| var(--hm-orgchart-dialog-close-hover) 50%, transparent); +rendering chunks... +computing gzip size... +| Vite storybook-static/assets/input-26-11656-BIXt51ww.png +| 5.09 kB +| storybook-static/iframe.html +| 19.07 kB │ gzip: 5.42 kB +| storybook-static/assets/NotoSansKR-variable-k7NQXPol.ttf +| 10,414.58 kB +| storybook-static/assets/data-table-x0avmA1M.css +| 0.89 kB │ gzip: 0.32 kB +| storybook-static/assets/department-colors-preview-C8o8mgn-.css +| 1.12 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-stories-CVVpQeIs.css +| 1.15 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-expanded-BQqXfdmZ.css +| 1.34 kB │ gzip: 0.43 kB +| storybook-static/assets/story-page-B9TObVPB.css +| 1.74 kB │ gzip: 0.49 kB +| storybook-static/assets/designer-theme-Bv3QXGf0.css +| 2.88 kB │ gzip: 0.85 kB +| storybook-static/assets/reference-CElszmAj.css +| 3.13 kB │ gzip: 0.87 kB +| storybook-static/assets/center-stories-MLQreMPw.css +| 6.77 kB │ gzip: 1.49 kB +| storybook-static/assets/dashboard-layout-cwHZMCdB.css +| 6.90 kB │ gzip: 1.21 kB +| storybook-static/assets/engine-DrWcIejL.css +| 15.64 kB │ gzip: 3.10 kB +| storybook-static/assets/center-shared-CBSMPY7X.css +| 55.67 kB │ gzip: 10.48 kB +| storybook-static/assets/sw-header-CUYjY3HM.css +| 73.13 kB │ gzip: 13.58 kB +| storybook-static/assets/style-BhhUui7W.css +| 93.80 kB │ gzip: 12.41 kB +| storybook-static/assets/iframe-BW1xNYqB.css +| 237.20 kB │ gzip: 36.15 kB +| storybook-static/assets/iframe-BN7HSSg4.js +| 0.04 kB │ gzip: 0.06 kB +| storybook-static/assets/center-stories-Cr38slYE.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/org-chart-stories-BU9b3y-N.js +| 0.09 kB │ gzip: 0.11 kB +| storybook-static/assets/chart-column-39yOKDYH.js +| 0.41 kB │ gzip: 0.29 kB +| storybook-static/assets/layout-grid-6y2ii6HT.js +| 0.48 kB │ gzip: 0.28 kB +| storybook-static/assets/italic-DkeWgR9v.js +| 0.58 kB │ gzip: 0.36 kB +| storybook-static/assets/org-chart-full-composition.stories-D1pErr-l.js +| 0.59 kB │ gzip: 0.39 kB +| storybook-static/assets/org-chart-p1.stories-CfXa_6Rp.js +| 0.59 kB │ gzip: 0.40 kB +| storybook-static/assets/org-chart-department-colors.stories-CtRK7aJI.js +| 0.60 kB │ gzip: 0.39 kB +| storybook-static/assets/settings-BS9DjRDa.js +| 0.62 kB │ gzip: 0.34 kB +| storybook-static/assets/org-chart-summary.stories-B900zJzh.js +| 0.76 kB │ gzip: 0.40 kB +| storybook-static/assets/center-information.stories-QS-Xk9cm.js +| 0.94 kB │ gzip: 0.63 kB +| storybook-static/assets/sample-users-CAqvNHXG.js +| 0.94 kB │ gzip: 0.67 kB +| storybook-static/assets/center-spatial.stories-BKywiGMs.js +| 0.97 kB │ gzip: 0.64 kB +| storybook-static/assets/rolldown-runtime-DkW27tQK.js +| 1.19 kB │ gzip: 0.67 kB +| storybook-static/assets/preload-helper-VEOc_cSF.js +| 1.33 kB │ gzip: 0.75 kB +| storybook-static/assets/center-title.stories-D4g3unBO.js +| 1.36 kB │ gzip: 0.88 kB +| storybook-static/assets/org-chart-overview-internal.stories-CZjDbHDQ.js +| 1.43 kB │ gzip: 0.68 kB +| storybook-static/assets/org-chart-cards.stories-BMF7xDR7.js +| 1.60 kB │ gzip: 0.92 kB +| storybook-static/assets/color.stories-DZb1MHtw.js +| 1.80 kB │ gzip: 1.03 kB +| storybook-static/assets/center-facility.stories-SWGtrHnb.js +| 1.90 kB │ gzip: 1.08 kB +| storybook-static/assets/loading-screen.stories-Dff8ndFU.js +| 1.96 kB │ gzip: 1.04 kB +| storybook-static/assets/story-board-BEJDReki.js +| 1.99 kB │ gzip: 0.89 kB +| storybook-static/assets/skeleton.stories-kNCVEaAs.js +| 2.10 kB │ gzip: 1.01 kB +| storybook-static/assets/story-page-BdQwBtvH.js +| 2.13 kB │ gzip: 0.69 kB +| storybook-static/assets/verification-state-BvmqrSTe.js +| 2.15 kB │ gzip: 1.05 kB +| storybook-static/assets/hover-card.stories-Crbf6ekx.js +| 2.34 kB │ gzip: 1.09 kB +| storybook-static/assets/alert-dialog.stories-YCXcnGTq.js +| 2.48 kB │ gzip: 1.08 kB +| storybook-static/assets/separator.stories-DCH35yh1.js +| 2.56 kB │ gzip: 1.16 kB +| storybook-static/assets/dropdown-menu.stories-GGuA7NCs.js +| 2.58 kB │ gzip: 1.29 kB +| storybook-static/assets/badge.stories-CHBpLyWb.js +| 2.61 kB │ gzip: 1.23 kB +| storybook-static/assets/tooltip.stories-CAhvJiqg.js +| 2.65 kB │ gzip: 1.23 kB +| storybook-static/assets/publisher-regression.stories-BSdjbYdq.js +| 2.70 kB │ gzip: 1.15 kB +| storybook-static/assets/calendar.stories-CEWYrdQ5.js +| 2.79 kB │ gzip: 1.31 kB +| storybook-static/assets/switch.stories-DHCVpaSE.js +| 2.86 kB │ gzip: 1.28 kB +| storybook-static/assets/reference-yKN_SnBk.js +| 2.88 kB │ gzip: 1.24 kB +| storybook-static/assets/context-menu.stories-ZITwa1kb.js +| 2.95 kB │ gzip: 1.47 kB +| storybook-static/assets/center-shared-CSGUuM9T.js +| 2.96 kB │ gzip: 1.36 kB +| storybook-static/assets/scroll-area.stories-DEvdgplg.js +| 3.02 kB │ gzip: 1.30 kB +| storybook-static/assets/popover.stories-DvMwP766.js +| 3.05 kB │ gzip: 1.30 kB +| storybook-static/assets/aspect-ratio.stories-7mL3laNq.js +| 3.06 kB │ gzip: 1.52 kB +| storybook-static/assets/typography.stories-CKjfpWpM.js +| 3.07 kB │ gzip: 1.42 kB +| storybook-static/assets/pagination.stories-Mbhc8AU9.js +| 3.12 kB │ gzip: 1.50 kB +| storybook-static/assets/alert.stories-CpyLpNi-.js +| 3.16 kB │ gzip: 1.30 kB +| storybook-static/assets/label.stories-CPEv7gzc.js +| 3.19 kB │ gzip: 1.39 kB +| storybook-static/assets/collapsible.stories-DO9N9ksi.js +| 3.19 kB │ gzip: 1.50 kB +| storybook-static/assets/drawer.stories-C9cifdBI.js +| 3.23 kB │ gzip: 1.47 kB +| storybook-static/assets/radio-group.stories-DwqwXVDe.js +| 3.24 kB │ gzip: 1.47 kB +| storybook-static/assets/avatar.stories-B6K5na20.js +| 3.30 kB │ gzip: 1.45 kB +| storybook-static/assets/page-header.stories-HeG_6w9V.js +| 3.32 kB │ gzip: 1.30 kB +| storybook-static/assets/menubar.stories-BhTzLN_a.js +| 3.33 kB │ gzip: 1.39 kB +| storybook-static/assets/command.stories-D-XMtuKM.js +| 3.33 kB │ gzip: 1.58 kB +| storybook-static/assets/center-overview.stories-E8zT3EyS.js +| 3.36 kB │ gzip: 1.77 kB +| storybook-static/assets/filter-bar.stories-DcTIJuSP.js +| 3.43 kB │ gzip: 1.72 kB +| storybook-static/assets/sheet.stories-DdnpVhWc.js +| 3.51 kB │ gzip: 1.44 kB +| storybook-static/assets/progress.stories-BDmSy5Qj.js +| 3.52 kB │ gzip: 1.61 kB +| storybook-static/assets/breadcrumb.stories-ChR_KDt-.js +| 3.55 kB │ gzip: 1.52 kB +| storybook-static/assets/card.stories-_z1r7XI2.js +| 3.74 kB │ gzip: 1.63 kB +| storybook-static/assets/navigation-menu.stories-H4SlN4bU.js +| 3.86 kB │ gzip: 1.62 kB +| storybook-static/assets/resizable.stories-uaf5IGxv.js +| 3.96 kB │ gzip: 1.46 kB +| storybook-static/assets/specimens-Ch5aVLS1.js +| 4.13 kB │ gzip: 1.36 kB +| storybook-static/assets/sonner.stories-gVdEDxUX.js +| 4.22 kB │ gzip: 1.83 kB +| storybook-static/assets/checkbox.stories-CgA-2wok.js +| 4.39 kB │ gzip: 1.66 kB +| storybook-static/assets/date-picker.stories-DHa1DjlV.js +| 4.45 kB │ gzip: 1.69 kB +| storybook-static/assets/slider.stories-BcPpzY38.js +| 4.53 kB │ gzip: 1.86 kB +| storybook-static/assets/org-chart-page-previews-Ctz_kKme.js +| 4.70 kB │ gzip: 2.05 kB +| storybook-static/assets/carousel.stories-BLEYsPtS.js +| 4.75 kB │ gzip: 1.91 kB +| storybook-static/assets/layout.stories-BQltBMcD.js +| 4.79 kB │ gzip: 1.92 kB +| storybook-static/assets/table.stories-B82HKFvC.js +| 4.86 kB │ gzip: 2.02 kB +| storybook-static/assets/combobox.stories-49EFqEgG.js +| 5.03 kB │ gzip: 2.07 kB +| storybook-static/assets/accordion.stories-Bzzb4Ud4.js +| 5.05 kB │ gzip: 1.81 kB +| storybook-static/assets/OrgChart-DZlWXlj3-Cg7VHAIW.js +| 5.35 kB │ gzip: 1.95 kB +| storybook-static/assets/dialog.stories-CHiRjmir.js +| 5.53 kB │ gzip: 2.13 kB +| storybook-static/assets/toggle.stories-DffHj9E4.js +| 5.81 kB │ gzip: 2.13 kB +| storybook-static/assets/data-table.stories-B40WrOK1.js +| 5.92 kB │ gzip: 2.52 kB +| storybook-static/assets/textarea.stories-t-9JtP6t.js +| 5.99 kB │ gzip: 2.43 kB +| storybook-static/assets/runtime-loader.stories-Cgs8Weu2.js +| 6.18 kB │ gzip: 2.45 kB +| storybook-static/assets/toggle-group.stories-BRmj8DKL.js +| 6.57 kB │ gzip: 2.23 kB +| storybook-static/assets/react-Q1GcV6wX.js +| 7.87 kB │ gzip: 3.01 kB +| storybook-static/assets/input.stories-BXqV7hCq.js +| 8.32 kB │ gzip: 3.05 kB +| storybook-static/assets/button.stories-CG1boIti.js +| 9.65 kB │ gzip: 3.62 kB +| storybook-static/assets/select.stories-CwcBCz1l.js +| 10.52 kB │ gzip: 3.39 kB +| storybook-static/assets/tabs.stories-G8gk_Flp.js +| 11.57 kB │ gzip: 4.13 kB +| storybook-static/assets/org-chart.stories-welHTajy.js +| 12.54 kB │ gzip: 4.16 kB +| storybook-static/assets/designer-theme.stories-BzNQsLun.js +| 14.62 kB │ gzip: 5.51 kB +| storybook-static/assets/gnb.stories-CIUtlAzi.js +| 16.56 kB │ gzip: 5.84 kB +| storybook-static/assets/theme-CZw7CMzf.js +| 18.61 kB │ gzip: 3.18 kB +| storybook-static/assets/lnb.stories-BFHV7Rpz.js +| 23.06 kB │ gzip: 6.43 kB +| storybook-static/assets/dashboard-layout.stories-Okv-SwFR.js +| 23.84 kB │ gzip: 6.25 kB +| storybook-static/vite-inject-mocker-entry.js +| 27.84 kB │ gzip: 9.66 kB +| storybook-static/assets/reference-data-Dp4dBiCx.js +| 40.42 kB │ gzip: 9.43 kB +| storybook-static/assets/runtime-theme.stories-WGYRELlW.js +| 61.92 kB │ gzip: 11.60 kB +| storybook-static/assets/org-chart-expanded.stories-DYDKWoe7.js +| 79.03 kB │ gzip: 10.07 kB +| storybook-static/assets/react-18-BukvVaPF.js +| 207.62 kB │ gzip: 65.12 kB +| storybook-static/assets/core-component-preview-CbmTQndg.js +| 258.40 kB │ gzip: 146.05 kB +| storybook-static/assets/sw-header.stories-edbdMdWE.js +| 768.59 kB │ gzip: 359.85 kB +| storybook-static/assets/reference-Bz-UmAfk.js +| 1,644.48 kB │ gzip: 270.35 kB +| storybook-static/assets/iframe-NxI5EhLm.js +| 1,754.05 kB │ gzip: 503.61 kB +| storybook-static/assets/style-CNeiB0x2.js +| 2,359.94 kB │ gzip: 1,631.23 kB + +| +! Vite [plugin builtin:vite-reporter] +| (!) Some chunks are larger than 500 kB after minification. Consider: +| - Using dynamic import() to code-split the application +| - Use build.rolldownOptions.output.codeSplitting to improve chunking: +| ]8;;https://rolldown.rs/reference/OutputOptions.codeSplittinghttps://rolldown.rs/reference/OutputOptions.codeSplitting]8;; +| - Adjust chunk size limit for this warning via +| build.chunkSizeWarningLimit. +| Vite ✓ built in 3.55s +| +! Vite [PLUGIN_TIMINGS] JavaScript callbacks ran for 3.0s of this 3.5s +| build (86%). +| The slowest callbacks, timed inside each callback (the wait before a +| callback starts is excluded, the time it awaits is included): +| - plugin storybook:react-docgen-plugin transform (60%, 2.1s, 3102 +| calls) +| Additional callback time came from the callbacks below and from +| callbacks under 1s. +| 3 callbacks are listed without a time. Their calls overlapped, so the +| time inside one call includes work from other calls. To find their +| cost, profile the build with `node --cpu-prof`: +| - plugin vite:asset load (31 calls) +| - plugin @tailwindcss/vite:generate:build transform (19 calls) +| - plugin vite:css transform (19 calls) +| See ]8;;https://rolldown.rs/reference/InputOptions.checks#bundlertimingshttps://rolldown.rs/reference/InputOptions.checks#bundlertimings]8;; +| for more details. + +| +o Output directory: D:/디자인시스템/HMDesign-SW/storybook-static +| +— Storybook build completed successfully diff --git a/docs/sw/storybook-overview-qa/sw-build.txt b/docs/sw/storybook-overview-qa/sw-build.txt new file mode 100644 index 0000000..c043564 --- /dev/null +++ b/docs/sw/storybook-overview-qa/sw-build.txt @@ -0,0 +1,17 @@ + +> hm-design-system-poc@0.1.0 build:sw +> npm run build -w @hm-design/sw + + +> @hm-design/sw@0.1.0 build +> node build.mjs + +vite v8.3.0 building client environment for production... +transforming... +✓ 69 modules transformed. +rendering chunks... +computing gzip size... +dist/styles.css 100.39 kB │ gzip: 23.57 kB +dist/index.js 712.25 kB │ gzip: 337.98 kB + +✓ built in 131ms diff --git a/docs/sw/storybook-overview-qa/sw-typecheck.txt b/docs/sw/storybook-overview-qa/sw-typecheck.txt new file mode 100644 index 0000000..628ebf5 --- /dev/null +++ b/docs/sw/storybook-overview-qa/sw-typecheck.txt @@ -0,0 +1,7 @@ + +> hm-design-system-poc@0.1.0 typecheck:sw +> npm run typecheck -w @hm-design/sw + + +> @hm-design/sw@0.1.0 typecheck +> tsc -p tsconfig.json diff --git a/docs/sw/storybook-overview-qa/validation-summary.json b/docs/sw/storybook-overview-qa/validation-summary.json new file mode 100644 index 0000000..ebb0839 --- /dev/null +++ b/docs/sw/storybook-overview-qa/validation-summary.json @@ -0,0 +1,58 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "scope": "STORYBOOK_ONLY", + "storybookCount": { + "before": 28, + "after": 28 + }, + "chrome": { + "checks": 53, + "status": "PASS" + }, + "overlays": { + "checks": 19, + "status": "PASS" + }, + "firefox": { + "checks": 9, + "status": "PASS", + "version": "158.0", + "infrastructureWarnings": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:8191/sb-common-assets/nunito-sans-regular.woff2" + ] + }, + "commands": [ + { + "command": "npm.cmd run typecheck:sw", + "status": "PASS" + }, + { + "command": "npm.cmd exec -- tsc -p tsconfig.app.json --noEmit", + "status": "PASS" + }, + { + "command": "npm.cmd run build:sw", + "status": "PASS", + "distIndexUnchanged": true + }, + { + "command": "npm.cmd exec -- storybook build -o storybook-static --disable-telemetry", + "status": "PASS" + } + ], + "sourceSha256": { + "src/sw/sw-header.stories.tsx": "a2d81948871ed52821ab3fe821033c723c8e7ff38f562fa942bfd71d9a5d6e67", + "src/sw/sw-header-overview.tsx": "74a7c032fa11966147f6ab16837cc523f82012502a6de9fec59930477de721df", + "src/sw/sw-stories.css": "462e2314756a86e74e385f92fed1542e4a146f932617a9e7d860183041a28259" + }, + "unchangedStoryDeclarations": 27, + "originalStoryStylesPreserved": true, + "productionPackageSourceUnchanged": true, + "notVerified": [ + "Full interaction regression of the other 27 Stories", + "Full Firefox dropdown/bar/gauge integration", + "CAD, file and operating-system integrations", + "Full accessibility certification" + ] +} diff --git a/docs/sw/storybook-simplification-qa/popup-property-panel-compare.png b/docs/sw/storybook-simplification-qa/popup-property-panel-compare.png new file mode 100644 index 0000000..b1e83a8 Binary files /dev/null and b/docs/sw/storybook-simplification-qa/popup-property-panel-compare.png differ diff --git a/docs/sw/storybook-simplification-qa/result.json b/docs/sw/storybook-simplification-qa/result.json new file mode 100644 index 0000000..e5e99b6 --- /dev/null +++ b/docs/sw/storybook-simplification-qa/result.json @@ -0,0 +1,71 @@ +[ + { + "n": "direct URL render: 42 SW Stories, no error display / page error", + "ok": true, + "d": [] + }, + { + "n": "removed Home Menu IDs absent from index", + "ok": true + }, + { + "n": "Popup › Property Panel: four states none/all/circle/expanded at 314 × 256/361/658/754", + "ok": true, + "d": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "n": "sidebar SW order Header → Footer → Popup → Viewer → Theme", + "ok": true, + "d": [ + "Header", + "Footer", + "Popup", + "Viewer", + "Theme" + ] + }, + { + "n": "verification Stories not in sidebar", + "ok": true, + "d": [] + }, + { + "n": "Popup children order: Custom Content, Multiple Popups, Property Panel", + "ok": true, + "d": [ + "sw-popup--custom-content", + "sw-popup--multiple-popups", + "sw-header--property-panel-compare" + ] + }, + { + "n": "Property Panel listed once (under Popup only)", + "ok": true + }, + { + "n": "sidebar link opens moved Story with same ID", + "ok": true, + "d": "http://127.0.0.1:4479/?path=/story/sw-header--property-panel-compare" + } +] \ No newline at end of file diff --git a/docs/sw/storybook-simplification-qa/sidebar.json b/docs/sw/storybook-simplification-qa/sidebar.json new file mode 100644 index 0000000..4c4e246 --- /dev/null +++ b/docs/sw/storybook-simplification-qa/sidebar.json @@ -0,0 +1,182 @@ +[ + [ + "sw-header", + "component", + "Header" + ], + [ + "sw-header--composed-controls", + "story", + "Dropdown" + ], + [ + "sw-header--home-menu", + "story", + "Home Menu" + ], + [ + "sw-header--home-menu-standalone", + "story", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--document-open", + "story", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "story", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "story", + "Overview" + ], + [ + "sw-header--interactive-states", + "story", + "Interactive States" + ], + [ + "sw-header--logo-slot", + "story", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "story", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "story", + "Responsive More" + ], + [ + "sw-footer", + "component", + "Footer" + ], + [ + "sw-footer--default", + "story", + "기본 Footer" + ], + [ + "sw-footer--full-footer", + "story", + "전체 Footer · 실제 조합" + ], + [ + "sw-footer--tool-groups", + "story", + "도구 그룹별 표시" + ], + [ + "sw-footer--states", + "story", + "Hover / Active / Selected / Disabled" + ], + [ + "sw-footer--custom-content", + "story", + "도구 및 메뉴 변경 예제" + ], + [ + "sw-footer--responsive", + "story", + "화면 폭 변화" + ], + [ + "sw-footer--parts", + "story", + "개별 부품 (조합용)" + ], + [ + "sw-popup", + "component", + "Popup" + ], + [ + "sw-popup--custom-content", + "story", + "Custom Content" + ], + [ + "sw-popup--multiple-popups", + "story", + "Multiple Popups" + ], + [ + "sw-header--property-panel-compare", + "story", + "Property Panel · 4개 비교" + ], + [ + "sw-viewer", + "component", + "Viewer" + ], + [ + "sw-viewer--viewer-header", + "story", + "Viewer Header" + ], + [ + "sw-viewer--menu-groups", + "story", + "Menu Groups" + ], + [ + "sw-viewer--states", + "story", + "Item States" + ], + [ + "sw-viewer--dropdowns", + "story", + "Header + Dropdown" + ], + [ + "sw-viewer--settings-panel", + "story", + "Settings Popup" + ], + [ + "sw-viewer--content-variants", + "story", + "Popup Content Variants" + ], + [ + "sw-viewer--variable-size", + "story", + "Variable Size Popups" + ], + [ + "sw-viewer--responsive", + "story", + "Responsive Widths" + ], + [ + "sw-viewer--compare-with-sw-header", + "story", + "SWHeader vs Viewer Header" + ], + [ + "sw-viewer--logo", + "story", + "Logo" + ], + [ + "sw-theme", + "component", + "Theme" + ], + [ + "sw-theme--theme-inheritance", + "story", + "Theme Inheritance" + ] +] \ No newline at end of file diff --git a/docs/sw/storybook-simplification-qa/sidebar.png b/docs/sw/storybook-simplification-qa/sidebar.png new file mode 100644 index 0000000..253aa50 Binary files /dev/null and b/docs/sw/storybook-simplification-qa/sidebar.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/before/full-index-before.json b/docs/sw/storybook-unused-story-removal-qa/before/full-index-before.json new file mode 100644 index 0000000..c0f98ef --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/before/full-index-before.json @@ -0,0 +1 @@ +{"v":5,"entries":{"foundation-color--all":{"type":"story","subtype":"story","id":"foundation-color--all","name":"Color","title":"Foundation/Color","importPath":"./src/foundation/color.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-typography--all":{"type":"story","subtype":"story","id":"foundation-typography--all","name":"Typography","title":"Foundation/Typography","importPath":"./src/foundation/typography.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"foundation-layout--all":{"type":"story","subtype":"story","id":"foundation-layout--all","name":"Layout","title":"Foundation/Layout","importPath":"./src/foundation/layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--all":{"type":"story","subtype":"story","id":"components-form-button--all","name":"Button","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-button--roles":{"type":"story","subtype":"story","id":"components-form-button--roles","name":"Roles","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Roles"},"components-form-button--sizes":{"type":"story","subtype":"story","id":"components-form-button--sizes","name":"Sizes","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-button--states":{"type":"story","subtype":"story","id":"components-form-button--states","name":"Brand States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-button--standard-states":{"type":"story","subtype":"story","id":"components-form-button--standard-states","name":"Standard States","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandardStates"},"components-form-button--long-label":{"type":"story","subtype":"story","id":"components-form-button--long-label","name":"Long Label","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-form-button--korean-labels":{"type":"story","subtype":"story","id":"components-form-button--korean-labels","name":"Korean Labels","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"KoreanLabels"},"components-form-button--icon-text-narrow":{"type":"story","subtype":"story","id":"components-form-button--icon-text-narrow","name":"Icon Text Narrow","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconTextNarrow"},"components-form-button--destructive":{"type":"story","subtype":"story","id":"components-form-button--destructive","name":"Destructive","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-form-button--playground":{"type":"story","subtype":"story","id":"components-form-button--playground","name":"Playground","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-button--compatibility":{"type":"story","subtype":"story","id":"components-form-button--compatibility","name":"Compatibility","title":"Components/Form/Button","importPath":"./src/components/button.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-form-input--all":{"type":"story","subtype":"story","id":"components-form-input--all","name":"Input","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-input--default":{"type":"story","subtype":"story","id":"components-form-input--default","name":"Default","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-input--focus":{"type":"story","subtype":"story","id":"components-form-input--focus","name":"Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-input--error":{"type":"story","subtype":"story","id":"components-form-input--error","name":"Error","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-input--invalid-focus":{"type":"story","subtype":"story","id":"components-form-input--invalid-focus","name":"Invalid Focus","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-input--error-message":{"type":"story","subtype":"story","id":"components-form-input--error-message","name":"Error Message","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-input--required":{"type":"story","subtype":"story","id":"components-form-input--required","name":"Required","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-input--disabled":{"type":"story","subtype":"story","id":"components-form-input--disabled","name":"Disabled","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-input--readonly":{"type":"story","subtype":"story","id":"components-form-input--readonly","name":"Readonly","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-input--sizes":{"type":"story","subtype":"story","id":"components-form-input--sizes","name":"Compare Sizes","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-input--small":{"type":"story","subtype":"story","id":"components-form-input--small","name":"Small","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Small"},"components-form-input--medium":{"type":"story","subtype":"story","id":"components-form-input--medium","name":"Medium","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-input--large":{"type":"story","subtype":"story","id":"components-form-input--large","name":"Large","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-input--playground":{"type":"story","subtype":"story","id":"components-form-input--playground","name":"Playground","title":"Components/Form/Input","importPath":"./src/components/input.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-textarea--all":{"type":"story","subtype":"story","id":"components-form-textarea--all","name":"Textarea","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-textarea--default":{"type":"story","subtype":"story","id":"components-form-textarea--default","name":"Default","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-textarea--focus":{"type":"story","subtype":"story","id":"components-form-textarea--focus","name":"Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-textarea--error":{"type":"story","subtype":"story","id":"components-form-textarea--error","name":"Error","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-textarea--invalid-focus":{"type":"story","subtype":"story","id":"components-form-textarea--invalid-focus","name":"Invalid Focus","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"InvalidFocus"},"components-form-textarea--error-message":{"type":"story","subtype":"story","id":"components-form-textarea--error-message","name":"Error Message","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ErrorMessage"},"components-form-textarea--required":{"type":"story","subtype":"story","id":"components-form-textarea--required","name":"Required","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Required"},"components-form-textarea--readonly":{"type":"story","subtype":"story","id":"components-form-textarea--readonly","name":"Readonly","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Readonly"},"components-form-textarea--disabled":{"type":"story","subtype":"story","id":"components-form-textarea--disabled","name":"Disabled","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-textarea--long-content":{"type":"story","subtype":"story","id":"components-form-textarea--long-content","name":"Long Content","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-textarea--playground":{"type":"story","subtype":"story","id":"components-form-textarea--playground","name":"Playground","title":"Components/Form/Textarea","importPath":"./src/components/textarea.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-select--all":{"type":"story","subtype":"story","id":"components-form-select--all","name":"Select","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-select--default":{"type":"story","subtype":"story","id":"components-form-select--default","name":"Default","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-form-select--invalid-focus":{"type":"story","subtype":"story","id":"components-form-select--invalid-focus","name":"Invalid Focus","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-form-select--open":{"type":"story","subtype":"story","id":"components-form-select--open","name":"Open","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-form-select--selected":{"type":"story","subtype":"story","id":"components-form-select--selected","name":"Selected","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-form-select--disabled":{"type":"story","subtype":"story","id":"components-form-select--disabled","name":"Disabled","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-select--sizes":{"type":"story","subtype":"story","id":"components-form-select--sizes","name":"Compare Sizes","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Sizes"},"components-form-select--medium":{"type":"story","subtype":"story","id":"components-form-select--medium","name":"Medium","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Medium"},"components-form-select--large":{"type":"story","subtype":"story","id":"components-form-select--large","name":"Large","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Large"},"components-form-select--long-content":{"type":"story","subtype":"story","id":"components-form-select--long-content","name":"Long Content","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-form-select--open-large-short":{"type":"story","subtype":"story","id":"components-form-select--open-large-short","name":"Open Large Short","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeShort"},"components-form-select--open-medium-long":{"type":"story","subtype":"story","id":"components-form-select--open-medium-long","name":"Open Medium Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenMediumLong"},"components-form-select--open-large-long":{"type":"story","subtype":"story","id":"components-form-select--open-large-long","name":"Open Large Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenLargeLong"},"components-form-select--open-top":{"type":"story","subtype":"story","id":"components-form-select--open-top","name":"Open Top","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-form-select--open-top-long":{"type":"story","subtype":"story","id":"components-form-select--open-top-long","name":"Open Top Long","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTopLong"},"components-form-select--list-size-comparison":{"type":"story","subtype":"story","id":"components-form-select--list-size-comparison","name":"Medium Trigger / List Size Comparison","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ListSizeComparison"},"components-form-select--scroll":{"type":"story","subtype":"story","id":"components-form-select--scroll","name":"Scroll","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"components-form-select--playground":{"type":"story","subtype":"story","id":"components-form-select--playground","name":"Playground","title":"Components/Form/Select","importPath":"./src/components/select.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-checkbox--all":{"type":"story","subtype":"story","id":"components-form-checkbox--all","name":"Checkbox","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-checkbox--unchecked":{"type":"story","subtype":"story","id":"components-form-checkbox--unchecked","name":"Unchecked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Unchecked"},"components-form-checkbox--checked":{"type":"story","subtype":"story","id":"components-form-checkbox--checked","name":"Checked","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Checked"},"components-form-checkbox--indeterminate":{"type":"story","subtype":"story","id":"components-form-checkbox--indeterminate","name":"Indeterminate","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Indeterminate"},"components-form-checkbox--disabled":{"type":"story","subtype":"story","id":"components-form-checkbox--disabled","name":"Disabled","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-checkbox--error":{"type":"story","subtype":"story","id":"components-form-checkbox--error","name":"Error","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-checkbox--playground":{"type":"story","subtype":"story","id":"components-form-checkbox--playground","name":"Playground","title":"Components/Form/Checkbox","importPath":"./src/components/checkbox.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-form-radio-group--all":{"type":"story","subtype":"story","id":"components-form-radio-group--all","name":"Radio Group","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-radio-group--vertical":{"type":"story","subtype":"story","id":"components-form-radio-group--vertical","name":"Vertical","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-form-radio-group--horizontal":{"type":"story","subtype":"story","id":"components-form-radio-group--horizontal","name":"Horizontal","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-form-radio-group--disabled":{"type":"story","subtype":"story","id":"components-form-radio-group--disabled","name":"Disabled","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-radio-group--error":{"type":"story","subtype":"story","id":"components-form-radio-group--error","name":"Error","title":"Components/Form/Radio Group","importPath":"./src/components/radio-group.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Error"},"components-form-switch--all":{"type":"story","subtype":"story","id":"components-form-switch--all","name":"Switch","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","play-fn"],"exportName":"All"},"components-form-switch--off":{"type":"story","subtype":"story","id":"components-form-switch--off","name":"Off","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Off"},"components-form-switch--on":{"type":"story","subtype":"story","id":"components-form-switch--on","name":"On","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"On"},"components-form-switch--disabled":{"type":"story","subtype":"story","id":"components-form-switch--disabled","name":"Disabled","title":"Components/Form/Switch","importPath":"./src/components/switch.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-form-slider--all":{"type":"story","subtype":"story","id":"components-form-slider--all","name":"Slider","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-slider--single-value":{"type":"story","subtype":"story","id":"components-form-slider--single-value","name":"Single","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SingleValue"},"components-form-slider--range-value":{"type":"story","subtype":"story","id":"components-form-slider--range-value","name":"Range","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RangeValue"},"components-form-slider--disabled-slider":{"type":"story","subtype":"story","id":"components-form-slider--disabled-slider","name":"Disabled","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledSlider"},"components-form-slider--focus":{"type":"story","subtype":"story","id":"components-form-slider--focus","name":"Focus","title":"Components/Form/Slider","importPath":"./src/components/slider.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-form-toggle--all":{"type":"story","subtype":"story","id":"components-form-toggle--all","name":"Toggle","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle--states":{"type":"story","subtype":"story","id":"components-form-toggle--states","name":"States","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"States"},"components-form-toggle--icon-only":{"type":"story","subtype":"story","id":"components-form-toggle--icon-only","name":"Icon Only","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IconOnly"},"components-form-toggle--disabled-toggle":{"type":"story","subtype":"story","id":"components-form-toggle--disabled-toggle","name":"Disabled","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DisabledToggle"},"components-form-toggle--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle","importPath":"./src/components/toggle.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-toggle-group--all":{"type":"story","subtype":"story","id":"components-form-toggle-group--all","name":"Toggle Group","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-form-toggle-group--single-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--single-selection","name":"Single","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-form-toggle-group--multiple-selection":{"type":"story","subtype":"story","id":"components-form-toggle-group--multiple-selection","name":"Multiple","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"MultipleSelection"},"components-form-toggle-group--vertical-group":{"type":"story","subtype":"story","id":"components-form-toggle-group--vertical-group","name":"Vertical","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"VerticalGroup"},"components-form-toggle-group--content-nodes":{"type":"story","subtype":"story","id":"components-form-toggle-group--content-nodes","name":"Content Nodes","title":"Components/Form/Toggle Group","importPath":"./src/components/toggle-group.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ContentNodes"},"components-form-label--all":{"type":"story","subtype":"story","id":"components-form-label--all","name":"Label","title":"Components/Form/Label","importPath":"./src/components/label.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--all":{"type":"story","subtype":"story","id":"components-navigation-tabs--all","name":"Tabs","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-tabs--secondary":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary","name":"Secondary","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Secondary"},"components-navigation-tabs--selected-first":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-first","name":"Selected First","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedFirst"},"components-navigation-tabs--selected-last":{"type":"story","subtype":"story","id":"components-navigation-tabs--selected-last","name":"Selected Last","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedLast"},"components-navigation-tabs--focus":{"type":"story","subtype":"story","id":"components-navigation-tabs--focus","name":"Focus","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Focus"},"components-navigation-tabs--disabled":{"type":"story","subtype":"story","id":"components-navigation-tabs--disabled","name":"Disabled","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-navigation-tabs--overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--overflow","name":"Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-navigation-tabs--secondary-overflow":{"type":"story","subtype":"story","id":"components-navigation-tabs--secondary-overflow","name":"Secondary Overflow","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SecondaryOverflow"},"components-navigation-tabs--long-label":{"type":"story","subtype":"story","id":"components-navigation-tabs--long-label","name":"Long Label","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabel"},"components-navigation-tabs--compatibility":{"type":"story","subtype":"story","id":"components-navigation-tabs--compatibility","name":"Compatibility","title":"Components/Navigation/Tabs","importPath":"./src/components/tabs.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-navigation-breadcrumb--all":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--all","name":"Breadcrumb","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-breadcrumb--basic-3":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--basic-3","name":"Basic","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic3"},"components-navigation-breadcrumb--with-ellipsis":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--with-ellipsis","name":"Ellipsis","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithEllipsis"},"components-navigation-breadcrumb--long-path":{"type":"story","subtype":"story","id":"components-navigation-breadcrumb--long-path","name":"Long Path","title":"Components/Navigation/Breadcrumb","importPath":"./src/components/breadcrumb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongPath"},"components-navigation-pagination--all":{"type":"story","subtype":"story","id":"components-navigation-pagination--all","name":"Pagination","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-pagination--first-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--first-page","name":"First Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstPage"},"components-navigation-pagination--last-page":{"type":"story","subtype":"story","id":"components-navigation-pagination--last-page","name":"Last Page","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastPage"},"components-navigation-pagination--long-range":{"type":"story","subtype":"story","id":"components-navigation-pagination--long-range","name":"Long Range","title":"Components/Navigation/Pagination","importPath":"./src/components/pagination.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongRange"},"components-navigation-navigation-menu--all":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--all","name":"Navigation Menu","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-navigation-menu--default":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--default","name":"Default","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-navigation-navigation-menu--no-viewport":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--no-viewport","name":"No Viewport","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NoViewport"},"components-navigation-navigation-menu--indicator-alignment":{"type":"story","subtype":"story","id":"components-navigation-navigation-menu--indicator-alignment","name":"Indicator Alignment","title":"Components/Navigation/Navigation Menu","importPath":"./src/components/navigation-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"IndicatorAlignment"},"components-navigation-menubar--all":{"type":"story","subtype":"story","id":"components-navigation-menubar--all","name":"Menubar","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-navigation-menubar--trigger-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--trigger-focus","name":"Trigger Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"TriggerFocus"},"components-navigation-menubar--open-focus":{"type":"story","subtype":"story","id":"components-navigation-menubar--open-focus","name":"Open Focus","title":"Components/Navigation/Menubar","importPath":"./src/components/menubar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"OpenFocus"},"components-overlay-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-dialog--all","name":"Dialog","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dialog--open":{"type":"story","subtype":"story","id":"components-overlay-dialog--open","name":"Open","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-dialog--long-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--long-content-open","name":"Long Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContentOpen"},"components-overlay-dialog--wide-content-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--wide-content-open","name":"Wide Content","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WideContentOpen"},"components-overlay-dialog--body-scroll-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--body-scroll-open","name":"Body Scroll","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BodyScrollOpen"},"components-overlay-dialog--delete-confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-dialog--delete-confirmation-open","name":"Delete Confirmation","title":"Components/Overlay/Dialog","importPath":"./src/components/dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DeleteConfirmationOpen"},"components-overlay-alert-dialog--all":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--all","name":"Alert Dialog","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-alert-dialog--confirmation-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--confirmation-open","name":"Confirmation","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ConfirmationOpen"},"components-overlay-alert-dialog--destructive-open":{"type":"story","subtype":"story","id":"components-overlay-alert-dialog--destructive-open","name":"Destructive","title":"Components/Overlay/Alert Dialog","importPath":"./src/components/alert-dialog.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DestructiveOpen"},"components-overlay-sheet--all":{"type":"story","subtype":"story","id":"components-overlay-sheet--all","name":"Sheet","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-sheet--right":{"type":"story","subtype":"story","id":"components-overlay-sheet--right","name":"Right","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Right"},"components-overlay-sheet--left":{"type":"story","subtype":"story","id":"components-overlay-sheet--left","name":"Left","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Left"},"components-overlay-sheet--top":{"type":"story","subtype":"story","id":"components-overlay-sheet--top","name":"Top","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Top"},"components-overlay-sheet--bottom":{"type":"story","subtype":"story","id":"components-overlay-sheet--bottom","name":"Bottom","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Bottom"},"components-overlay-sheet--form":{"type":"story","subtype":"story","id":"components-overlay-sheet--form","name":"Form","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-sheet--long-content":{"type":"story","subtype":"story","id":"components-overlay-sheet--long-content","name":"Long Content","title":"Components/Overlay/Sheet","importPath":"./src/components/sheet.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-drawer--all":{"type":"story","subtype":"story","id":"components-overlay-drawer--all","name":"Drawer","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-drawer--open":{"type":"story","subtype":"story","id":"components-overlay-drawer--open","name":"Open","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-drawer--form":{"type":"story","subtype":"story","id":"components-overlay-drawer--form","name":"Form","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Form"},"components-overlay-drawer--long-content":{"type":"story","subtype":"story","id":"components-overlay-drawer--long-content","name":"Long Content","title":"Components/Overlay/Drawer","importPath":"./src/components/drawer.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-overlay-dropdown-menu--all":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--all","name":"Dropdown Menu","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-dropdown-menu--open":{"type":"story","subtype":"story","id":"components-overlay-dropdown-menu--open","name":"Open","title":"Components/Overlay/Dropdown Menu","importPath":"./src/components/dropdown-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-context-menu--all":{"type":"story","subtype":"story","id":"components-overlay-context-menu--all","name":"Context Menu","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-context-menu--open":{"type":"story","subtype":"story","id":"components-overlay-context-menu--open","name":"Open","title":"Components/Overlay/Context Menu","importPath":"./src/components/context-menu.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Open"},"components-overlay-popover--all":{"type":"story","subtype":"story","id":"components-overlay-popover--all","name":"Popover","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-popover--open":{"type":"story","subtype":"story","id":"components-overlay-popover--open","name":"Open","title":"Components/Overlay/Popover","importPath":"./src/components/popover.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-tooltip--all":{"type":"story","subtype":"story","id":"components-overlay-tooltip--all","name":"Tooltip","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-tooltip--open":{"type":"story","subtype":"story","id":"components-overlay-tooltip--open","name":"Open","title":"Components/Overlay/Tooltip","importPath":"./src/components/tooltip.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-overlay-hover-card--all":{"type":"story","subtype":"story","id":"components-overlay-hover-card--all","name":"Hover Card","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-overlay-hover-card--open":{"type":"story","subtype":"story","id":"components-overlay-hover-card--open","name":"Open","title":"Components/Overlay/Hover Card","importPath":"./src/components/hover-card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-data-display-card--all":{"type":"story","subtype":"story","id":"components-data-display-card--all","name":"Card","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-card--surfaces":{"type":"story","subtype":"story","id":"components-data-display-card--surfaces","name":"Surfaces","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Surfaces"},"components-data-display-card--action":{"type":"story","subtype":"story","id":"components-data-display-card--action","name":"Action","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Action"},"components-data-display-card--compatibility":{"type":"story","subtype":"story","id":"components-data-display-card--compatibility","name":"Compatibility","title":"Components/Data & Display/Card","importPath":"./src/components/card.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Compatibility"},"components-data-display-table--all":{"type":"story","subtype":"story","id":"components-data-display-table--all","name":"Table","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-table--basic":{"type":"story","subtype":"story","id":"components-data-display-table--basic","name":"Basic","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Basic"},"components-data-display-table--selected":{"type":"story","subtype":"story","id":"components-data-display-table--selected","name":"Selected","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"components-data-display-table--long-text":{"type":"story","subtype":"story","id":"components-data-display-table--long-text","name":"Long Text","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongText"},"components-data-display-table--overflow":{"type":"story","subtype":"story","id":"components-data-display-table--overflow","name":"Horizontal Overflow","title":"Components/Data & Display/Table","importPath":"./src/components/table.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Overflow"},"components-data-display-badge--all":{"type":"story","subtype":"story","id":"components-data-display-badge--all","name":"Badge","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-badge--variants":{"type":"story","subtype":"story","id":"components-data-display-badge--variants","name":"Variants","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Variants"},"components-data-display-badge--playground":{"type":"story","subtype":"story","id":"components-data-display-badge--playground","name":"Playground","title":"Components/Data & Display/Badge","importPath":"./src/components/badge.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"components-data-display-avatar--all":{"type":"story","subtype":"story","id":"components-data-display-avatar--all","name":"Avatar","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-avatar--image":{"type":"story","subtype":"story","id":"components-data-display-avatar--image","name":"Image","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Image"},"components-data-display-avatar--fallback-error":{"type":"story","subtype":"story","id":"components-data-display-avatar--fallback-error","name":"Fallback","title":"Components/Data & Display/Avatar","importPath":"./src/components/avatar.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FallbackError"},"components-data-display-progress--all":{"type":"story","subtype":"story","id":"components-data-display-progress--all","name":"Progress","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-progress--zero":{"type":"story","subtype":"story","id":"components-data-display-progress--zero","name":"Zero","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Zero"},"components-data-display-progress--middle":{"type":"story","subtype":"story","id":"components-data-display-progress--middle","name":"Middle","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Middle"},"components-data-display-progress--full":{"type":"story","subtype":"story","id":"components-data-display-progress--full","name":"Full","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Full"},"components-data-display-progress--non-default-max":{"type":"story","subtype":"story","id":"components-data-display-progress--non-default-max","name":"Non Default Max","title":"Components/Data & Display/Progress","importPath":"./src/components/progress.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification","play-fn"],"exportName":"NonDefaultMax"},"components-data-display-skeleton--all":{"type":"story","subtype":"story","id":"components-data-display-skeleton--all","name":"Skeleton","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-skeleton--text":{"type":"story","subtype":"story","id":"components-data-display-skeleton--text","name":"Text","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Text"},"components-data-display-skeleton--card-list":{"type":"story","subtype":"story","id":"components-data-display-skeleton--card-list","name":"Card List","title":"Components/Data & Display/Skeleton","importPath":"./src/components/skeleton.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CardList"},"components-data-display-separator--all":{"type":"story","subtype":"story","id":"components-data-display-separator--all","name":"Separator","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-separator--horizontal":{"type":"story","subtype":"story","id":"components-data-display-separator--horizontal","name":"Horizontal","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Horizontal"},"components-data-display-separator--vertical":{"type":"story","subtype":"story","id":"components-data-display-separator--vertical","name":"Vertical","title":"Components/Data & Display/Separator","importPath":"./src/components/separator.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Vertical"},"components-data-display-aspect-ratio--all":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--all","name":"Aspect Ratio","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-aspect-ratio--wide":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--wide","name":"16:9","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Wide"},"components-data-display-aspect-ratio--square":{"type":"story","subtype":"story","id":"components-data-display-aspect-ratio--square","name":"1:1","title":"Components/Data & Display/Aspect Ratio","importPath":"./src/components/aspect-ratio.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Square"},"components-data-display-carousel--all":{"type":"story","subtype":"story","id":"components-data-display-carousel--all","name":"Carousel","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-carousel--basic-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--basic-carousel","name":"Basic","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"BasicCarousel"},"components-data-display-carousel--multiple-items":{"type":"story","subtype":"story","id":"components-data-display-carousel--multiple-items","name":"Multiple Items","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MultipleItems"},"components-data-display-carousel--loop-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--loop-carousel","name":"Loop","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LoopCarousel"},"components-data-display-carousel--vertical-carousel":{"type":"story","subtype":"story","id":"components-data-display-carousel--vertical-carousel","name":"Vertical","title":"Components/Data & Display/Carousel","importPath":"./src/components/carousel.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalCarousel"},"components-data-display-scroll-area--all":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--all","name":"Scroll Area","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-data-display-scroll-area--vertical-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--vertical-scroll","name":"Vertical","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalScroll"},"components-data-display-scroll-area--horizontal-scroll":{"type":"story","subtype":"story","id":"components-data-display-scroll-area--horizontal-scroll","name":"Horizontal","title":"Components/Data & Display/Scroll Area","importPath":"./src/components/scroll-area.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalScroll"},"components-disclosure-accordion--all":{"type":"story","subtype":"story","id":"components-disclosure-accordion--all","name":"Accordion","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-accordion--single":{"type":"story","subtype":"story","id":"components-disclosure-accordion--single","name":"Single","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Single"},"components-disclosure-accordion--multiple":{"type":"story","subtype":"story","id":"components-disclosure-accordion--multiple","name":"Multiple","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Multiple"},"components-disclosure-accordion--disabled":{"type":"story","subtype":"story","id":"components-disclosure-accordion--disabled","name":"Disabled","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-accordion--long-content":{"type":"story","subtype":"story","id":"components-disclosure-accordion--long-content","name":"Long Content","title":"Components/Disclosure/Accordion","importPath":"./src/components/accordion.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-collapsible--all":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--all","name":"Collapsible","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-collapsible--closed":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--closed","name":"Closed","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Closed"},"components-disclosure-collapsible--open":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--open","name":"Open","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Open"},"components-disclosure-collapsible--disabled":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--disabled","name":"Disabled","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Disabled"},"components-disclosure-collapsible--long-content":{"type":"story","subtype":"story","id":"components-disclosure-collapsible--long-content","name":"Long Content","title":"Components/Disclosure/Collapsible","importPath":"./src/components/collapsible.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"components-disclosure-resizable--all":{"type":"story","subtype":"story","id":"components-disclosure-resizable--all","name":"Resizable","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-disclosure-resizable--horizontal-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--horizontal-layout","name":"Horizontal","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"HorizontalLayout"},"components-disclosure-resizable--vertical-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--vertical-layout","name":"Vertical","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"VerticalLayout"},"components-disclosure-resizable--min-max-layout":{"type":"story","subtype":"story","id":"components-disclosure-resizable--min-max-layout","name":"Min Max","title":"Components/Disclosure/Resizable","importPath":"./src/components/resizable.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MinMaxLayout"},"components-search-date-command--all":{"type":"story","subtype":"story","id":"components-search-date-command--all","name":"Command","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-command--search":{"type":"story","subtype":"story","id":"components-search-date-command--search","name":"Search","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Search"},"components-search-date-command--grouped-list":{"type":"story","subtype":"story","id":"components-search-date-command--grouped-list","name":"Grouped","title":"Components/Search & Date/Command","importPath":"./src/components/command.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"GroupedList"},"components-search-date-combobox--all":{"type":"story","subtype":"story","id":"components-search-date-combobox--all","name":"Combobox","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-combobox--empty-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--empty-combobox","name":"Empty","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"EmptyCombobox"},"components-search-date-combobox--controlled-combobox":{"type":"story","subtype":"story","id":"components-search-date-combobox--controlled-combobox","name":"Controlled","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ControlledCombobox"},"components-search-date-combobox--long-option":{"type":"story","subtype":"story","id":"components-search-date-combobox--long-option","name":"Long Option","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongOption"},"components-search-date-combobox--open-bottom":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-bottom","name":"Open Bottom","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenBottom"},"components-search-date-combobox--open-top":{"type":"story","subtype":"story","id":"components-search-date-combobox--open-top","name":"Open Top","title":"Components/Search & Date/Combobox","importPath":"./src/components/combobox.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"OpenTop"},"components-search-date-calendar--all":{"type":"story","subtype":"story","id":"components-search-date-calendar--all","name":"Calendar","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-calendar--single-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--single-selection","name":"Single","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SingleSelection"},"components-search-date-calendar--disabled-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--disabled-selection","name":"Disabled Dates","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"DisabledSelection"},"components-search-date-calendar--range-selection":{"type":"story","subtype":"story","id":"components-search-date-calendar--range-selection","name":"Range","title":"Components/Search & Date/Calendar","importPath":"./src/components/calendar.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"RangeSelection"},"components-search-date-date-picker--all":{"type":"story","subtype":"story","id":"components-search-date-date-picker--all","name":"Date Picker","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-search-date-date-picker--empty-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--empty-picker","name":"Empty","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EmptyPicker"},"components-search-date-date-picker--invalid-focus":{"type":"story","subtype":"story","id":"components-search-date-date-picker--invalid-focus","name":"Invalid Focus","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"InvalidFocus"},"components-search-date-date-picker--selected-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--selected-picker","name":"Selected","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedPicker"},"components-search-date-date-picker--controlled-picker":{"type":"story","subtype":"story","id":"components-search-date-date-picker--controlled-picker","name":"Controlled","title":"Components/Search & Date/Date Picker","importPath":"./src/components/date-picker.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ControlledPicker"},"components-feedback-alert--all":{"type":"story","subtype":"story","id":"components-feedback-alert--all","name":"Alert","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"components-feedback-alert--default":{"type":"story","subtype":"story","id":"components-feedback-alert--default","name":"Default","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"components-feedback-alert--destructive":{"type":"story","subtype":"story","id":"components-feedback-alert--destructive","name":"Destructive","title":"Components/Feedback/Alert","importPath":"./src/components/alert.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Destructive"},"components-feedback-sonner--all":{"type":"story","subtype":"story","id":"components-feedback-sonner--all","name":"Sonner","title":"Components/Feedback/Sonner","importPath":"./src/components/sonner.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--all":{"type":"story","subtype":"story","id":"patterns-data-data-table--all","name":"Data Table","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-data-data-table--with-filter-bar-story":{"type":"story","subtype":"story","id":"patterns-data-data-table--with-filter-bar-story","name":"With Filter Bar","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithFilterBarStory"},"patterns-data-data-table--loading":{"type":"story","subtype":"story","id":"patterns-data-data-table--loading","name":"Loading","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-data-data-table--empty":{"type":"story","subtype":"story","id":"patterns-data-data-table--empty","name":"Empty","title":"Patterns/Data/Data Table","importPath":"./src/patterns/data-table.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-data-filter-bar--all":{"type":"story","subtype":"story","id":"patterns-data-filter-bar--all","name":"Filter Bar","title":"Patterns/Data/Filter Bar","importPath":"./src/patterns/filter-bar.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--all":{"type":"story","subtype":"story","id":"patterns-layout-gnb--all","name":"GNB","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-gnb--default":{"type":"story","subtype":"story","id":"patterns-layout-gnb--default","name":"Default","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-gnb--sticky":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sticky","name":"Sticky","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sticky"},"patterns-layout-gnb--sidebar":{"type":"story","subtype":"story","id":"patterns-layout-gnb--sidebar","name":"GNB Sidebar","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Sidebar"},"patterns-layout-gnb--navigation-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--navigation-menu-open","name":"Navigation Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"NavigationMenuOpen"},"patterns-layout-gnb--short-depth-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--short-depth-open","name":"Short Depth Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ShortDepthOpen"},"patterns-layout-gnb--right-edge-long-depth":{"type":"story","subtype":"story","id":"patterns-layout-gnb--right-edge-long-depth","name":"Right Edge Long Depth","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"RightEdgeLongDepth"},"patterns-layout-gnb--first-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-short","name":"First Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthShort"},"patterns-layout-gnb--first-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--first-depth-long","name":"First Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"FirstDepthLong"},"patterns-layout-gnb--middle-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-short","name":"Middle Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthShort"},"patterns-layout-gnb--middle-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--middle-depth-long","name":"Middle Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MiddleDepthLong"},"patterns-layout-gnb--last-depth-short":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-short","name":"Last Depth Short","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthShort"},"patterns-layout-gnb--last-depth-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--last-depth-long","name":"Last Depth Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LastDepthLong"},"patterns-layout-gnb--edge-first-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-first-long","name":"Edge First Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeFirstLong"},"patterns-layout-gnb--edge-last-long":{"type":"story","subtype":"story","id":"patterns-layout-gnb--edge-last-long","name":"Edge Last Long","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"EdgeLastLong"},"patterns-layout-gnb--user-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--user-menu-open","name":"User Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"UserMenuOpen"},"patterns-layout-gnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-gnb--long-labels","name":"Long Labels","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-gnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-gnb--with-logo","name":"With Logo","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-gnb--utilities":{"type":"story","subtype":"story","id":"patterns-layout-gnb--utilities","name":"Utilities","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Utilities"},"patterns-layout-gnb--mobile":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile","name":"Mobile","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Mobile"},"patterns-layout-gnb--mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-gnb--mobile-menu-open","name":"Mobile Menu Open","title":"Patterns/Layout/GNB","importPath":"./src/patterns/gnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"MobileMenuOpen"},"patterns-layout-lnb--all":{"type":"story","subtype":"story","id":"patterns-layout-lnb--all","name":"LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-lnb--default":{"type":"story","subtype":"story","id":"patterns-layout-lnb--default","name":"Default","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Default"},"patterns-layout-lnb--selected":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected","name":"Selected","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Selected"},"patterns-layout-lnb--expanded":{"type":"story","subtype":"story","id":"patterns-layout-lnb--expanded","name":"Expanded","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Expanded"},"patterns-layout-lnb--selected-child":{"type":"story","subtype":"story","id":"patterns-layout-lnb--selected-child","name":"Selected Child","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"SelectedChild"},"patterns-layout-lnb--collapsed-with-selection":{"type":"story","subtype":"story","id":"patterns-layout-lnb--collapsed-with-selection","name":"Collapsed With Selection","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"CollapsedWithSelection"},"patterns-layout-lnb--with-logo":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-logo","name":"With Logo","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithLogo"},"patterns-layout-lnb--long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--long-labels","name":"Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LongLabels"},"patterns-layout-lnb--scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--scroll","name":"Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Scroll"},"patterns-layout-lnb--third-level":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level","name":"Third Level","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-lnb--third-level-long-labels":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-long-labels","name":"Third Level Long Labels","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelLongLabels"},"patterns-layout-lnb--third-level-scroll":{"type":"story","subtype":"story","id":"patterns-layout-lnb--third-level-scroll","name":"Third Level Scroll","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevelScroll"},"patterns-layout-lnb--with-gnb":{"type":"story","subtype":"story","id":"patterns-layout-lnb--with-gnb","name":"VERIFICATION ONLY · GNB + LNB","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"WithGNB"},"patterns-layout-lnb--standalone-desktop":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-desktop","name":"LNB Standalone Desktop","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneDesktop"},"patterns-layout-lnb--lnb-profile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--lnb-profile-menu-open","name":"LNB Profile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"LNBProfileMenuOpen"},"patterns-layout-lnb--standalone-mobile":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile","name":"LNB Standalone Mobile","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobile"},"patterns-layout-lnb--standalone-mobile-menu-open":{"type":"story","subtype":"story","id":"patterns-layout-lnb--standalone-mobile-menu-open","name":"LNB Standalone Mobile Menu Open","title":"Patterns/Layout/LNB","importPath":"./src/patterns/lnb.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"StandaloneMobileMenuOpen"},"patterns-layout-loading-screen--all":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--all","name":"Loading Screen","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-loading-screen--inline":{"type":"story","subtype":"story","id":"patterns-layout-loading-screen--inline","name":"Inline","title":"Patterns/Layout/Loading Screen","importPath":"./src/patterns/loading-screen.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Inline"},"patterns-layout-dashboard-layout--all":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--all","name":"Dashboard","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest"],"exportName":"All"},"patterns-layout-dashboard-layout--with-sidebar":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--with-sidebar","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"WithSidebar"},"patterns-layout-dashboard-layout--third-level":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--third-level","name":"VERIFICATION ONLY — 운영 사용 금지 · Third Level","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"ThirdLevel"},"patterns-layout-dashboard-layout--sidebar-only":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--sidebar-only","name":"VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"SidebarOnly"},"patterns-layout-dashboard-layout--long-content":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--long-content","name":"VERIFICATION ONLY — 운영 사용 금지 · Long Content","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"LongContent"},"patterns-layout-dashboard-layout--loading":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--loading","name":"Loading","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Loading"},"patterns-layout-dashboard-layout--empty":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--empty","name":"Empty","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Empty"},"patterns-layout-dashboard-layout--framed":{"type":"story","subtype":"story","id":"patterns-layout-dashboard-layout--framed","name":"VERIFICATION ONLY — 운영 사용 금지 · Framed","title":"Patterns/Layout/Dashboard","importPath":"./src/patterns/dashboard-layout.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Framed"},"patterns-layout-page-header--all":{"type":"story","subtype":"story","id":"patterns-layout-page-header--all","name":"Page Header","title":"Patterns/Layout/Page Header","importPath":"./src/patterns/page-header.stories.tsx","componentPath":"./packages/ui/dist/index.js","tags":["dev","test","manifest"],"exportName":"All"},"orgchart--logo-personnel-summary":{"type":"story","subtype":"story","id":"orgchart--logo-personnel-summary","name":"Overview","title":"OrgChart/Overview","importPath":"./src/org-chart/org-chart-p1.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"LogoPersonnelSummary"},"orgchart--department-colors":{"type":"story","subtype":"story","id":"orgchart--department-colors","name":"Department Colors","title":"OrgChart/Department Colors","importPath":"./src/org-chart/org-chart-department-colors.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"DepartmentColors"},"orgchart--full-composition":{"type":"story","subtype":"story","id":"orgchart--full-composition","name":"Full Composition","title":"OrgChart/Full Composition","importPath":"./src/org-chart/org-chart-full-composition.stories.tsx","componentPath":"./src/org-chart/org-chart-page-previews.tsx","tags":["dev","test","manifest"],"exportName":"FullComposition"},"orgchart--expanded-org-chart":{"type":"story","subtype":"story","id":"orgchart--expanded-org-chart","name":"Expanded OrgChart","title":"OrgChart/Expanded OrgChart","importPath":"./src/org-chart/org-chart-expanded.stories.tsx","tags":["dev","test","manifest"],"exportName":"ExpandedOrgChart"},"orgchart-components-cards--business-management":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-management","name":"Business Management","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessManagement"},"orgchart-components-cards--business-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--business-planning","name":"Business Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"BusinessPlanning"},"orgchart-components-cards--talent-growth":{"type":"story","subtype":"story","id":"orgchart-components-cards--talent-growth","name":"Talent Growth","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TalentGrowth"},"orgchart-components-cards--integrated-system":{"type":"story","subtype":"story","id":"orgchart-components-cards--integrated-system","name":"Integrated System","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"IntegratedSystem"},"orgchart-components-cards--design-planning":{"type":"story","subtype":"story","id":"orgchart-components-cards--design-planning","name":"Design Planning","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"DesignPlanning"},"orgchart-components-cards--solution-sales":{"type":"story","subtype":"story","id":"orgchart-components-cards--solution-sales","name":"Solution Sales","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"SolutionSales"},"orgchart-components-cards--top-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--top-leader","name":"최상위 리더","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"TopLeader"},"orgchart-components-cards--organization-leader":{"type":"story","subtype":"story","id":"orgchart-components-cards--organization-leader","name":"조직장","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"OrganizationLeader"},"orgchart-components-cards--employee":{"type":"story","subtype":"story","id":"orgchart-components-cards--employee","name":"일반 직원","title":"OrgChart/Components/Cards","importPath":"./src/org-chart/org-chart-cards.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Employee"},"orgchart--logo":{"type":"story","subtype":"story","id":"orgchart--logo","name":"Logo","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"Logo"},"orgchart--position-summary":{"type":"story","subtype":"story","id":"orgchart--position-summary","name":"Position Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Verification/Overview","importPath":"./src/org-chart/org-chart-overview-internal.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--position-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--position-summary","name":"Position Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"PositionSummary"},"orgchart-components-summaries--affiliation-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--affiliation-summary","name":"Affiliation Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"AffiliationSummary"},"orgchart-components-summaries--status-summary":{"type":"story","subtype":"story","id":"orgchart-components-summaries--status-summary","name":"Status Summary","title":"OrgChart/Components/Summaries","importPath":"./src/org-chart/org-chart-summary.stories.tsx","componentPath":"./src/org-chart/core-component-preview.tsx","tags":["dev","test","manifest","internal"],"exportName":"StatusSummary"},"orgchart-content--basic-organization":{"type":"story","subtype":"story","id":"orgchart-content--basic-organization","name":"Basic Organization","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"BasicOrganization"},"orgchart-content--organization-hierarchy":{"type":"story","subtype":"story","id":"orgchart-content--organization-hierarchy","name":"Organization Hierarchy","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationHierarchy"},"orgchart-content--employee-cards":{"type":"story","subtype":"story","id":"orgchart-content--employee-cards","name":"Employee Cards","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"EmployeeCards"},"orgchart-content--organization-summary":{"type":"story","subtype":"story","id":"orgchart-content--organization-summary","name":"Organization Summary","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"OrganizationSummary"},"orgchart-content--json-data-update":{"type":"story","subtype":"story","id":"orgchart-content--json-data-update","name":"JSON Data Update","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"JSONDataUpdate"},"orgchart-content--loading-empty-error":{"type":"story","subtype":"story","id":"orgchart-content--loading-empty-error","name":"Loading / Empty / Error","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"LoadingEmptyError"},"orgchart-content--responsive-container":{"type":"story","subtype":"story","id":"orgchart-content--responsive-container","name":"Responsive Container","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"ResponsiveContainer"},"orgchart-content--multiple-instances":{"type":"story","subtype":"story","id":"orgchart-content--multiple-instances","name":"Multiple Instances","title":"OrgChart/Content","importPath":"./src/org-chart/org-chart.stories.tsx","componentPath":"./packages/org-chart-react/dist/index.js","tags":["dev","test","manifest","internal"],"exportName":"MultipleInstances"},"center-graphic-facility--tunnel":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel","name":"Tunnel","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Tunnel"},"center-graphic-facility--bridge":{"type":"story","subtype":"story","id":"center-graphic-facility--bridge","name":"Bridge","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Bridge"},"center-graphic-facility--intersection":{"type":"story","subtype":"story","id":"center-graphic-facility--intersection","name":"Intersection","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Intersection"},"center-graphic-facility--junction":{"type":"story","subtype":"story","id":"center-graphic-facility--junction","name":"Junction","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Junction"},"center-graphic-facility--interchange":{"type":"story","subtype":"story","id":"center-graphic-facility--interchange","name":"Interchange","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Interchange"},"center-graphic-facility--roadside":{"type":"story","subtype":"story","id":"center-graphic-facility--roadside","name":"Roadside","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Roadside"},"center-graphic-facility--linked":{"type":"story","subtype":"story","id":"center-graphic-facility--linked","name":"Linked","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Linked"},"center-graphic-facility--tunnel-playground":{"type":"story","subtype":"story","id":"center-graphic-facility--tunnel-playground","name":"직접 테스트 (터널)","title":"Center Graphic/Facility","importPath":"./src/center/center-facility.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"TunnelPlayground"},"center-graphic-information--information":{"type":"story","subtype":"story","id":"center-graphic-information--information","name":"Information","title":"Center Graphic/Information","importPath":"./src/center/center-information.stories.tsx","tags":["dev","test","manifest"],"exportName":"Information"},"center-graphic-overview--overview":{"type":"story","subtype":"story","id":"center-graphic-overview--overview","name":"Overview","title":"Center Graphic/Overview","importPath":"./src/center/center-overview.stories.tsx","tags":["dev","test","manifest"],"exportName":"Overview"},"center-graphic-spatial--spatial":{"type":"story","subtype":"story","id":"center-graphic-spatial--spatial","name":"Spatial","title":"Center Graphic/Spatial","importPath":"./src/center/center-spatial.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Spatial"},"center-graphic-title--compositions":{"type":"story","subtype":"story","id":"center-graphic-title--compositions","name":"Title","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest"],"exportName":"Compositions"},"center-graphic-title--playground":{"type":"story","subtype":"story","id":"center-graphic-title--playground","name":"Playground","title":"Center Graphic/Title","importPath":"./src/center/center-title.stories.tsx","componentPath":"./packages/center-graphic/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"Playground"},"verification-publisher-regression--consumers-regression":{"type":"story","subtype":"story","id":"verification-publisher-regression--consumers-regression","name":"Consumers Regression","title":"Verification/Publisher Regression","importPath":"./src/components/publisher-regression.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"ConsumersRegression"},"sw-header--composed-controls":{"type":"story","subtype":"story","id":"sw-header--composed-controls","name":"Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header-dropdown.stories.tsx","tags":["dev","test","manifest"],"exportName":"ComposedControls"},"sw-header--detail-buttons":{"type":"story","subtype":"story","id":"sw-header--detail-buttons","name":"Detail Buttons (Shared States)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest","verification"],"exportName":"DetailButtons"},"sw-header--overview":{"type":"story","subtype":"story","id":"sw-header--overview","name":"Overview","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Overview"},"sw-header--interactive-states":{"type":"story","subtype":"story","id":"sw-header--interactive-states","name":"Interactive States","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"InteractiveStates"},"sw-header--window-move-motion":{"type":"story","subtype":"story","id":"sw-header--window-move-motion","name":"Window Move Motion","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"WindowMoveMotion"},"sw-header--logo-slot":{"type":"story","subtype":"story","id":"sw-header--logo-slot","name":"Logo Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LogoSlot"},"sw-header--document-dropdown":{"type":"story","subtype":"story","id":"sw-header--document-dropdown","name":"Document Dropdown","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DocumentDropdown"},"sw-header--responsive-more":{"type":"story","subtype":"story","id":"sw-header--responsive-more","name":"Responsive More","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"ResponsiveMore"},"sw-header--layer-detail-input":{"type":"story","subtype":"story","id":"sw-header--layer-detail-input","name":"Layer Detail · Input","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"LayerDetailInput"},"sw-header--property-panel":{"type":"story","subtype":"story","id":"sw-header--property-panel","name":"Property Panel","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanel"},"sw-header--k-guide":{"type":"story","subtype":"story","id":"sw-header--k-guide","name":"K Guide","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"KGuide"},"sw-header--additional-hover":{"type":"story","subtype":"story","id":"sw-header--additional-hover","name":"Additional Hover","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"AdditionalHover"},"sw-header--property-bar":{"type":"story","subtype":"story","id":"sw-header--property-bar","name":"Property Bar","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyBar"},"sw-header--dynamic-controls":{"type":"story","subtype":"story","id":"sw-header--dynamic-controls","name":"Dynamic Controls","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"DynamicControls"},"sw-header--colorize":{"type":"story","subtype":"story","id":"sw-header--colorize","name":"Colorize","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Colorize"},"sw-header--composition":{"type":"story","subtype":"story","id":"sw-header--composition","name":"Composition (Visibility · Order)","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"Composition"},"sw-header--property-panel-compare":{"type":"story","subtype":"story","id":"sw-header--property-panel-compare","name":"Property Panel · 4개 비교","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyPanelCompare"},"sw-header--property-shape-slot":{"type":"story","subtype":"story","id":"sw-header--property-shape-slot","name":"Property Panel · 형상 Slot","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyShapeSlot"},"sw-header--property-fields":{"type":"story","subtype":"story","id":"sw-header--property-fields","name":"Property Panel · 필드 13개","title":"SW/Header","importPath":"./src/sw/sw-header.stories.tsx","componentPath":"./packages/sw/dist/index.js","tags":["dev","test","manifest"],"exportName":"PropertyFields"},"theme-designer-playground--editor":{"type":"story","subtype":"story","id":"theme-designer-playground--editor","name":"Designer Playground","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal"],"exportName":"Editor"},"theme-designer-playground--live-verification":{"type":"story","subtype":"story","id":"theme-designer-playground--live-verification","name":"Live Verification","title":"Theme/Designer Playground","importPath":"./src/theme/designer-theme.stories.tsx","tags":["dev","test","manifest","internal","verification","play-fn"],"exportName":"LiveVerification"},"theme-runtime-contract--comparison":{"type":"story","subtype":"story","id":"theme-runtime-contract--comparison","name":"Comparison","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Comparison"},"theme-runtime-contract--global-external":{"type":"story","subtype":"story","id":"theme-runtime-contract--global-external","name":"Global External","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"GlobalExternal"},"theme-runtime-contract--verification":{"type":"story","subtype":"story","id":"theme-runtime-contract--verification","name":"Verification","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"Verification"},"theme-runtime-contract--dashboard":{"type":"story","subtype":"story","id":"theme-runtime-contract--dashboard","name":"Dashboard","title":"Theme/Runtime Contract","importPath":"./src/theme/runtime-theme.stories.tsx","tags":["dev","test","manifest","verification"],"exportName":"Dashboard"},"theme-runtime-contract-loader--cdn-verification":{"type":"story","subtype":"story","id":"theme-runtime-contract-loader--cdn-verification","name":"Cdn Verification","title":"Theme/Runtime Contract/Loader","importPath":"./src/theme/runtime-loader.stories.tsx","tags":["dev","test","manifest","verification","play-fn"],"exportName":"CdnVerification"}}} \ No newline at end of file diff --git a/docs/sw/storybook-unused-story-removal-qa/before/story-inventory-before.json b/docs/sw/storybook-unused-story-removal-qa/before/story-inventory-before.json new file mode 100644 index 0000000..b63ee59 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/before/story-inventory-before.json @@ -0,0 +1,197 @@ +{ + "head": "c8e5fbeebc26fba92998fc5ddcd28c6c110e452d", + "total": 338, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + } + ] +} diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/after-full-index.json b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/after-full-index.json new file mode 100644 index 0000000..7aaf7d3 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/after-full-index.json @@ -0,0 +1,5143 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1280.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1280.png new file mode 100644 index 0000000..37ed59f Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1280.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1440.png new file mode 100644 index 0000000..074dc19 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-390.png new file mode 100644 index 0000000..dc36845 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-768.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-768.png new file mode 100644 index 0000000..1c567ce Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-768.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-manager.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-manager.png new file mode 100644 index 0000000..bc6a6af Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-manager.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel-390.png new file mode 100644 index 0000000..d89d661 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel.png new file mode 100644 index 0000000..cd9ea5b Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/composed-property-panel.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-1440.png new file mode 100644 index 0000000..5f45607 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-390.png new file mode 100644 index 0000000..36e8300 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-0-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-1440.png new file mode 100644 index 0000000..f3dd8c3 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-390.png new file mode 100644 index 0000000..701ea9e Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-1-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-1440.png new file mode 100644 index 0000000..29330b6 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-390.png new file mode 100644 index 0000000..9027973 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-2-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-1440.png new file mode 100644 index 0000000..fa54908 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-390.png new file mode 100644 index 0000000..9470a10 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-3-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-1440.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-1440.png new file mode 100644 index 0000000..b6dc805 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-390.png b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-390.png new file mode 100644 index 0000000..d8075e0 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/overlay-4-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/result.json b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/result.json new file mode 100644 index 0000000..b55e231 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/result.json @@ -0,0 +1,1705 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "Dropdown is one Story directly under Header with original ID, no Dropdown folder", + "status": "PASS" + }, + { + "name": "menu correction keeps all 24 IDs; only composed Story name/title change", + "status": "FAIL" + }, + { + "name": "all non-SW index entries identical", + "status": "PASS" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "FAIL" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "FAIL" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "Dropdown page contains the Composed Controls group", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 364.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 644.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 406.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 588.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 447.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 639.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 490.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 490.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 331.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 611.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 331.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 513.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 372.53125, + "w": 473.1875, + "h": 192, + "right": 474.234375, + "bottom": 564.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 326.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 606.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 326.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 508.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 386.40625, + "y": 325.890625, + "w": 473.1875, + "h": 192, + "right": 859.59375, + "bottom": 517.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 328.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 608.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 328.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 510.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 468, + "y": 327.5, + "w": 473.1875, + "h": 192, + "right": 941.1875, + "bottom": 519.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "selected layer retains original row Hover background", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "selected line retains original row Hover and preview", + "status": "PASS" + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows a single Dropdown link directly under Header, no Composed Controls submenu", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "menuCorrectionBaseCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/story-inventory.json b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/story-inventory.json new file mode 100644 index 0000000..e019ca9 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-dropdown/story-inventory.json @@ -0,0 +1,639 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/after-index.json b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/after-index.json new file mode 100644 index 0000000..1359483 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/after-index.json @@ -0,0 +1,152 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + } +] diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/before-index.json b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/chrome-result.json b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/chrome-result.json new file mode 100644 index 0000000..14763d0 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/chrome-result.json @@ -0,0 +1,656 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "24 retained Story IDs, names and tags; only approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "retained non-Overview declarations byte-identical; relocated composition separately verified", + "status": "FAIL" + }, + { + "name": "retired Dropdown IDs absent", + "status": "PASS" + }, + { + "name": "package production source untouched", + "status": "PASS" + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--composed-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ], + "status": "FAIL" +} diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/manager-story-order.json b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/manager-story-order.json new file mode 100644 index 0000000..756b232 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/manager-story-order.json @@ -0,0 +1,11 @@ +[ + "sw-header--composed-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" +] diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-expanded.png b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-expanded.png new file mode 100644 index 0000000..9afb4cf Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-expanded.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-scrolled.png b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-scrolled.png new file mode 100644 index 0000000..dc5d847 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after-scrolled.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after.png b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after.png new file mode 100644 index 0000000..8a64869 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-after.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-manager.png b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-manager.png new file mode 100644 index 0000000..83b8a9f Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-manager.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-narrow.png b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-narrow.png new file mode 100644 index 0000000..134f239 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/legacy-overview/overview-narrow.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/compare-1280-end.png b/docs/sw/storybook-unused-story-removal-qa/verify/compare-1280-end.png new file mode 100644 index 0000000..fca3565 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/compare-1280-end.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/compare-1440-end.png b/docs/sw/storybook-unused-story-removal-qa/verify/compare-1440-end.png new file mode 100644 index 0000000..d3d82b0 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/compare-1440-end.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/compare-390-end.png b/docs/sw/storybook-unused-story-removal-qa/verify/compare-390-end.png new file mode 100644 index 0000000..9fc5f41 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/compare-390-end.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/compare-768-end.png b/docs/sw/storybook-unused-story-removal-qa/verify/compare-768-end.png new file mode 100644 index 0000000..4686f20 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/compare-768-end.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1280.png b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1280.png new file mode 100644 index 0000000..71b3615 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1280.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1440.png b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1440.png new file mode 100644 index 0000000..af06cb7 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-390.png b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-390.png new file mode 100644 index 0000000..66cf027 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-768.png b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-768.png new file mode 100644 index 0000000..2a55839 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/dropdown-768.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/manager-sidebar.png b/docs/sw/storybook-unused-story-removal-qa/verify/manager-sidebar.png new file mode 100644 index 0000000..081045b Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/manager-sidebar.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/manager-story-order.json b/docs/sw/storybook-unused-story-removal-qa/verify/manager-story-order.json new file mode 100644 index 0000000..11e2001 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/verify/manager-story-order.json @@ -0,0 +1,38 @@ +[ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] +] diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/overview-1280.png b/docs/sw/storybook-unused-story-removal-qa/verify/overview-1280.png new file mode 100644 index 0000000..4fd85cb Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/overview-1280.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/overview-1440.png b/docs/sw/storybook-unused-story-removal-qa/verify/overview-1440.png new file mode 100644 index 0000000..4301028 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/overview-1440.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/overview-390.png b/docs/sw/storybook-unused-story-removal-qa/verify/overview-390.png new file mode 100644 index 0000000..caa2b39 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/overview-390.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/overview-768.png b/docs/sw/storybook-unused-story-removal-qa/verify/overview-768.png new file mode 100644 index 0000000..5eb5417 Binary files /dev/null and b/docs/sw/storybook-unused-story-removal-qa/verify/overview-768.png differ diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/result.json b/docs/sw/storybook-unused-story-removal-qa/verify/result.json new file mode 100644 index 0000000..d32fdf5 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/verify/result.json @@ -0,0 +1,1140 @@ +{ + "baseCommit": "c8e5fbeebc26fba92998fc5ddcd28c6c110e452d", + "checks": [ + { + "name": "inventory: 19 -> 10 SW Stories, 338 -> 329 total", + "status": "PASS", + "data": { + "before": [ + 338, + 19 + ], + "after": [ + 329, + 10 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + } + }, + { + "name": "inventory: the nine requested IDs existed before and are absent now", + "status": "PASS" + }, + { + "name": "inventory: retained SW IDs, names, titles, tags and order unchanged", + "status": "PASS", + "data": [ + "sw-header--composed-controls", + "sw-header--detail-buttons", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide", + "sw-header--property-panel-compare" + ] + }, + { + "name": "inventory: every non-removed index entry identical (docs and other packages included)", + "status": "PASS" + }, + { + "name": "inventory: Dropdown keeps sw-header--composed-controls / Dropdown / SW/Header", + "status": "PASS" + }, + { + "name": "inventory: comparison keeps its ID and name", + "status": "PASS" + }, + { + "name": "source: the nine Story exports are removed", + "status": "PASS" + }, + { + "name": "source: retained exports (Stories and ComposedDemo) byte-identical", + "status": "PASS", + "data": [] + }, + { + "name": "source: runtime, public API, AI template, other packages, Overview, Dropdown CSF, assets and Storybook config untouched", + "status": "PASS", + "data": "" + }, + { + "name": "sidebar: retained non-verification Stories in index order with their names", + "status": "PASS", + "data": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + { + "name": "sidebar: none of the nine removed menu IDs or names remain", + "status": "PASS", + "data": [ + "Layer Detail · Input", + "Property Panel", + "Additional Hover", + "Property Bar", + "Dynamic Controls", + "Colorize", + "Composition (Visibility · Order)", + "Property Panel · 형상 Slot", + "Property Panel · 필드 13개" + ] + }, + { + "name": "removed URL renders no SW Story", + "status": "PASS" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "Overview 390: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 768: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1280: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1440: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview: layer Dropdown opens", + "status": "PASS" + }, + { + "name": "Overview: Escape closes Dropdown and restores focus", + "status": "PASS" + }, + { + "name": "Overview: layer Detail callback (former Layer Detail page) and close", + "status": "PASS" + }, + { + "name": "Overview: btn_colorize 24 × 24 calls onColorPick and closes (former Colorize page)", + "status": "PASS", + "data": { + "x": 700, + "y": 324.25, + "width": 24, + "height": 24 + } + }, + { + "name": "Overview: property Bar Enter commits through callback", + "status": "PASS" + }, + { + "name": "Overview: property Bar validation keeps min=0", + "status": "PASS" + }, + { + "name": "Overview: panel opens with the shared Bar value", + "status": "PASS" + }, + { + "name": "Overview: Escape closes panel and returns focus to its trigger", + "status": "PASS" + }, + { + "name": "Dropdown: five fields plus the 상세보기 group (6 controls)", + "status": "PASS" + }, + { + "name": "Dropdown 390: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 768: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown: text style selection reflected in field and status", + "status": "PASS" + }, + { + "name": "Dropdown: line style selection reflected", + "status": "PASS" + }, + { + "name": "Compare 390: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 390: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 390: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 768: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 768: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 768: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1280: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1280: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1280: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1440: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1440: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1440: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare: editable Input caret #E60403 (former Layer Detail · Input page)", + "status": "PASS" + }, + { + "name": "Compare: Input Enter commits only in its own panel", + "status": "PASS" + }, + { + "name": "Compare: Input Escape cancels", + "status": "PASS" + }, + { + "name": "Compare: layer Dropdown selection commits via callback", + "status": "PASS" + }, + { + "name": "Compare: Escape closes the Dropdown and returns focus", + "status": "PASS" + }, + { + "name": "Motion: one section 「단계별 진행 (3배 확대)」 with nine stages at zoom 3", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "Motion: rest stage static, timed stages hold three paused animations", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "inventory": { + "before": [ + 338, + 19 + ], + "after": [ + 329, + 10 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ] + }, + "sidebar": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ], + [ + "sw-header--property-panel-compare", + "Property Panel · 4개 비교" + ] + ], + "compare390": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare768": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1280": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1440": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + "browser": "155.0.8059.80", + "status": "PASS" +} diff --git a/docs/sw/storybook-unused-story-removal-qa/verify/story-inventory-after.json b/docs/sw/storybook-unused-story-removal-qa/verify/story-inventory-after.json new file mode 100644 index 0000000..ee24331 --- /dev/null +++ b/docs/sw/storybook-unused-story-removal-qa/verify/story-inventory-after.json @@ -0,0 +1,106 @@ +{ + "total": 329, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + } + ] +} diff --git a/docs/sw/sw-ai-template-integration-2026-10-19.md b/docs/sw/sw-ai-template-integration-2026-10-19.md new file mode 100644 index 0000000..c5e60c8 --- /dev/null +++ b/docs/sw/sw-ai-template-integration-2026-10-19.md @@ -0,0 +1,84 @@ +# SW AI 재사용 템플릿 로컬 통합 기록 (2026-10-19) + +> 범위: `@hm-design/sw`. `feature/sw-ai-template`을 `feature/sw-package`에 로컬 Merge만 했습니다. Push·PR·Publish·배포는 하지 않았습니다. 기존 [AI 템플릿 검증 기록](./ai-template/README.md)과 [Storybook Overview 검증 자료](./storybook-overview-qa/)는 수정하지 않았습니다. 이번 실행 결과는 [ai-template-integration-qa/](./ai-template-integration-qa/)에 따로 두었습니다. + +## 1. 통합 전 상태 (실제 로컬 Git) + +| 항목 | 값 | +|---|---| +| `feature/sw-package` HEAD | `bf16578226fe89e5d9a6ba904b7979bebb602661` (chore(sw): improve interactive header story preview) | +| `feature/sw-ai-template` HEAD | `e27385e0f07e6ad5d58d5ba81cfcbef800997ec6` (feat(sw): prepare reusable AI-friendly component package) | +| Merge Base | `50bf5bda8e956a4973b923d64131f2f2285bd38c` | +| 원본 Working Tree | Clean(Staged·Unstaged·Untracked 없음) | +| 원격 대비 미Push Commit(`origin/feature/sw-package` = `724c517`) | `0029cef`, `92830fe`, `50bf5bd`, `bf16578` — 4개 모두 보존 | +| Worktree | `HMDesign-SW`(`feature/sw-package`), `HMDesign-SW-AI-Template`(`feature/sw-ai-template`), `HMDesign-SW-Composition`(`wip/sw-header-composition-unverified`) 외 기존 OrgChart·main | + +`left-right` 비교: `feature/sw-package`에만 `bf16578`, `feature/sw-ai-template`에만 `e27385e`. + +## 2. 영향 분석 + +- 양쪽 브랜치가 함께 수정한 파일: **없음**. 삭제·이동: 없음. +- AI 브랜치 변경 26개: 신규 24(`packages/sw/ai/` 12, `packages/sw/tests/ai-*.mjs` 3, `docs/sw/ai-template/` 9), 수정 2(`packages/sw/package.json`의 `files`에 `ai` 추가, `packages/sw/README.md` 끝에 안내 1절). +- Storybook 브랜치의 런타임 외 변경(`src/sw/sw-header.stories.tsx`, `src/sw/sw-stories.css`, `src/sw/sw-header-overview.tsx`, Overview 테스트, QA 자료)과 겹치지 않습니다. +- `packages/sw/src`, `src/`, `.storybook/`, `packages/ui`, OrgChart 패키지, Center Graphic, 루트 `package.json`·`package-lock.json`: Merge 결과 diff 없음. +- 공개 API: 변경 없음(`exports` 그대로). 배포 설정: `files`만 `["dist", "ai"]`로 확장. + +## 3. Merge + +- 방식: `git merge --no-ff --no-commit feature/sw-ai-template` → 결과 검토 → 이 보고서와 이번 실행 증거를 추가 → Merge Commit. +- 충돌: 없음("Automatic merge went well"). 스테이징 26개 = AI 브랜치 변경 목록과 같음. `git diff --cached --check` 통과. +- 제외: `wip/sw-header-composition-unverified`(`1b2c3917376841da46a1e2bd4cc4913e41eeb77f`)는 Merge·Cherry-pick하지 않았습니다. 브랜치·Commit·`D:\디자인시스템\HMDesign-SW-Composition` 폴더 그대로이며, 그 Worktree의 Git Status는 Clean입니다. + +## 4. 통합된 AI 템플릿 (실제 파일) + +| 구분 | 파일 | +|---|---| +| AI 사용 가이드 | `packages/sw/ai/AI_USAGE.md` | +| 컴포넌트 카탈로그 | `packages/sw/ai/COMPONENT_CATALOG.md` | +| SW 디자인 규칙 | `packages/sw/ai/DESIGN_RULES.md` | +| 조합 규칙 | `packages/sw/ai/COMPOSITION_PATTERNS.md` | +| 재사용 예제 | `ai/examples/ExampleA-DefaultHeader.tsx`(완성형 `SWHeader`) | +| 새 Header 구성 예제 | `ExampleB-ViewerHeader.tsx`, `ExampleC-FeatureHeader.tsx`, `example-layout.css`, `sample-data.ts` | +| 없는 컴포넌트를 SW 스타일로 구현 | `SWSearchControl.tsx`, `sw-search-control.css`, `ExampleD-SearchExtension.tsx` | +| 검증 도구 | `packages/sw/tests/ai-docs.check.mjs`, `ai-template-consumer.mjs`, `ai-template-consumer.browser.mjs` | +| 독립 소비 검증 자료 | `docs/sw/ai-template/README.md`, `docs/sw/ai-template/evidence/` | + +가이드는 "검색 → 재사용 → 조합 → 없을 때만 소비 프로젝트에서 SW 규칙으로 신규 작성" 순서를 지시합니다. 패키지가 AI 기능을 실행한다고 쓰지 않습니다. 기존 `SWHeader`를 공식 기본 템플릿으로 두며, 예제 Header는 제품 Header를 대체하지 않습니다. + +## 5. 이번에 실행한 검증 (통합 Working Tree, Merge Commit 직전 상태) + +| 항목 | 결과 | +|---|---| +| `npm run typecheck:sw` | PASS | +| `npm exec -- tsc -p tsconfig.app.json --noEmit`(Storybook·Demo 소스) | PASS | +| `npm run build:sw` | PASS — `dist/index.js`·`styles.css`·`index.d.ts` SHA-256이 Merge 전 산출물과 같음 | +| `npm exec -- storybook build -o storybook-static --disable-telemetry` | PASS | +| Story ID 비교 | 28개. ID·이름·importPath·순서가 [after-index.json](./storybook-overview-qa/after-index.json)과 같음. 삭제된 Default·Controls·Responsive·Text Stroke·Dynamic Data는 없음. AI 예제는 Story로 수집되지 않음 | +| Storybook 소스 해시 | `sw-header.stories.tsx`·`sw-header-overview.tsx`·`sw-stories.css`가 Overview 검증 기록의 `sourceSha256`과 같음 | +| Overview Chrome(`overview.browser.mjs`, 통합 Storybook 빌드) | 53/53 PASS — 16:9 Stage, 49px, Dropdown, 속성Bar 동적 편집·확정, 속성창 열기·닫기·Focus 복귀, 입력 검증, Enter/Escape, Disabled/ReadOnly 포함([결과](./ai-template-integration-qa/chrome-result.json)) | +| Overview Overlay(`overview.browser.mjs overlays`) | 19/19 PASS([결과](./ai-template-integration-qa/chrome-overlays-result.json)) | +| Window Move Motion Story | "단계별 진행 (3배 확대)" 한 구성만 존재, 이동 영역 9개, 이미지 디코드, 창 이동 애니메이션 24개 실행, 오류 0([화면](./ai-template-integration-qa/window-move-motion.png)) | +| `ai-docs.check.mjs` | 19/19 PASS — 문서·예제 Import와 공개 Export 일치, 패키지 내부 링크 정상 | +| Tarball(`npm pack`, 통합 브랜치) | 40개 파일, `ai/` 12개 포함, `src`·`tests` 미포함 | +| 독립 소비 프로젝트(기존 프로젝트 재사용, 통합 Tarball 재설치) | 설치된 `ai/examples` = 저장소 예제, `tsc` PASS, `vite build` PASS, 브라우저 27/27 PASS([결과](./ai-template-integration-qa/ai-consumer-report.json)) | + +Overview 스크립트는 결과를 출력 폴더에 쓰므로 기존 `storybook-overview-qa/`가 아니라 임시 폴더에서 실행한 뒤 결과 JSON만 `ai-template-integration-qa/`로 복사했습니다. + +## 6. 기존 PASS 재사용 근거 + +런타임 소스(`packages/sw/src`)와 Storybook 소스(`src/`, `.storybook/`)가 Merge로 바뀌지 않았고 SW 산출물 해시도 같습니다. 그래서 아래 기존 결과는 다시 실행하지 않고 이전 기록으로 남깁니다(이번에 새 PASS로 기록하지 않음): Overview Firefox 9/9, 기존 필드 77/77, Header 관련 257 checks, Header 10개 폭·반응형 More 전체·Colorize·게이지바(Chrome/Firefox)·속성창 4상태·속성 필드 13개 개별 검증. + +## 7. NOT VERIFIED + +- Firefox: 이번 통합 후 실행하지 않음(기존 9/9 기록만). +- Overview 외 27개 Story의 전체 인터랙션 회귀(Story 선언·소스 해시 동일만 확인). +- 저장소 루트 전체 `npm run typecheck`(`tsc -b` + 모든 workspace)와 `npm run build-storybook`의 `prebuild`(전체 패키지 build). SW 범위 명령과 직접 `storybook build`만 실행했습니다. +- AI 소비 예제의 Firefox·Safari, 소비 검증 범위 밖 공개 컴포넌트(기존 AI 기록 §6 그대로). +- CAD·파일·운영체제 연동, 접근성 인증. + +## 8. 로컬 Merge Commit + +- 메시지: `merge(sw): integrate AI reusable component template` +- Parents: `bf16578`(feature/sw-package) + `e27385e`(feature/sw-ai-template) +- Push·Force Push·원격 갱신·PR·Publish·배포: 진행하지 않음. +- Commit SHA·Parents·Status는 Commit 직후 확인 결과를 최종 보고에 적습니다(이 문서는 Commit 안에 포함되므로 자기 SHA를 담을 수 없음). diff --git a/docs/sw/sw-dotum-font-2026-10-20.md b/docs/sw/sw-dotum-font-2026-10-20.md new file mode 100644 index 0000000..ecba55a --- /dev/null +++ b/docs/sw/sw-dotum-font-2026-10-20.md @@ -0,0 +1,99 @@ +# SW 기본 글꼴 Dotum · Footer 디자인 확인 · 실제 Viewer 소비 프로젝트 검증 (2026-10-20) + +> **과거 기록(현재 정책 아님):** 같은 날 사용자 결정으로 SW 기본 글꼴 Dotum은 철회되고 **Noto Sans KR**로 확정되었습니다([sw-noto-bold-2026-10-20.md](./sw-noto-bold-2026-10-20.md)). 아래 내용과 증거는 Dotum 시점 이력으로 보존합니다. + +범위: `feature/sw-package`, 기준 HEAD `454472d`(원격 동일). SW 패키지(`packages/sw`), SW Story(`src/sw/sw-theme.stories.tsx`), AI 문서, README만 변경했습니다. Web UI·OrgChart 코드·토큰은 변경하지 않았습니다(공통 `AI_GUIDE.md` 사본 동기화만 각 패키지 `ai/`에 반영). **Commit·Push 전(승인 대기).** 증거: [sw-dotum-font-qa/](./sw-dotum-font-qa/). + +## 1. 변경 내용 + +| 파일 | 변경 | 이유 | +|---|---|---| +| `packages/sw/src/theme/sw.css` | `--hm-sw-header-font-family: Dotum, "돋움", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif` (이전 `"Noto Sans KR", …`) | SW 기본 글꼴 = 돋움. 토큰 1곳(가장 바깥 SW 범위)에서만 선언, 컴포넌트별 `font-family` 없음 | +| 〃 | `.hm-sw-header__mode` padding `0 8px` → `0 4px` (칸 90px 유지) | 돋움에는 Bold 글꼴이 없어 700이 합성 Bold(글자당 약 +1px). `그리기모드` 77.8px > 내용 폭 74px로 말줄임 → 칸 폭·가운데 정렬은 그대로 두고 여백만 줄여 해결 | +| `packages/sw/src/theme/sw-footer.css` | 주석만(Noto → Dotum) | 사실 정정 | +| `packages/sw/tests/theme-inheritance.browser.mjs`, `src/sw/sw-theme.stories.tsx` | 기본값 = Dotum, 상속 확인용 검증 값 = Noto Sans KR로 교체 | 기본값과 검증 값이 같으면 상속 검사가 무의미해짐. 검사 항목·조건 수는 동일(23) | +| `packages/sw/tests/ai-template-consumer.browser.mjs` | 토큰 글꼴 기대값 Noto → Dotum | 기본값 변경 반영 | +| `packages/sw/tests/footer-design-review.browser.mjs` (신규) | Footer 확인 4건 + 텍스트 규칙 계산값·상태별 캡처 | §4 판정 근거 | +| `docs/ai/AI_GUIDE.md` (+ `sync:ai-docs`로 ui·sw·org-chart·org-chart-react 사본) | 혼합 규칙 1에 "SW = 돋움, Web = Noto Sans KR, OrgChart = 자기 설정, 서로 복사 금지" | 공통 규칙 | +| `packages/sw/ai/AI_USAGE.md`, `DESIGN_RULES.md`, `VIEWER.md`, `COMPOSITION_PATTERNS.md`, `examples/ExampleJ-Theme.tsx`, `README.md` | "Noto 기본 / Dotum 승인 대기" 문구 → "돋움 기본, SWTheme·SW 토큰 우선, Web 글꼴 복사 금지, 합성 Bold 폭 주의". 예시 글꼴 값은 프로그램 결정 예시(Malgun Gothic)로 교체 | 문서 일관성 | + +글꼴 파일·CDN 의존성은 추가하지 않았습니다. 돋움은 Windows 기본 `gulim.ttc`에 포함된 시스템 글꼴이며, 실제 렌더링 글꼴을 CDP `getPlatformFontsForNode`로 확인했습니다(Header·Footer·Popup·Viewer 모두 `Dotum`, 대체 글꼴 0). + +## 2. Dotum 전후 레이아웃 차이 (SW Story 40개 × 1920/1280/900/640) + +증거: `font-diff/layout-diff-noto-to-dotum.json`, `font-diff/clipped-text-dotum-vs-noto.json`, before/after 캡처. + +- 페이지·Header 가로 넘침: 0건(전후 동일). Header 필드는 Figma 고정 폭이라 Breakpoint(1800/1180/1080/900/640) 계산은 변하지 않음(1920→520 전 구간 `fields` clientWidth = scrollWidth). +- 높이: `line-height: normal` 텍스트 상자가 20 → 16px(돋움 metric). 정렬은 flex 가운데라 화면상 위치 차이 없음. +- 글자 폭: 한글은 비슷하거나 좁고, 라틴·숫자·700(합성 Bold)은 넓어짐(예: `255,229,0` 72 → 87px, `파일 열기` 59 → 70px). 내용 폭 필드는 그만큼 넓어지고 파일명이 나머지를 가져감(설계된 동작). +- 새로 잘리는 텍스트(고정 폭 칸): + +| 항목 | 돋움 / 칸 | 처리 | +|---|---|---| +| Header `그리기모드` (90px 칸) | 77.8 > 74 | **FIXED** (padding 4px) | +| Header 값 `Standard`(문자/치수스타일), `0_Layer_Cludmark`(레이어 142), 스케일 `1.00`(38px) | 0.3~1.5px 초과 | **REVIEW REQUIRED** — 원인은 700 합성 Bold. Figma 고정 폭을 바꾸거나 굵기 정책(700 vs Figma Dotum Regular+Stroke)을 바꾸는 디자인 결정이라 임의 수정하지 않음 | +| Footer 명령 라벨 `POLYGON`, `WIPEOUT` (64px) | 76.9 / 69.9 (Noto에서도 66.9 / 66.3으로 이미 잘림) | **REVIEW REQUIRED** — 기존 문제가 커짐. 글자 크기·자간은 Figma 값 | +| Story fixture 문자열(`Display...`, 뷰어 `상태 확인용.dwg` 100px, 패널 제목 `250 × auto (최소 폭)`) | 1~6px 초과 | 말줄임 설계 동작(데이터 길이 문제), 변경 없음 | + +- Popup·Viewer Panel·SWSelect·SWSlider·Footer 탭: 새 잘림 0, 가로 넘침 0. Popup 값(500)은 합성 Bold 대상이 아니어서 Regular로 보임(Figma와 같은 인상). + +## 3. Header 히스테리시스 재검증 (돋움) + +`footer-popup-viewer-refinement` 47/47, `integrated-improvement`(options·popup) 89/89 PASS. 테스트 조건은 그대로입니다. Trace(`[폭, Open 표시, hold]`): 넓어질 때 `520 0 → 560 0 → 600 1 → 640 1(actions) → 680 1(actions) → 720 1 → 760 1 → 820 1 → 900 1(color) → 1080 1(color)`, 1920 모두 복귀, 줄일 때 1800에서 Open이 먼저 More로 이동, 다시 넓히면 600에서 1회 복귀 — 수정안 A(Noto) 기록과 동일. 콘솔 오류·React #185(무한 업데이트)·ResizeObserver 오류 0. + +## 4. Footer 디자인 확인 4건 (Storybook `SW/Footer › 전체 Footer · 실제 조합`, 돋움) + +증거: `footer-design/`(21/21 PASS, 상태별 캡처). + +| 항목 | 판정 | 실제 확인 | +|---|---|---| +| 3-1 전체보기 Hover(보조기능·명령어) | **PASS** | Hover 시 `::after` 링 opacity 0 → 1이 버튼 74 × 71 전체를 덮음(gra-border-orange 1px), 두 줄 글자 모두 `#FF5C00`. 크기·글자 위치 변화 0. 일부만 남는 테두리 없음. Selected(`aria-pressed`/`expanded`)는 같은 규칙, Disabled는 Hover 제외 | +| 3-2 하단 분류 `+` / Layout `+` Hover | **PASS** | 분류 `+`(28 × 12): 아이콘만 주황 +로 교체, 면 없음, 크기 동일. Layout `+`(24 × 22): 버튼 모양 마스크 안에 gra-border-orange 면 + 흰 + 외곽선. 클릭 동작은 Story Callback으로 유지(기존 47/47 검사) | +| 3-3 비선택 Model 탭 | **PASS** | 토큰 `--hm-sw-footer-gra-border-orange` = 지정 그라데이션과 정확히 같음(`#DA6813 8.52% / #FFBB89 37.93% / #E5690D 71.85% / #AE3607 92.77%`). 선택 = 주황 면, 비선택 = `tab-model.svg` 베이지 면. 비선택 베이지는 Figma 26:9914 `model` Default(베이지)와 일치. 참고: Figma Hover(베이지 + 주황 글자)·On(갈색)은 2026-10-20 사용자 요청으로 주황 면 + 검정 글자로 바뀐 상태 그대로 | +| 3-4 명령이 적은 분류 선택 배경 | **PASS** | 도형·수정·편집·문자 포함 12개 분류 모두: vacant 면 하단(1074) < 선택 탭 상단(1078), Pocket 뒤(좌·중·우) 면이 하나(`menu__viewport`). 갈라짐 재발 없음. 2차에 보고한 변화(명령이 적은 분류의 Pocket 면이 어두운 vacant → 그룹 면)는 그대로이며 디자인 확인 권장 사항으로 유지 | +| 3-5 Model·Layout 텍스트 | **PASS** | 돋움 12px 400 `#161410`, 외곽선 없음. Model 선택·비선택·Hover, Layout Default·Hover의 글자 상자·색 동일 | + +## 5. 실제 소비 프로젝트 독립 검증 (HMDesignSwTest-viewer) + +- 원본: `D:\디자인시스템\HMDesignSwTest-viewer` — HEAD `15ef6ef`(detached), Submodule `68fbcf6`(+ 미커밋 `sw.css` popup scrollbar 6줄), 작업 트리 변경 20개. **읽기만 했고 변경 없음**(검증 후 HEAD·Submodule·변경 20개·`package-lock.json` 시각 2026-10-19 그대로). +- 독립 환경: 세션 scratchpad `viewer-verify/`. 원본 작업 트리(미커밋 변경 포함, `node_modules`·`dist`·`.git`·`HMDesign` 제외)를 복사하고, `HMDesign/packages/{ui,sw}` 자리에 이 저장소 스냅샷을 배치(구조 = Git Submodule 경로 + npm Workspace 그대로, publish 전제 없음). 민감 설정 파일 없음. +- 시험한 소스: `454472d` + 작업 트리 변경(`consumer-viewer/hmdesign-snapshot.patch`, sha256 앞 16자 `7982bda27eb02f45`), `packages/sw/dist/styles.css` `09e9f80d…`. 원본 Submodule이 갖고 있던 scrollbar 미커밋 수정은 `454472d`에 이미 포함됨(`3a5e29f` 조상). +- `npm install`(workspace 링크 `@hm-design/sw|ui` → 스냅샷) → `tsc -b --noEmit` + `vite build` PASS → `vite preview`(5391). +- Chrome 34/34 PASS(`consumer-viewer/chromium-result.json`): 돋움 렌더링(Header 102 glyph 전부 Dotum), Web 토큰 `--hm-font-family-base` Noto 유지, DXF·DWG 3종 로드(simple.dxf 1.3s, BasicSample.dwg 1.4s, civil.dwg 1.9s, 도면 픽셀 확인), 휠 확대·드래그 팬·F(전체 보기), 모델/배치 탭 전환, 샘플 Dropdown 열기·Escape·샘플 로드, 2.5D 전환, 옵션 패널(SWViewerPanel) 열기·SWViewerSlider 값 변경과 숫자 입력 동기화·SWViewerSwitch·제목 드래그 이동·크기 조절·본문 세로 스크롤·잘린 글자 0·Escape 닫기, 레이어 패널, 정보(modal) Escape, 1920/1180/900/560/375 가로 넘침 0과 More 메뉴. 콘솔 오류 0(프로그램에 favicon 없음 — 기존). +- Firefox 158(설치본, WebDriver BiDi) 15/15 PASS: 돋움 해석, civil.dwg 로드, Header 글꼴, 메뉴 열기·Escape, 옵션 패널, 1400/500 가로 넘침 0. +- 이 프로그램은 SW **뷰어 모드**만 사용합니다(SWViewer* 14종). SWHeader·Home Menu·Footer·SWPopup·SWSelect·SWSlider(일반)는 프로그램에 없어 Storybook 검증으로 대신했습니다. +- 사용 규칙 점검(수정하지 않음, 보고만): + 1. `src/App.tsx:74` 화면 루트에 `className="hm-sw-theme"`를 직접 붙임 → 규칙상 `` 사용(소비 코드가 `hm-sw-*` class를 붙이지 않음). + 2. `LoadProgress`가 Web `Progress`를 SW 화면 최상단에 사용 — 뷰어 모드에서 Web 컨트롤 허용 지점(`SWViewerPanel` children) 밖. 대응 SW 컴포넌트 없음 → 문서상 "없는 컴포넌트" 절차 대상. + 3. `index.css`가 Web 시맨틱 토큰(`--background` 등)을 SW 팔레트로 재정의하고 `--hm-font-family-base`·`body` 글꼴을 Noto로 지정 — Web+SW 한 문서 혼합(AI_GUIDE §5 혼합 규칙 4, NOT VERIFIED 조합). SW 영역은 `hm-sw-theme` 덕분에 돋움으로 표시됨을 확인. + 4. 패널 목록·좌표 표시(`viewer-panels.css`)는 프로그램 레이아웃이며 `--hm-sw-viewer-*` 토큰만 사용(규칙 범위 안). +- CAD 엔진·도면 처리 코드는 변경하지 않았습니다. + +## 6. 테스트 결과와 실패 분류 + +| 테스트 | 결과 | 분류 | +|---|---|---| +| `footer-popup-viewer-refinement` | 47/47 | — | +| `integrated-improvement` options·popup | 89/89 | — | +| `theme-inheritance` | 23/23 | — | +| `viewer.browser` | 70/70 | — | +| `storybook-simplification` | 9/9 | — | +| `footer-design-review`(신규) | 21/21 | — | +| `overview` | 51 PASS / 3 FAIL | FAIL 3 = 과거 Commit(`50bf5bd`) 대비 Story 수(24, 현재 40)·소스 동일성 스냅샷 → **기존(오래된 스냅샷 테스트)**. 행동 검사는 모두 PASS | +| `overview-firefox` | 9/9 | — | +| `dropdown-consolidation` | 223 PASS / 5 FAIL | FAIL 5 = `c165753` 대비 Story 수·소스·`git diff` 스냅샷 → **기존** | +| `home-menu-integration` | 22/23 | FAIL 1 `without homeMenu: logo click…` → **기존**(이전 보고에서 47972c5로 재현, 이번 실행도 같은 항목·같은 메시지) | +| `storybook-unused-removal` | 93 중 FAIL 5 | **기존**(10-19 inventory·source 스냅샷, 이전 보고와 같은 5건) | +| `range-cross-browser`, `property-fields`, `property-close` | 미실행 | **기존** — 삭제된 Story(`sw-header--property-panel`, `--property-fields`)를 엶. 속성창 동작은 `footer-popup-viewer-refinement`·`integrated-improvement` popup·`overview`가 대신 검사 | +| `typecheck`(workspace), `build:sw`, `build-storybook`, `check:ai-docs`, `ai-docs.check` 37/37 | PASS | — | + +글꼴 변경으로 새로 생긴 실패: 0건(`그리기모드` 잘림은 테스트 실패가 아니라 측정으로 발견해 수정). 스냅샷 테스트는 삭제·완화하지 않았습니다 — 최신 Story 구조로 기준을 다시 잡으려면 별도 승인이 필요합니다(기준 스냅샷 교체 = QA 기준 변경). + +## 7. 미검증 · 남은 항목 + +- REVIEW REQUIRED: Header 고정 폭 값 칸의 0.3~1.5px 합성 Bold 초과(`Standard`, `0_Layer_Cludmark`, `1.00`), Footer `POLYGON`/`WIPEOUT` 잘림 — 굵기 정책(700) 또는 Figma 칸 폭 결정 필요. +- **미검증:** 돋움이 없는 macOS·Linux는 Malgun Gothic → Apple SD Gothic Neo → sans-serif로 대체(실기기 미검증). +- **미실행:** `viewer-regression.browser.mjs`(기준선 픽셀 비교). 이 테스트는 변경 전(base)과 변경 후 Storybook 두 개를 받아 `.hm-sw-header`·`.hm-sw-property` 요소를 픽셀 단위로 비교합니다. 이번 변경은 글꼴 자체를 바꾸므로 base(Noto) 대비 모든 텍스트 픽셀이 달라지는 것이 의도된 결과이고, 실행하려면 `454472d` 기준 Storybook을 별도로 빌드해 띄워야 합니다(같은 `dist`를 쓰는 build 동시 실행 금지). 픽셀 동일성 대신 같은 페이지 Noto 주입 비교(§2)·계산값·화면 캡처로 레이아웃 차이를 확인했습니다. +- **별도 개선 대상(이번 범위 밖, 원본 수정 금지):** 소비 프로젝트의 ① 화면 루트 `className="hm-sw-theme"` 직접 사용(→ ``) ② Web `Progress`를 허용 지점 밖에서 사용 ③ Web 시맨틱 토큰·`--hm-font-family-base`·`body` 글꼴 재정의. +- 원본 `HMDesignSwTest-viewer`는 무변경 상태를 유지합니다. +- Commit 분리 계획(승인 후): ① `feat(sw): default font Dotum` — `sw.css`·`sw-footer.css` ② `test(sw): theme / consumer tests for the Dotum default` — 테스트 2개·`sw-theme.stories.tsx`·`footer-design-review` ③ `docs: SW Dotum / Web Noto font rule` — AI 문서·README·사본 ④ `docs(sw): Dotum QA evidence` — 이 보고서·`sw-dotum-font-qa/`. diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-01-initial.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-01-initial.png new file mode 100644 index 0000000..e7acb01 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-01-initial.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-02-load-civil.dwg.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-02-load-civil.dwg.png new file mode 100644 index 0000000..66c8427 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-02-load-civil.dwg.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-04-options-panel.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-04-options-panel.png new file mode 100644 index 0000000..1eb3778 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-04-options-panel.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-06-more-375.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-06-more-375.png new file mode 100644 index 0000000..e343a67 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-06-more-375.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-result.json b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-result.json new file mode 100644 index 0000000..119f339 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/consumer-viewer/chromium-result.json @@ -0,0 +1,263 @@ +{ + "base": "http://127.0.0.1:5391", + "engine": "chromium", + "loads": { + "simple.dxf": { + "status": "ready", + "ms": 1199, + "colors": 52, + "nonBg": 0.0182, + "name": "simple.dxf", + "tabs": 0 + }, + "BasicSample.dwg": { + "status": "ready", + "ms": 1365, + "colors": 118, + "nonBg": 0.0446, + "name": "BasicSample.dwg", + "tabs": 2 + }, + "civil.dwg": { + "status": "ready", + "ms": 1829, + "colors": 420, + "nonBg": 0.1904, + "name": "civil.dwg", + "tabs": 2 + } + }, + "results": [ + { + "name": "Font: SWViewerHeader text = Dotum (SW default)", + "result": "PASS", + "detail": { + "Dotum": 20 + } + }, + { + "name": "Font: rendered platform font in header = Dotum (installed, no fallback)", + "result": "PASS", + "detail": { + "Dotum": 102 + } + }, + { + "name": "Theme: SW token --hm-sw-header-font-family = Dotum stack", + "result": "PASS", + "detail": { + "font": "Dotum, \"돋움\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif", + "bg": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Web UI token --hm-font-family-base unchanged (Noto Sans KR)", + "result": "PASS", + "detail": "\"Noto Sans KR\", \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "Load simple.dxf: status ready + drawing pixels", + "result": "PASS", + "detail": { + "status": "ready", + "ms": 1199, + "colors": 52, + "nonBg": 0.0182, + "name": "simple.dxf", + "tabs": 0 + } + }, + { + "name": "Load BasicSample.dwg: status ready + drawing pixels", + "result": "PASS", + "detail": { + "status": "ready", + "ms": 1365, + "colors": 118, + "nonBg": 0.0446, + "name": "BasicSample.dwg", + "tabs": 2 + } + }, + { + "name": "Load civil.dwg: status ready + drawing pixels", + "result": "PASS", + "detail": { + "status": "ready", + "ms": 1829, + "colors": 420, + "nonBg": 0.1904, + "name": "civil.dwg", + "tabs": 2 + } + }, + { + "name": "Viewer: wheel zoom changes the drawing", + "result": "PASS", + "detail": "0.316" + }, + { + "name": "Viewer: drag pan changes the view", + "result": "PASS", + "detail": "0.323" + }, + { + "name": "Viewer: F (fit) restores the full view", + "result": "PASS", + "detail": "0.002 < 0.327" + }, + { + "name": "Header: space tab switch (inactive → active) re-renders the canvas", + "result": "PASS", + "detail": "2 tabs, now Model17,377" + }, + { + "name": "Header: 샘플 dropdown opens (SWViewerMenu) with Dotum", + "result": "PASS", + "detail": { + "Dotum": 6 + } + }, + { + "name": "Header: Escape closes the dropdown", + "result": "PASS", + "detail": "" + }, + { + "name": "Header: sample menu loads simple.dxf", + "result": "PASS", + "detail": "simple.dxf / ready" + }, + { + "name": "Viewer: 2.5D switch toggles and re-renders", + "result": "PASS", + "detail": "0.0217" + }, + { + "name": "Panel: 설정 opens SWViewerPanel", + "result": "PASS", + "detail": "" + }, + { + "name": "Panel: text = Dotum (program list cells keep their monospace)", + "result": "PASS", + "detail": { + "Dotum": 25 + } + }, + { + "name": "Panel: SWViewerSlider changes value and syncs the number input", + "result": "PASS", + "detail": "1 → 1.2, input 1.2" + }, + { + "name": "Panel: SWViewerSwitch toggles (그리드)", + "result": "PASS", + "detail": "false → true" + }, + { + "name": "Panel: title drag moves the panel", + "result": "PASS", + "detail": "(904,56) → (704,168)" + }, + { + "name": "Panel: resize grip changes size", + "result": "PASS", + "detail": "340×520 → 413×353" + }, + { + "name": "Panel: body scrolls vertically, no horizontal overflow", + "result": "PASS", + "detail": { + "scrollable": true, + "before": 0, + "after": 207, + "overflowX": false + } + }, + { + "name": "Panel: no clipped text after Dotum", + "result": "PASS", + "detail": [] + }, + { + "name": "Panel: closes (Escape)", + "result": "PASS", + "detail": "" + }, + { + "name": "Panel: 레이어 opens with layer rows", + "result": "PASS", + "detail": "2 rows" + }, + { + "name": "Panel: 정보 (modal) opens and Escape closes it", + "result": "PASS", + "detail": "open=true" + }, + { + "name": "Responsive 1920: header/page no horizontal overflow", + "result": "PASS", + "detail": { + "overflow": false, + "doc": false, + "more": false + } + }, + { + "name": "Responsive 1180: header/page no horizontal overflow", + "result": "PASS", + "detail": { + "overflow": false, + "doc": false, + "more": false + } + }, + { + "name": "Responsive 900: header/page no horizontal overflow (More shown)", + "result": "PASS", + "detail": { + "overflow": false, + "doc": false, + "more": true + } + }, + { + "name": "Responsive 900: More opens with collapsed items", + "result": "PASS", + "detail": "5 items" + }, + { + "name": "Responsive 560: header/page no horizontal overflow (More shown)", + "result": "PASS", + "detail": { + "overflow": false, + "doc": false, + "more": true + } + }, + { + "name": "Responsive 375: header/page no horizontal overflow (More shown)", + "result": "PASS", + "detail": { + "overflow": false, + "doc": false, + "more": true + } + }, + { + "name": "Responsive 375: More opens with collapsed items", + "result": "PASS", + "detail": "8 items" + }, + { + "name": "Console / page / HTTP errors: none (favicon.ico 404 = program has no icon, pre-existing)", + "result": "PASS", + "detail": { + "errors": [], + "favicon404": 0 + } + } + ], + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-1400.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-1400.png new file mode 100644 index 0000000..cc49600 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-1400.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-500.png b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-500.png new file mode 100644 index 0000000..e052a8d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-500.png differ diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-result.json b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-result.json new file mode 100644 index 0000000..d588887 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/consumer-viewer/firefox-result.json @@ -0,0 +1,128 @@ +{ + "base": "http://127.0.0.1:5391", + "version": "158.0", + "results": [ + { + "name": "Firefox 1400: civil.dwg loads (status)", + "result": "PASS", + "data": "ready" + }, + { + "name": "Firefox 1400: Dotum resolves to an installed face (width differs from fallbacks)", + "result": "PASS", + "data": { + "dotum": 170, + "malgun": 162.3, + "mono": 168 + } + }, + { + "name": "Firefox 1400: SWViewerHeader computed font = Dotum", + "result": "PASS", + "data": { + "Dotum": 15 + } + }, + { + "name": "Firefox 1400: no horizontal overflow", + "result": "PASS", + "data": { + "header": 0, + "page": 0, + "more": false, + "h": 52 + } + }, + { + "name": "Firefox 1400: header menu opens (Dotum)", + "result": "PASS", + "data": { + "items": 3, + "font": "Dotum" + } + }, + { + "name": "Firefox 1400: Escape closes the menu", + "result": "PASS" + }, + { + "name": "Firefox 1400: options SWViewerPanel opens, Dotum, scrollable body, no clipped text", + "result": "PASS", + "data": { + "opened": "toggle", + "panel": { + "w": 340, + "h": 520, + "font": "Dotum", + "scroll": true, + "clipped": 0, + "inView": true + } + } + }, + { + "name": "Firefox 500: civil.dwg loads (status)", + "result": "PASS", + "data": "ready" + }, + { + "name": "Firefox 500: Dotum resolves to an installed face (width differs from fallbacks)", + "result": "PASS", + "data": { + "dotum": 170, + "malgun": 162.3, + "mono": 168 + } + }, + { + "name": "Firefox 500: SWViewerHeader computed font = Dotum", + "result": "PASS", + "data": { + "Dotum": 3 + } + }, + { + "name": "Firefox 500: no horizontal overflow", + "result": "PASS", + "data": { + "header": 0, + "page": 0, + "more": true, + "h": 52 + } + }, + { + "name": "Firefox 500: header menu opens (Dotum)", + "result": "PASS", + "data": { + "items": 10, + "font": "Dotum" + } + }, + { + "name": "Firefox 500: Escape closes the menu", + "result": "PASS" + }, + { + "name": "Firefox 500: options SWViewerPanel opens, Dotum, scrollable body, no clipped text", + "result": "PASS", + "data": { + "opened": "more", + "panel": { + "w": 340, + "h": 520, + "font": "Dotum", + "scroll": true, + "clipped": 0, + "inView": true + } + } + }, + { + "name": "Firefox: no console errors (favicon 404 excluded)", + "result": "PASS", + "data": [] + } + ], + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/hmdesign-snapshot.patch b/docs/sw/sw-dotum-font-qa/consumer-viewer/hmdesign-snapshot.patch new file mode 100644 index 0000000..6071a72 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/consumer-viewer/hmdesign-snapshot.patch @@ -0,0 +1,396 @@ +diff --git a/README.md b/README.md +index 06a943a..648c5fb 100644 +--- a/README.md ++++ b/README.md +@@ -124,7 +124,7 @@ import { OrgChart } from "@hm-design/org-chart-react" // Core: @hm-design/org-ch + + 별도 React 앱은 [Tailwind v4 검색 범위 가이드](docs/guidelines/runtime-portability.md#21-tailwind-v4-소비자-검색-범위)를 확인합니다. `source("./")`는 CSS 위치에 따라 범위가 달라지며 HM `tailwind.css`의 명시 source를 유지해야 합니다. 공개 package Theme는 동봉된 `dist/fonts/`를 상대 URL로 참조합니다. 개발 저장소·포터블 ZIP·React 소비자·단일 HTML의 차이는 [폰트·Asset 경로](docs/guidelines/runtime-portability.md#41-noto-sans-kr-경로-실행-환경별-확인)를 따릅니다. + +-SW는 Tailwind 없이 앱 진입점에서 `import "@hm-design/sw/styles.css"`를 한 번 추가합니다. 한 화면에서는 SW 일반 모드와 뷰어 모드 중 하나를 고르고, 글꼴 등 토큰은 가장 바깥 ``에서 바꿉니다([SW 사용 안내](packages/sw/ai/AI_USAGE.md)). SW 기본 글꼴은 Noto Sans KR이며 Figma의 Dotum을 기본값으로 쓸지는 디자인 승인 대기입니다. OrgChart는 Core CSS 두 개(`@hm-design/org-chart/engine.css`, `/style.css`)의 URL을 `stylesheetUrls`로 전달합니다(Shadow DOM, [OrgChart React README](packages/org-chart-react/README.md)). ++SW는 Tailwind 없이 앱 진입점에서 `import "@hm-design/sw/styles.css"`를 한 번 추가합니다. 한 화면에서는 SW 일반 모드와 뷰어 모드 중 하나를 고르고, 글꼴 등 토큰은 가장 바깥 ``에서 바꿉니다([SW 사용 안내](packages/sw/ai/AI_USAGE.md)). SW 기본 글꼴은 돋움(Dotum, 설치된 시스템 글꼴)이고 Web UI 기본 글꼴은 Noto Sans KR입니다. 서로의 글꼴 설정을 복사하지 않습니다. OrgChart는 Core CSS 두 개(`@hm-design/org-chart/engine.css`, `/style.css`)의 URL을 `stylesheetUrls`로 전달합니다(Shadow DOM, [OrgChart React README](packages/org-chart-react/README.md)). + + 화면 생성 Reference: [Navigation 선택 근거](docs/guidelines/navigation-single-mode.md#선택-근거), [GNB Desktop·Mobile 구성](docs/patterns/gnb.md#8-desktop--mobile)과 [내부 Sidebar](docs/patterns/gnb.md#15-gnb-only-sidebar-composition-2026-10-08), [FilterBar 조회·초기화 소비 예제](docs/patterns/filter-bar.md#61-조회-버튼으로-적용하는-소비-예제). 일반 업무 목록의 모드를 임의 확정하거나 FilterBar에 조회 API가 있다고 가정하지 않습니다. + +diff --git a/docs/ai/AI_GUIDE.md b/docs/ai/AI_GUIDE.md +index 8ac07f4..5fd7e42 100644 +--- a/docs/ai/AI_GUIDE.md ++++ b/docs/ai/AI_GUIDE.md +@@ -138,7 +138,7 @@ + + 혼합 규칙: + +-1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. ++1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 돋움(Dotum, `--hm-sw-header-font-family`), Web 기본 글꼴은 Noto Sans KR(`--hm-font-family-base`), OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 값을 다른 영역에 복사하지 않습니다. + 2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) +diff --git a/packages/org-chart-react/ai/AI_GUIDE.md b/packages/org-chart-react/ai/AI_GUIDE.md +index 8ac07f4..5fd7e42 100644 +--- a/packages/org-chart-react/ai/AI_GUIDE.md ++++ b/packages/org-chart-react/ai/AI_GUIDE.md +@@ -138,7 +138,7 @@ + + 혼합 규칙: + +-1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. ++1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 돋움(Dotum, `--hm-sw-header-font-family`), Web 기본 글꼴은 Noto Sans KR(`--hm-font-family-base`), OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 값을 다른 영역에 복사하지 않습니다. + 2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) +diff --git a/packages/org-chart/ai/AI_GUIDE.md b/packages/org-chart/ai/AI_GUIDE.md +index 8ac07f4..5fd7e42 100644 +--- a/packages/org-chart/ai/AI_GUIDE.md ++++ b/packages/org-chart/ai/AI_GUIDE.md +@@ -138,7 +138,7 @@ + + 혼합 규칙: + +-1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. ++1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 돋움(Dotum, `--hm-sw-header-font-family`), Web 기본 글꼴은 Noto Sans KR(`--hm-font-family-base`), OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 값을 다른 영역에 복사하지 않습니다. + 2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) +diff --git a/packages/sw/ai/AI_GUIDE.md b/packages/sw/ai/AI_GUIDE.md +index 8ac07f4..5fd7e42 100644 +--- a/packages/sw/ai/AI_GUIDE.md ++++ b/packages/sw/ai/AI_GUIDE.md +@@ -138,7 +138,7 @@ + + 혼합 규칙: + +-1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. ++1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 돋움(Dotum, `--hm-sw-header-font-family`), Web 기본 글꼴은 Noto Sans KR(`--hm-font-family-base`), OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 값을 다른 영역에 복사하지 않습니다. + 2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) +diff --git a/packages/sw/ai/AI_USAGE.md b/packages/sw/ai/AI_USAGE.md +index cb50552..b09a057 100644 +--- a/packages/sw/ai/AI_USAGE.md ++++ b/packages/sw/ai/AI_USAGE.md +@@ -102,8 +102,9 @@ import "@hm-design/sw/styles.css" // 앱 진입점에서 한 번 + - **금지:** `@hm-design/sw/src/...`, `@hm-design/sw/dist/components/...` 같은 내부 경로 Import. `dist`에 내부 모듈의 `.d.ts`가 보여도 공개 API가 아니다. + - Peer: `react`, `react-dom` `^19.0.0`. 런타임 dependency 없음. `@hm-design/ui`·조직도 패키지와 무관하다. + - SVG·PNG 자산은 JS에 data URI로 포함되어 별도 설정이 없다. +-- 글꼴 파일은 포함하지 않는다. 앱에서 Noto Sans KR(400/500/700)을 로드한다(없으면 Malgun Gothic → Apple SD Gothic Neo). +-- SW 기본 글꼴은 Noto Sans KR이다(Figma는 Dotum). **Dotum을 기본으로 쓸지는 디자인 승인 대기**이므로 AI가 임의로 Dotum을 적용하지 않는다. 프로그램(사용자)이 글꼴을 정한 경우에만 §3.1 방법으로 `--hm-sw-header-font-family`를 바꾸고, 결과 보고에 "글꼴 변경 — 디자인 승인 대기 항목"으로 적는다. ++- SW 기본 글꼴은 돋움(Dotum)이다(`--hm-sw-header-font-family: Dotum, "돋움", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif`, Figma와 같음). 설치된 시스템 글꼴(Windows)을 쓰며 패키지는 글꼴 파일을 포함하지 않는다. 돋움이 없는 환경은 Malgun Gothic → Apple SD Gothic Neo로 대체된다. 앱이 별도 글꼴 파일을 로드할 필요는 없다. ++- SW 화면은 `SWTheme`(또는 SW 컴포넌트 루트)와 SW 토큰의 글꼴을 그대로 쓴다. Web UI의 기본 글꼴(Noto Sans KR, `--hm-font-family-base`)이나 Web `theme.css`의 글꼴 설정을 SW 화면에 복사하지 않고, SW 컴포넌트에 `font-family`를 개별 지정하지 않는다. 프로그램(사용자)이 다른 글꼴을 정한 경우에만 §3.1 방법으로 `--hm-sw-header-font-family`를 바꾸고 결과 보고에 "글꼴 변경"으로 적는다. ++- 돋움에는 Bold 글꼴이 없어 700은 브라우저가 합성 Bold로 그리며 글자당 약 1px 넓어진다. Figma 고정 폭 칸(예: 가중치·스케일 38px, 레이어 값, 문자/치수스타일)에 긴 값이 들어가면 말줄임이 된다. + - CSS는 전역(`html`, `body`, `*`)을 건드리지 않는다. `body` margin 등 페이지 기본값은 소비 앱이 정한다. + - 스크롤바: SW 전용 스크롤바 디자인은 없다. 기존 SW 컴포넌트는 브라우저 기본 스크롤바를 쓰며(속성Bar만 `scrollbar-width: thin`), Popup 본문 스크롤은 `SWPopup`이 처리한다. 새 스크롤 영역에 임의 스크롤바 색·두께를 만들지 않는다. + - TypeScript에서 CSS side-effect import 오류가 나면 Vite의 `vite/client` 타입을 포함한다. +@@ -122,7 +123,7 @@ SW 토큰(`--hm-sw-header-*`, `--hm-sw-property-*`, `--hm-sw-viewer-*`, `--hm-sw + + 1. 화면 전체(Header·Panel·Menu가 같은 값)를 바꾸려면 화면을 `` 하나로 감싸고 거기서만 토큰을 정합니다. 프로그램 class(`` + `.app-sw-theme { --hm-sw-header-font-family: … }`)도 됩니다. + ```tsx +- const appSWTheme = { "--hm-sw-header-font-family": '"Noto Sans KR", sans-serif' } as CSSProperties ++ const appSWTheme = { "--hm-sw-header-font-family": '"Malgun Gothic", sans-serif' } as CSSProperties // 프로그램이 정한 값만 + + {/* Dropdown·More 포함 */} + … +diff --git a/packages/sw/ai/COMPOSITION_PATTERNS.md b/packages/sw/ai/COMPOSITION_PATTERNS.md +index 891e8f9..ad08596 100644 +--- a/packages/sw/ai/COMPOSITION_PATTERNS.md ++++ b/packages/sw/ai/COMPOSITION_PATTERNS.md +@@ -235,7 +235,7 @@ const sections: SWHomeMenuSectionData[] = [ + 일반·뷰어 모드 공통입니다. 토큰 기본값은 가장 바깥 SW 범위에서만 선언되고 안쪽 SW 요소는 상속합니다([AI_USAGE.md](./AI_USAGE.md) §3.1). + + ```tsx +-const appSWTheme = { "--hm-sw-header-font-family": '"Noto Sans KR", sans-serif' } as CSSProperties // 프로그램이 정한 값만 ++const appSWTheme = { "--hm-sw-header-font-family": '"Malgun Gothic", sans-serif' } as CSSProperties // 프로그램이 정한 값만 + + {/* 가장 바깥 범위: 여기서만 지정 */} + {/* Dropdown·More까지 상속 */} +@@ -246,7 +246,7 @@ const appSWTheme = { "--hm-sw-header-font-family": '"Noto Sans KR", sans-serif' + ``` + + - 일반 모드도 같습니다: `` 안의 `SWHeader`(Dropdown·창 이동 Tooltip)·`SWFooter`(`SWFooterCommandLine`·명령 등록 안내)가 같은 값을 씁니다. +-- 기본 글꼴은 Noto Sans KR입니다. Dotum 기본 적용은 디자인 승인 대기이므로 AI가 임의로 Dotum을 넣지 않습니다. ++- 기본 글꼴은 돋움(Dotum)입니다. 기본값을 쓸 때는 글꼴 토큰을 지정하지 않습니다. Web UI 글꼴(Noto Sans KR)을 SW 화면에 넣지 않습니다. + - `hm-sw-*` class 선택자로 토큰을 덮거나 `!important`, 컴포넌트마다 같은 값 반복 지정을 하지 않습니다. + + ## 9. 하지 말 것 +diff --git a/packages/sw/ai/DESIGN_RULES.md b/packages/sw/ai/DESIGN_RULES.md +index 85ac0be..437eda1 100644 +--- a/packages/sw/ai/DESIGN_RULES.md ++++ b/packages/sw/ai/DESIGN_RULES.md +@@ -44,7 +44,7 @@ + + | 항목 | 값 | + |---|---| +-| 글꼴 | Noto Sans KR → Malgun Gothic → Apple SD Gothic Neo (`--hm-sw-header-font-family`, Figma Dotum 대체 — 현재 패키지 기본값). 폰트 파일은 앱이 로드. **Dotum 기본 적용 여부는 디자인 승인 대기**: 기본값을 바꾸지 않으며, 프로그램이 정한 경우에만 [AI_USAGE.md](./AI_USAGE.md) §3.1 방법으로 변경 | ++| 글꼴 | 돋움(Dotum) → Malgun Gothic → Apple SD Gothic Neo (`--hm-sw-header-font-family: Dotum, "돋움", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif`, Figma와 같음, 2026-10-20). 설치된 시스템 글꼴을 쓰며 글꼴 파일은 포함하지 않음. Web UI 기본 글꼴(Noto Sans KR)과 별개. 다른 글꼴은 프로그램이 정한 경우에만 [AI_USAGE.md](./AI_USAGE.md) §3.1 방법으로 변경. 돋움 700은 합성 Bold(글자당 약 +1px) | + | 기본 / 라벨 | 14px / 12px (`--hm-sw-header-font-size` / `--hm-sw-header-label-size`) | + | Weight | 400, 500, 700만 사용(600 없음). 값·제목·토글 700 | + | 자간 | 값 0.04em, 라벨 0.02em, 파일명 0.06em | +@@ -180,7 +180,7 @@ Container `hm-sw-header` 기준 Breakpoint: **< 1800** 선/문자/치수스타 + + ## 13. Footer (`SWFooter*`, Figma 26:10097) — SW 일반 모드 전용 + +-원본 `src/theme/sw-footer.css`. 토큰은 `--hm-sw-footer-*`(`.hm-sw-header`, `.hm-sw-theme` 범위). 값은 Figma Plugin API로 읽은 값입니다(2026-10-20). 글꼴은 Header와 같이 Dotum 대신 Noto Sans KR, 글자 외곽선은 Header 토큰(`--hm-sw-header-text-outline` 1.3px / `--hm-sw-header-label-outline` 1px)을 공유하고, Figma의 자기 색 0.3 / 0.4px stroke는 Header 2026-10-16 수정과 같이 그리지 않습니다. ++원본 `src/theme/sw-footer.css`. 토큰은 `--hm-sw-footer-*`(`.hm-sw-header`, `.hm-sw-theme` 범위). 값은 Figma Plugin API로 읽은 값입니다(2026-10-20). 글꼴은 Header와 같은 SW 기본 글꼴(돋움), 글자 외곽선은 Header 토큰(`--hm-sw-header-text-outline` 1.3px / `--hm-sw-header-label-outline` 1px)을 공유하고, Figma의 자기 색 0.3 / 0.4px stroke는 Header 2026-10-16 수정과 같이 그리지 않습니다. + + | 항목 | 값 | 토큰 | + |---|---|---| +diff --git a/packages/sw/ai/VIEWER.md b/packages/sw/ai/VIEWER.md +index 6c76a21..4fdae42 100644 +--- a/packages/sw/ai/VIEWER.md ++++ b/packages/sw/ai/VIEWER.md +@@ -101,7 +101,7 @@ const groups: SWViewerHeaderGroup[] = [ + | 뷰어 Header를 `div` + `button`으로 다시 만들기, `hm-sw-viewer-*` class를 소비 코드에 붙이기 | 데이터(`groups`)와 `custom` / `trailing`으로 구성 | + | Header 버튼 글자에 `-webkit-text-stroke`·`border`로 외곽선 만들기 | 외곽선은 패키지 토큰이 이미 적용합니다 | + | 메뉴 색·간격을 `#123456`, `margin` 등 임의 값으로 덮기 | 토큰 `--hm-sw-viewer-*` / `--hm-sw-header-*`만 가장 바깥 SW 범위(`` 또는 단독 컴포넌트 루트)의 `style`로 조정(기본값 유지 권장, [AI_USAGE.md](./AI_USAGE.md) §3.1) | +-| Header·Dropdown·More·Panel의 글꼴을 각각 따로 지정, `.hm-sw-viewer-menu` 등 class로 덮기 | 화면을 `` 하나로 감싸면 Header·Dropdown·More·Panel이 같은 값을 상속합니다. 글꼴 기본값은 Noto Sans KR이며 Dotum 기본 적용은 디자인 승인 대기 | ++| Header·Dropdown·More·Panel의 글꼴을 각각 따로 지정, `.hm-sw-viewer-menu` 등 class로 덮기 | 화면을 `` 하나로 감싸면 Header·Dropdown·More·Panel이 같은 값을 상속합니다. 글꼴 기본값은 돋움(Dotum)이며 Web UI 글꼴(Noto Sans KR)을 복사하지 않습니다 | + | 존재하지 않는 Props 추측(`items`, `content`, `renderBody` …) | 위 표와 `dist/index.d.ts`가 전부 | + | 일반 모드 화면에서 `SWViewerHeader` 사용, 뷰어에서 `SWHeader` 재스타일 | 모드별 Header를 바꿔 끼웁니다 | + | 기능 없는 메뉴를 가짜 동작으로 연결 | 항목 제외 또는 `disabled` + 미연결 보고 | +diff --git a/packages/sw/ai/examples/ExampleJ-Theme.tsx b/packages/sw/ai/examples/ExampleJ-Theme.tsx +index 3b1d240..91bc5e9 100644 +--- a/packages/sw/ai/examples/ExampleJ-Theme.tsx ++++ b/packages/sw/ai/examples/ExampleJ-Theme.tsx +@@ -1,8 +1,8 @@ + // Example J — SW theme tokens (both modes). The only official way to change SW tokens: `style` (or the program's own + // class) on the OUTERMOST SW scope. Here one wraps the viewer screen, so the header, its dropdowns, More, + // and every panel read the same value. Portals leave the DOM tree: wrap their content in with the same style. +-// The font below is a placeholder for a program decision: the SW default stays Noto Sans KR (a Dotum default is +-// pending design approval), so only set it when the program has decided to. ++// The font below is a placeholder for a program decision: the SW default is Dotum (2026-10-20) and needs no token, ++// so only set it when the program has decided on another font. Never copy the Web UI font (Noto Sans KR) here. + import { useState, type CSSProperties } from "react" + import { createPortal } from "react-dom" + import { +@@ -12,7 +12,7 @@ import { + + /** One theme object for the screen and for every portal. Token names only (`--hm-sw-*`), never `hm-sw-*` classes. */ + export const appSWTheme = { +- "--hm-sw-header-font-family": '"Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif', ++ "--hm-sw-header-font-family": '"Malgun Gothic", "Apple SD Gothic Neo", sans-serif', + } as CSSProperties + + export function ExampleJTheme({ onEvent }: { onEvent?: (name: string) => void }) { +diff --git a/packages/sw/src/theme/sw-footer.css b/packages/sw/src/theme/sw-footer.css +index 41f13b1..9e63565 100644 +--- a/packages/sw/src/theme/sw-footer.css ++++ b/packages/sw/src/theme/sw-footer.css +@@ -1,6 +1,6 @@ + /* @hm-design/sw — SW Footer (Figma "레이아웃 분리" 26:10097 bottom bar, components 26:9459 … 26:10097, read + through the Figma Plugin API 2026-10-20). Footer-only tokens. Text keeps the SW typography of sw.css +- (Noto Sans KR instead of Dotum, black OUTSIDE outline as 16 text-shadows, own-color 0.3 / 0.4px strokes removed ++ (Dotum like Figma since 2026-10-20, black OUTSIDE outline as 16 text-shadows, own-color 0.3 / 0.4px strokes removed + like the 2026-10-16 header fix). Never touches global selectors, SWHeader or SWPopup classes. + Declared on the outermost SW scope only, like sw.css: the command line inside the bar inherits the tokens. */ + +diff --git a/packages/sw/src/theme/sw.css b/packages/sw/src/theme/sw.css +index ad511f5..27441bb 100644 +--- a/packages/sw/src/theme/sw.css ++++ b/packages/sw/src/theme/sw.css +@@ -17,8 +17,10 @@ + --hm-sw-header-logo-width: 32px; + --hm-sw-header-logo-height: 17px; + +- /* Typography (Figma Dotum is replaced by Noto Sans KR on purpose) */ +- --hm-sw-header-font-family: "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif; ++ /* Typography: SW default is Dotum like Figma (2026-10-20). Installed system font only (Windows gulim.ttc); the ++ package ships no font file. Malgun Gothic / Apple SD Gothic Neo cover systems without Dotum. Web UI keeps ++ Noto Sans KR (its own token); this token never leaves the SW scope. */ ++ --hm-sw-header-font-family: Dotum, "돋움", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif; + --hm-sw-header-font-size: 14px; + --hm-sw-header-label-size: 12px; + +@@ -539,7 +541,9 @@ + flex: 0 1 90px; + min-width: 0; + margin-left: -1px; +- padding: 0 8px; ++ /* 4px (was 8px): Dotum has no bold face, so 700 is synthesized ~1px wider per glyph ("그리기모드" 77.8px); ++ the centered label fits the Figma 90px cell again. */ ++ padding: 0 4px; + overflow: hidden; + text-align: center; + white-space: nowrap; +diff --git a/packages/sw/tests/ai-template-consumer.browser.mjs b/packages/sw/tests/ai-template-consumer.browser.mjs +index b4b1abf..ad917cc 100644 +--- a/packages/sw/tests/ai-template-consumer.browser.mjs ++++ b/packages/sw/tests/ai-template-consumer.browser.mjs +@@ -41,7 +41,7 @@ await page.evaluate(() => document.fonts.ready) + const assets = await page.evaluate(() => [...document.images].map(image => ({ src: image.currentSrc.slice(0, 30), ok: image.complete && image.naturalWidth > 0 }))) + check("1 all SVG/PNG assets decode (data URI, no external path)", assets.length > 0 && assets.every(item => item.ok && item.src.startsWith("data:")), { count: assets.length, broken: assets.filter(item => !item.ok) }) + const tokens = await page.evaluate(() => { const s = getComputedStyle(document.querySelector('[data-example="b"] .hm-sw-theme')); return { height: s.getPropertyValue("--hm-sw-header-height").trim(), font: s.fontFamily } }) +-check("1 styles.css loaded; SWTheme provides tokens", tokens.height === "49px" && tokens.font.includes("Noto Sans KR"), tokens) ++check("1 styles.css loaded; SWTheme provides tokens", tokens.height === "49px" && tokens.font.startsWith("Dotum"), tokens) + + // 2. Example A: default header unchanged (Figma 1920 coordinates) + const a = section("a") +diff --git a/packages/sw/tests/theme-inheritance.browser.mjs b/packages/sw/tests/theme-inheritance.browser.mjs +index 007855e..1e6ebab 100644 +--- a/packages/sw/tests/theme-inheritance.browser.mjs ++++ b/packages/sw/tests/theme-inheritance.browser.mjs +@@ -1,7 +1,7 @@ + // SW theme token inheritance (2026-10-20, A-1). + // 1) SW/Theme › Theme Inheritance: a token set through `style` on the outermost SW scope reaches the header, dropdowns, + // More, panels, footer command line and tooltips; portals get it only when wrapped in a themed ; areas do +-// not mix; unthemed components keep Noto Sans KR. Dotum is a verification value only (not the SW default). ++// not mix; unthemed components keep the SW default Dotum (2026-10-20). Noto Sans KR is a verification value only. + // 2) Regression: every existing SW Story renders identically with the new cascade and with the legacy cascade + // (token blocks re-declared on every `.hm-sw-header, .hm-sw-theme`, i.e. the code before this change): computed + // font / color / geometry of every SW element and an element screenshot comparison. No Story sets an override, +@@ -22,9 +22,9 @@ const [storybook = 'http://127.0.0.1:6024', outArg] = process.argv.slice(2) + const out = path.resolve(outArg ?? 'docs/sw/theme-inheritance-qa') + await mkdir(out, { recursive: true }) + +-const VERIFY = 'Dotum, 돋움, sans-serif' ++const VERIFY = '"Noto Sans KR", sans-serif' + const NESTED = '"Malgun Gothic", sans-serif' +-const DEFAULT = '"Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif' ++const DEFAULT = 'Dotum, 돋움, "Malgun Gothic", "Apple SD Gothic Neo", sans-serif' + const results = [] + const check = (name, pass, detail = '') => { results.push({ name, result: pass ? 'PASS' : 'FAIL', detail }); console.log(`${pass ? 'PASS' : 'FAIL'} ${name}${detail ? ` — ${detail}` : ''}`) } + const errors = [] +@@ -67,52 +67,52 @@ const fmt = map => Object.entries(map).map(([family, count]) => `${count}× ${fa + + // Default (no theme): header, then its sample dropdown and More. + const def = scope('default') +- check('기본: 단독 SWViewerHeader = Noto Sans KR', only(await fonts(page, `${def} .hm-sw-viewer-header`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-header`))) ++ check('기본: 단독 SWViewerHeader = 기본 Dotum', only(await fonts(page, `${def} .hm-sw-viewer-header`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-header`))) + await page.locator(`${def} .hm-sw-viewer-header [aria-haspopup="menu"]`).first().click() + await page.waitForSelector(`${def} .hm-sw-viewer-menu`) +- check('기본: Dropdown = Noto Sans KR', only(await fonts(page, `${def} .hm-sw-viewer-menu`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-menu`))) ++ check('기본: Dropdown = 기본 Dotum', only(await fonts(page, `${def} .hm-sw-viewer-menu`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-menu`))) + await page.keyboard.press('Escape') + await page.locator(`${def} .hm-sw-viewer-header button[aria-label="추가 도구"]`).click() + await page.waitForSelector(`${def} .hm-sw-viewer-menu[data-surface="beige"]`) +- check('기본: More = Noto Sans KR', only(await fonts(page, `${def} .hm-sw-viewer-menu`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-menu`))) ++ check('기본: More = 기본 Dotum', only(await fonts(page, `${def} .hm-sw-viewer-menu`), DEFAULT), fmt(await fonts(page, `${def} .hm-sw-viewer-menu`))) + await page.keyboard.press('Escape') + + // Viewer, themed through . + const viewer = scope('viewer-themed') +- check('뷰어 테마: SWViewerHeader 전체 = Dotum', only(await fonts(page, `${viewer} .hm-sw-viewer-header`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-header`))) ++ check('뷰어 테마: SWViewerHeader 전체 = 검증 글꼴', only(await fonts(page, `${viewer} .hm-sw-viewer-header`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-header`))) + await page.locator(`${viewer} .hm-sw-viewer-header [aria-haspopup="menu"]`).first().click() + await page.waitForSelector(`${viewer} .hm-sw-viewer-menu`) +- check('뷰어 테마: Dropdown = Dotum', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) ++ check('뷰어 테마: Dropdown = 검증 글꼴', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) + await page.keyboard.press('Escape') + await page.locator(`${viewer} .hm-sw-viewer-header button[aria-label="추가 도구"]`).click() + await page.waitForSelector(`${viewer} .hm-sw-viewer-menu[data-surface="beige"]`) +- check('뷰어 테마: More = Dotum', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) ++ check('뷰어 테마: More = 검증 글꼴', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) + // A submenu of More, if any, is a nested menu inside a nested menu. + const sub = page.locator(`${viewer} .hm-sw-viewer-menu[data-surface="beige"] [aria-haspopup="menu"]`).first() + if (await sub.count()) { + await sub.hover() + await page.waitForTimeout(150) +- check('뷰어 테마: More 서브메뉴 = Dotum', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) ++ check('뷰어 테마: More 서브메뉴 = 검증 글꼴', only(await fonts(page, `${viewer} .hm-sw-viewer-menu`), VERIFY), fmt(await fonts(page, `${viewer} .hm-sw-viewer-menu`))) + } + await page.keyboard.press('Escape') + const panels = await page.locator(`${viewer} .hm-sw-viewer-panel`).count() +- check('뷰어 테마: SWViewerPanel(제목·입력·버튼·스위치·힌트) = Dotum', panels === 2 && only(await fonts(page, `${viewer} .hm-sw-viewer-panel`), VERIFY), `${panels} panels · ${fmt(await fonts(page, `${viewer} .hm-sw-viewer-panel`))}`) ++ check('뷰어 테마: SWViewerPanel(제목·입력·버튼·스위치·힌트) = 검증 글꼴', panels === 2 && only(await fonts(page, `${viewer} .hm-sw-viewer-panel`), VERIFY), `${panels} panels · ${fmt(await fonts(page, `${viewer} .hm-sw-viewer-panel`))}`) + await page.screenshot({ path: path.join(out, 'viewer-themed-more.png'), clip: await page.locator(viewer).boundingBox() }) + + // General mode: SWHeader (+ open layer dropdown, window-move tooltip), SWFooter (+ command line, guide tooltip). + const general = scope('general-themed') + const headerFonts = await fonts(page, `${general} .hm-sw-header`, '.hm-sw-header__motion-tooltip') +- check('일반 테마: SWHeader + 열린 레이어 Dropdown = Dotum (창 이동 Tooltip 별도)', only(headerFonts, VERIFY), fmt(headerFonts)) ++ check('일반 테마: SWHeader + 열린 레이어 Dropdown = 검증 글꼴 (창 이동 Tooltip 별도)', only(headerFonts, VERIFY), fmt(headerFonts)) + const tooltip = await page.locator(`${general} .hm-sw-header__motion-tooltip`).evaluate(element => getComputedStyle(element).fontFamily) + check('일반 테마: 창 이동 Tooltip = Inter → 테마 글꼴', tooltip === `Inter, ${VERIFY}`, tooltip) + const layerMenu = await page.locator(`${general} .hm-sw-header`).getByText('A-WALL').count() + check('일반 테마: 레이어 Dropdown이 열린 상태(목록 행 A-WALL 표시)', layerMenu > 0, `${layerMenu} row`) +- check('일반 테마: SWFooter = Dotum', only(await fonts(page, `${general} .hm-sw-footer`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer`))) +- check('일반 테마: 명령창(SWFooterCommandLine, 중첩 hm-sw-theme) = Dotum', only(await fonts(page, `${general} .hm-sw-footer-command`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer-command`))) ++ check('일반 테마: SWFooter = 검증 글꼴', only(await fonts(page, `${general} .hm-sw-footer`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer`))) ++ check('일반 테마: 명령창(SWFooterCommandLine, 중첩 hm-sw-theme) = 검증 글꼴', only(await fonts(page, `${general} .hm-sw-footer-command`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer-command`))) + await page.locator(`${general} .hm-sw-footer-add`).first().focus() + await page.waitForTimeout(150) + const guide = page.locator(`${general} .hm-sw-footer [role="tooltip"]`) +- check('일반 테마: 명령 등록 안내(Tooltip) = Dotum', (await guide.count()) > 0 && only(await fonts(page, `${general} .hm-sw-footer [role="tooltip"]`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer [role="tooltip"]`))) ++ check('일반 테마: 명령 등록 안내(Tooltip) = 검증 글꼴', (await guide.count()) > 0 && only(await fonts(page, `${general} .hm-sw-footer [role="tooltip"]`), VERIFY), fmt(await fonts(page, `${general} .hm-sw-footer [role="tooltip"]`))) + + // Portals. + const [plain, themed, insideSource] = await page.evaluate(() => { +@@ -122,15 +122,15 @@ const fmt = map => Object.entries(map).map(([family, count]) => `${count}× ${fa + !!document.querySelector('[data-theme-case="portal-source"] [data-portal]')] + }) + check('Portal: DOM이 테마 영역 밖에 렌더링됨', !insideSource) +- check('Portal: SWTheme만 감싸면 기본 글꼴(테마 미전달)', plain.startsWith('"Noto Sans KR"'), plain) ++ check('Portal: SWTheme만 감싸면 기본 글꼴(테마 미전달)', plain === DEFAULT, plain) + check('Portal: 같은 theme style의 SWTheme으로 감싸면 테마 적용', themed === VERIFY, themed) + + // Areas. + const area = name => fonts(page, `${scope(name)} .hm-sw-viewer-hint`) +- check('영역 A(Dotum)', only(await area('area-a'), VERIFY), fmt(await area('area-a'))) ++ check('영역 A(검증 글꼴)', only(await area('area-a'), VERIFY), fmt(await area('area-a'))) + check('영역 B(기본) — 옆 영역 값이 섞이지 않음', only(await area('area-b'), DEFAULT), fmt(await area('area-b'))) + const outer = await page.locator(`${scope('area-c')} > .hm-sw-viewer-hint`).evaluate(element => getComputedStyle(element).fontFamily) +- check('영역 C 바깥(Dotum)', outer === VERIFY, outer) ++ check('영역 C 바깥(검증 글꼴)', outer === VERIFY, outer) + check('영역 C 안쪽 SWTheme style(Malgun Gothic)만 안쪽에 적용', only(await area('area-c-nested'), NESTED), fmt(await area('area-c-nested'))) + await page.screenshot({ path: path.join(out, 'theme-inheritance-full.png'), fullPage: true }) + await page.close() +@@ -213,7 +213,7 @@ for (const width of [1920, 1440, 1180, 900, 560]) for (const id of ids) { + await page.waitForSelector(`${viewer} .hm-sw-viewer-menu[data-surface="beige"]`) + const more = await fonts(page, `${viewer} .hm-sw-viewer-menu`) + const command = await fonts(page, '[data-theme-case="general-themed"] .hm-sw-footer-command') +- check('대조: 기존 구조 주입 시 More·명령창이 Noto로 되돌아감(결함 재현)', only(more, DEFAULT) && only(command, DEFAULT), `More ${fmt(more)} · 명령창 ${fmt(command)}`) ++ check('대조: 기존 구조 주입 시 More·명령창이 기본 글꼴로 되돌아감(결함 재현)', only(more, DEFAULT) && only(command, DEFAULT), `More ${fmt(more)} · 명령창 ${fmt(command)}`) + await page.close() + } + const failedRegression = regression.filter(item => item.result !== 'PASS') +diff --git a/packages/ui/ai/AI_GUIDE.md b/packages/ui/ai/AI_GUIDE.md +index 8ac07f4..5fd7e42 100644 +--- a/packages/ui/ai/AI_GUIDE.md ++++ b/packages/ui/ai/AI_GUIDE.md +@@ -138,7 +138,7 @@ + + 혼합 규칙: + +-1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. ++1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 돋움(Dotum, `--hm-sw-header-font-family`), Web 기본 글꼴은 Noto Sans KR(`--hm-font-family-base`), OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 값을 다른 영역에 복사하지 않습니다. + 2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) +diff --git a/src/sw/sw-theme.stories.tsx b/src/sw/sw-theme.stories.tsx +index a389af1..bc4c2d8 100644 +--- a/src/sw/sw-theme.stories.tsx ++++ b/src/sw/sw-theme.stories.tsx +@@ -14,9 +14,9 @@ import "./sw-viewer-stories.css" + // SW theme token inheritance (2026-10-20). The official way to change SW tokens: set them through `style` (or the + // consumer's own class) on the OUTERMOST SW scope — around the screen, or the component root when it is + // used alone. Nested SW roots (viewer menus, More, panels, footer command line) inherit the value. +-// Dotum is used here ONLY to make the inheritance visible: it is NOT the SW default font (design approval pending). ++// The SW default font is Dotum (2026-10-20). Noto Sans KR is used here ONLY to make the inheritance visible. + const KICKER = "HM DESIGN SYSTEM / SW" +-const VERIFY_FONT = 'Dotum, "돋움", sans-serif' ++const VERIFY_FONT = '"Noto Sans KR", sans-serif' + const VERIFY_THEME = { "--hm-sw-header-font-family": VERIFY_FONT } as CSSProperties + const NESTED_THEME = { "--hm-sw-header-font-family": '"Malgun Gothic", sans-serif' } as CSSProperties + +@@ -77,8 +77,8 @@ export const ThemeInheritance: Story = { + render: () => ( + + SW 토큰은 가장 바깥 SW 범위(<SWTheme> 또는 단독 컴포넌트 루트)에서 한 번 선언되고, 안쪽 Dropdown·More·패널·명령창은 그 값을 상속합니다. 토큰은 가장 바깥 범위의 style로만 바꿉니다. 아래 Dotum은 상속 확인용 검증 값이며 SW 기본 글꼴(Noto Sans KR)은 바뀌지 않습니다(Dotum 기본 적용은 디자인 승인 대기).} /> +- ++ description={<>SW 토큰은 가장 바깥 SW 범위(<SWTheme> 또는 단독 컴포넌트 루트)에서 한 번 선언되고, 안쪽 Dropdown·More·패널·명령창은 그 값을 상속합니다. 토큰은 가장 바깥 범위의 style로만 바꿉니다. SW 기본 글꼴은 Dotum이며, 아래 Noto Sans KR은 상속 확인용 검증 값입니다.} /> ++ + + + +@@ -105,10 +105,10 @@ export const ThemeInheritance: Story = { + + +
+- 영역 A — 검증 글꼴(Dotum) +- 영역 B — 기본(Noto Sans KR) ++ 영역 A — 검증 글꼴(Noto Sans KR) ++ 영역 B — 기본(Dotum) + +- 영역 C 바깥 — Dotum ++ 영역 C 바깥 — Noto Sans KR + 영역 C 안쪽 — Malgun Gothic + +
diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-firefox.mjs b/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-firefox.mjs new file mode 100644 index 0000000..543d79d --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-firefox.mjs @@ -0,0 +1,58 @@ +// Installed Firefox (WebDriver BiDi) — real SW consumer: Dotum resolution, viewer chrome fonts, DWG load, menu/panel, +// Escape, responsive overflow. Usage: node viewer-firefox.mjs +import { spawn } from 'node:child_process' +import { mkdir, writeFile, rm } from 'node:fs/promises' +import path from 'node:path' +import os from 'node:os' +const [base = 'http://127.0.0.1:5391', outArg = 'viewer-verify-out'] = process.argv.slice(2) +const out = path.resolve(outArg); await mkdir(out, { recursive: true }) +const sleep = ms => new Promise(r => setTimeout(r, ms)) +const results = [], errors = [] +const check = (name, ok, data) => { results.push({ name, result: ok ? 'PASS' : 'FAIL', data }); console.log(ok ? 'PASS' : 'FAIL', name, data === undefined ? '' : JSON.stringify(data)) } +let version +for (const [width, height] of [[1400, 1000], [500, 800]]) { + const port = 9300 + Math.floor(Math.random() * 500) + const profile = path.join(os.tmpdir(), `sw-viewer-ff-${process.pid}-${width}`) + await mkdir(profile, { recursive: true }) + const ff = spawn('C:/Program Files/Mozilla Firefox/firefox.exe', ['--headless', '--no-remote', '--profile', profile, `--remote-debugging-port=${port}`], { stdio: 'ignore', env: { ...process.env, MOZ_HEADLESS_WIDTH: String(width), MOZ_HEADLESS_HEIGHT: String(height) } }) + let ws + for (let i = 0; i < 60 && !ws; i++) { await sleep(250); try { ws = await new Promise((res, rej) => { const s = new WebSocket(`ws://127.0.0.1:${port}/session`); s.onopen = () => res(s); s.onerror = rej }) } catch { ws = undefined } } + if (!ws) { check(`Firefox ${width}: BiDi session`, false); ff.kill(); continue } + let id = 0; const pending = new Map() + ws.onmessage = e => { const m = JSON.parse(e.data); if (m.id && pending.has(m.id)) { const { res, rej } = pending.get(m.id); pending.delete(m.id); m.type === 'error' ? rej(Error(m.message)) : res(m.result) } else if (m.method === 'log.entryAdded' && m.params.level === 'error') errors.push(`${width}: ${m.params.text}`) } + const send = (method, params = {}) => new Promise((res, rej) => { const n = ++id; pending.set(n, { res, rej }); ws.send(JSON.stringify({ id: n, method, params })) }) + try { + const session = await send('session.new', { capabilities: {} }); version = session.capabilities.browserVersion + await send('session.subscribe', { events: ['log.entryAdded'] }) + const context = (await send('browsingContext.getTree')).contexts[0].context + const ev = async expr => { const r = await send('script.evaluate', { expression: `JSON.stringify(${expr})`, target: { context }, awaitPromise: true }); if (r.type === 'exception') throw Error(r.exceptionDetails.text); return JSON.parse(r.result.value) } + const key = v => send('input.performActions', { context, actions: [{ type: 'key', id: 'k', actions: [{ type: 'keyDown', value: v }, { type: 'keyUp', value: v }] }] }) + await send('browsingContext.navigate', { context, url: `${base}/?model=${encodeURIComponent('/samples/civil.dwg')}`, wait: 'complete' }) + let st; for (let i = 0; i < 120; i++) { st = await ev('document.querySelector(".hm-sw-viewer-status")?.getAttribute("data-state")'); if (st && st !== 'loading' && st !== 'idle') break; await sleep(250) } + await sleep(800) + check(`Firefox ${width}: civil.dwg loads (status)`, st === 'ready', st) + const dotum = await ev(`(() => { const c = document.createElement('canvas').getContext('2d'); const t = '그리기모드 Standard 1.00'; c.font = '14px Dotum'; const a = c.measureText(t).width; c.font = '14px "Malgun Gothic"'; const b = c.measureText(t).width; c.font = '14px monospace'; const m = c.measureText(t).width; return { dotum: +a.toFixed(1), malgun: +b.toFixed(1), mono: +m.toFixed(1) } })()`) + check(`Firefox ${width}: Dotum resolves to an installed face (width differs from fallbacks)`, dotum.dotum !== dotum.malgun && dotum.dotum !== dotum.mono, dotum) + const fonts = await ev(`(() => { const m = {}; for (const e of document.querySelectorAll('.hm-sw-viewer-header *')) { if (![...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())) continue; const f = getComputedStyle(e).fontFamily.split(',')[0].replace(/"/g, ''); m[f] = (m[f] ?? 0) + 1 } return m })()`) + check(`Firefox ${width}: SWViewerHeader computed font = Dotum`, Object.keys(fonts).length > 0 && Object.keys(fonts).every(f => f === 'Dotum'), fonts) + const layout = await ev(`(() => { const h = document.querySelector('.hm-sw-viewer-header'); return { header: h.scrollWidth - h.clientWidth, page: document.documentElement.scrollWidth - innerWidth, more: !!document.querySelector('.hm-sw-viewer-header__more'), h: h.getBoundingClientRect().height } })()`) + check(`Firefox ${width}: no horizontal overflow`, layout.header <= 1 && layout.page <= 1, layout) + // Open a header menu (샘플, or More at narrow widths) and close with Escape. + await ev(`(() => { const b = [...document.querySelectorAll('.hm-sw-viewer-header button')].find(e => e.textContent.trim() === '샘플') ?? document.querySelector('.hm-sw-viewer-header__more'); b.click(); return !!b })()`); await sleep(200) + const menu = await ev(`(() => { const m = document.querySelector('.hm-sw-viewer-menu'); return m ? { items: m.querySelectorAll('button').length, font: getComputedStyle(m.querySelector('button')).fontFamily.split(',')[0] } : null })()`) + check(`Firefox ${width}: header menu opens (Dotum)`, !!menu && menu.items > 0 && menu.font === 'Dotum', menu) + await key('\uE00C'); await sleep(200) + check(`Firefox ${width}: Escape closes the menu`, await ev('!document.querySelector(".hm-sw-viewer-menu")')) + // Options panel (via the header toggle, or More when collapsed). + const opened = await ev(`(() => { const t = [...document.querySelectorAll('.hm-sw-viewer-header button')].find(e => e.textContent.trim() === '설정'); if (t && t.getClientRects().length) { t.click(); return 'toggle' } document.querySelector('.hm-sw-viewer-header__more')?.click(); return 'more' })()`); await sleep(250) + if (opened === 'more') { await ev(`(() => { const i = [...document.querySelectorAll('.hm-sw-viewer-menu [role^=menuitem]')].find(e => e.textContent.includes('설정')); i?.click(); return !!i })()`); await sleep(250) } + const panel = await ev(`(() => { const p = [...document.querySelectorAll('.hm-sw-viewer-panel')].find(e => e.textContent.includes('옵션')); if (!p) return null; const b = p.querySelector('.hm-sw-property__body'); const r = p.getBoundingClientRect(); const clipped = [...p.querySelectorAll('*')].filter(e => { if (![...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())) return false; const cs = getComputedStyle(e); if (cs.overflowX === 'visible' && cs.textOverflow !== 'ellipsis') return false; const g = document.createRange(); g.selectNodeContents(e); return g.getBoundingClientRect().width > e.clientWidth - parseFloat(cs.paddingLeft) - parseFloat(cs.paddingRight) + 0.5 }).length; return { w: Math.round(r.width), h: Math.round(r.height), font: getComputedStyle(p).fontFamily.split(',')[0], scroll: b.scrollHeight > b.clientHeight, clipped, inView: r.right <= innerWidth + 1 } })()`) + check(`Firefox ${width}: options SWViewerPanel opens, Dotum, scrollable body, no clipped text`, !!panel && panel.font === 'Dotum' && panel.clipped === 0, { opened, panel }) + await writeFile(path.join(out, `firefox-${width}.png`), Buffer.from((await send('browsingContext.captureScreenshot', { context })).data, 'base64')) + await send('session.end') + } catch (error) { check(`Firefox ${width}: suite completes`, false, error.message) } + ws.close(); ff.kill(); await sleep(400); await rm(profile, { recursive: true, force: true }).catch(() => {}) +} +check('Firefox: no console errors (favicon 404 excluded)', errors.filter(e => !/favicon/i.test(e)).length === 0, errors.slice(0, 5)) +await writeFile(path.join(out, 'firefox-result.json'), JSON.stringify({ base, version, results, errors }, null, 2)) +console.log(`Firefox ${version}: ${results.filter(r => r.result === 'PASS').length}/${results.length} PASS`) diff --git a/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-verify-run.mjs b/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-verify-run.mjs new file mode 100644 index 0000000..52700c3 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/consumer-viewer/viewer-verify-run.mjs @@ -0,0 +1,150 @@ +// Real SW consumer (HMDesignSwTest-viewer, isolated copy) — Dotum font, SW viewer chrome, DWG/DXF load, zoom/pan, +// panels (open/close/Escape/drag/resize/scroll/slider/switch), header menus/More, responsive. Chrome (+ Firefox basic). +// Usage: node viewer-verify-run.mjs [chromium|firefox] +import { createRequire } from 'node:module' +import path from 'node:path' +import { mkdir, writeFile } from 'node:fs/promises' +const require = createRequire(path.join('C:/Users/user/.cache/codex-runtimes/codex-primary-runtime/dependencies/node/node_modules', 'index.js')) +const pw = require('playwright') +const { PNG } = require('pngjs') +const [base = 'http://127.0.0.1:5391', outArg = 'viewer-verify-out', engine = 'chromium'] = process.argv.slice(2) +const out = path.resolve(outArg); await mkdir(out, { recursive: true }) +const results = []; const errors = []; const missingFavicon = [] +const check = (name, pass, detail = '') => { results.push({ name, result: pass ? 'PASS' : 'FAIL', detail }); console.log(`${pass ? 'PASS' : 'FAIL'} ${name}${detail !== '' ? ` — ${typeof detail === 'string' ? detail : JSON.stringify(detail)}` : ''}`) } +const browser = engine === 'firefox' ? await pw.firefox.launch({ headless: true }) : await pw.chromium.launch({ headless: true, executablePath: 'C:/Program Files/Google/Chrome/Application/chrome.exe' }) +const newPage = async (width = 1600, height = 1000) => { + const page = await browser.newPage({ viewport: { width, height } }) + page.on('pageerror', e => errors.push(`pageerror ${e.message}`)) + page.on('console', m => { if (m.type() === 'error' && !/favicon|Failed to load resource/.test(m.text())) errors.push(`console ${m.text()}`) }) + page.on('response', r => { if (r.status() >= 400) (r.url().endsWith('/favicon.ico') ? missingFavicon : errors).push(`HTTP ${r.status()} ${r.url()}`) }) + return page +} +const status = page => page.evaluate(() => document.querySelector('.hm-sw-viewer-status')?.getAttribute('data-state')) +const waitLoaded = async (page, timeout = 60000) => { await page.waitForFunction(() => { const s = document.querySelector('.hm-sw-viewer-status')?.getAttribute('data-state'); return s && s !== 'loading' && s !== 'idle' }, null, { timeout }).catch(() => {}); await page.waitForTimeout(800); return status(page) } +const canvasStats = async page => { const buf = await page.locator('.viewer-canvas').screenshot(); const png = PNG.sync.read(buf); const seen = new Map(); let n = 0; for (let i = 0; i < png.data.length; i += 16) { const k = (png.data[i] >> 4) << 8 | (png.data[i + 1] >> 4) << 4 | png.data[i + 2] >> 4; seen.set(k, (seen.get(k) ?? 0) + 1); n++ } const top = Math.max(...seen.values()); return { colors: seen.size, nonBg: +(1 - top / n).toFixed(4), buf } } +const diffRatio = (a, b) => { const A = PNG.sync.read(a), B = PNG.sync.read(b); if (A.width !== B.width || A.height !== B.height) return 1; let d = 0; for (let i = 0; i < A.data.length; i += 4) if (Math.abs(A.data[i] - B.data[i]) + Math.abs(A.data[i + 1] - B.data[i + 1]) + Math.abs(A.data[i + 2] - B.data[i + 2]) > 30) d++; return d / (A.data.length / 4) } +const fontsOf = (page, sel) => page.evaluate(sel => { const m = {}; for (const r of document.querySelectorAll(sel)) for (const e of [r, ...r.querySelectorAll('*')]) { if (e.closest('svg')) continue; if (![...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim()) && !/^(BUTTON|INPUT)$/.test(e.tagName)) continue; const f = getComputedStyle(e).fontFamily.split(',')[0].replace(/"/g, ''); m[f] = (m[f] ?? 0) + 1 } return m }, sel) + +const page = await newPage() +await page.goto(base); await page.waitForSelector('.hm-sw-viewer-header'); await page.evaluate(() => document.fonts.ready); await page.waitForTimeout(500) +// --- Font / theme +const headerFonts = await fontsOf(page, '.hm-sw-viewer-header') +check('Font: SWViewerHeader text = Dotum (SW default)', Object.keys(headerFonts).length > 0 && Object.keys(headerFonts).every(f => f === 'Dotum' || f === 'ui-monospace'), headerFonts) +if (engine === 'chromium') { + const cdp = await page.context().newCDPSession(page); await cdp.send('DOM.enable'); await cdp.send('CSS.enable') + const { root } = await cdp.send('DOM.getDocument', { depth: -1 }); const { nodeIds } = await cdp.send('DOM.querySelectorAll', { nodeId: root.nodeId, selector: '.hm-sw-viewer-header *' }) + const agg = {}; for (const id of nodeIds) { const { fonts } = await cdp.send('CSS.getPlatformFontsForNode', { nodeId: id }); for (const f of fonts) agg[f.familyName] = (agg[f.familyName] ?? 0) + f.glyphCount } + check('Font: rendered platform font in header = Dotum (installed, no fallback)', Object.keys(agg).length > 0 && Object.keys(agg).every(f => f === 'Dotum'), agg) +} +const tokens = await page.evaluate(() => { const s = getComputedStyle(document.querySelector('.hm-sw-viewer-header')); return { font: s.getPropertyValue('--hm-sw-header-font-family').trim(), bg: s.getPropertyValue('--hm-sw-viewer-header-background').trim() || s.backgroundColor } }) +check('Theme: SW token --hm-sw-header-font-family = Dotum stack', tokens.font.startsWith('Dotum'), tokens) +const webFont = await page.evaluate(() => getComputedStyle(document.documentElement).getPropertyValue('--hm-font-family-base').trim()) +check('Web UI token --hm-font-family-base unchanged (Noto Sans KR)', webFont.startsWith('"Noto Sans KR"'), webFont) +await page.screenshot({ path: path.join(out, `${engine}-01-initial.png`) }) + +// --- DXF / DWG loading via the app's own ?model= path and the header sample menu +const loads = {} +for (const [label, url] of [['simple.dxf', '/samples/simple.dxf'], ['BasicSample.dwg', '/samples/BasicSample.dwg'], ['civil.dwg', '/samples/civil.dwg']]) { + const p = await newPage() + const t0 = Date.now(); await p.goto(`${base}/?model=${encodeURIComponent(url)}`); await p.waitForSelector('.hm-sw-viewer-header') + const st = await waitLoaded(p, 120000); const stats = await canvasStats(p) + const name = await p.evaluate(() => document.querySelector('.hm-sw-viewer-header__document-name')?.textContent?.trim() ?? '') + const tabs = await p.locator('.hm-sw-viewer-header__tab').count() + loads[label] = { status: st, ms: Date.now() - t0, colors: stats.colors, nonBg: stats.nonBg, name, tabs } + check(`Load ${label}: status ready + drawing pixels`, st && !/error/i.test(st) && stats.nonBg > 0.002, loads[label]) + await p.screenshot({ path: path.join(out, `${engine}-02-load-${label}.png`) }) + await p.close() +} + +// --- Sample menu (header dropdown) + Escape, then interactions on civil.dwg +await page.goto(`${base}/?model=${encodeURIComponent('/samples/civil.dwg')}`); await waitLoaded(page, 120000) +const before = await canvasStats(page) +// zoom (wheel) and pan (drag) on the canvas +const box = await page.locator('.viewer-canvas').boundingBox() +await page.mouse.move(box.x + box.width / 2, box.y + box.height / 2); await page.mouse.wheel(0, -600); await page.waitForTimeout(600) +const zoomed = await canvasStats(page) +check('Viewer: wheel zoom changes the drawing', diffRatio(before.buf, zoomed.buf) > 0.01, diffRatio(before.buf, zoomed.buf).toFixed(3)) +await page.mouse.move(box.x + box.width / 2, box.y + box.height / 2); await page.mouse.down({ button: 'middle' }); await page.mouse.move(box.x + box.width / 2 + 150, box.y + box.height / 2 + 80, { steps: 8 }); await page.mouse.up({ button: 'middle' }); await page.waitForTimeout(400) +let panned = await canvasStats(page) +if (diffRatio(zoomed.buf, panned.buf) <= 0.01) { await page.mouse.move(box.x + 300, box.y + 300); await page.mouse.down(); await page.mouse.move(box.x + 450, box.y + 380, { steps: 8 }); await page.mouse.up(); await page.waitForTimeout(400); panned = await canvasStats(page) } +check('Viewer: drag pan changes the view', diffRatio(zoomed.buf, panned.buf) > 0.01, diffRatio(zoomed.buf, panned.buf).toFixed(3)) +await page.keyboard.press('f'); await page.waitForTimeout(500) +const fitted = await canvasStats(page) +check('Viewer: F (fit) restores the full view', diffRatio(before.buf, fitted.buf) < diffRatio(before.buf, panned.buf), `${diffRatio(before.buf, fitted.buf).toFixed(3)} < ${diffRatio(before.buf, panned.buf).toFixed(3)}`) +// space tabs (model / layouts) +const tabCount = await page.locator('.hm-sw-viewer-header__tab').count() +if (tabCount > 1) { const other = page.locator('.hm-sw-viewer-header__tab:not([data-state="active"])').first(); const label = (await other.textContent()).trim(); await other.click(); await page.waitForTimeout(1500); const s2 = await canvasStats(page); const active = await page.locator('.hm-sw-viewer-header__tab[data-state="active"]').textContent(); check('Header: space tab switch (inactive → active) re-renders the canvas', active.trim() === label && diffRatio(fitted.buf, s2.buf) > 0.01, `${tabCount} tabs, now ${active.trim()}`); await page.locator('.hm-sw-viewer-header__tab:not([data-state="active"])').first().click(); await page.waitForTimeout(1000) } +else check('Header: space tabs (only one space in civil.dwg)', true, `${tabCount} tab`) + +// Header menu: 샘플 dropdown +await page.getByRole('button', { name: /샘플/ }).first().click() +const menuOpen = await page.locator('.hm-sw-viewer-menu').count() +const menuFonts = await fontsOf(page, '.hm-sw-viewer-menu') +check('Header: 샘플 dropdown opens (SWViewerMenu) with Dotum', menuOpen > 0 && Object.keys(menuFonts).every(f => f === 'Dotum'), menuFonts) +await page.screenshot({ path: path.join(out, `${engine}-03-sample-menu.png`) }) +await page.keyboard.press('Escape'); await page.waitForTimeout(200) +check('Header: Escape closes the dropdown', (await page.locator('.hm-sw-viewer-menu').count()) === 0) +// load simple.dxf from the menu +await page.getByRole('button', { name: /샘플/ }).first().click(); await page.getByRole('menuitem', { name: 'simple.dxf' }).click() +const st2 = await waitLoaded(page) +const name2 = await page.evaluate(() => document.querySelector('.hm-sw-viewer-header__document-name')?.textContent?.trim()) +check('Header: sample menu loads simple.dxf', /simple\.dxf/.test(name2 ?? '') && !/error/i.test(st2 ?? ''), `${name2} / ${st2}`) + +// 2.5D switch +const s25 = page.getByRole('switch', { name: '2.5D' }).first() +if (await s25.count()) { const a = await canvasStats(page); await s25.click(); await page.waitForTimeout(800); const b = await canvasStats(page); check('Viewer: 2.5D switch toggles and re-renders', (await s25.getAttribute('aria-checked')) === 'true' && diffRatio(a.buf, b.buf) > 0.002, diffRatio(a.buf, b.buf).toFixed(4)); await s25.click(); await page.waitForTimeout(500) } + +// Panels: 설정 (options) — open, fonts, slider, switch, drag, resize, scroll, Escape/close +await page.getByRole('button', { name: '설정' }).first().click(); await page.waitForTimeout(300) +const panel = page.locator('.hm-sw-viewer-panel').filter({ hasText: '옵션' }).first() +check('Panel: 설정 opens SWViewerPanel', await panel.isVisible()) +const pf = await fontsOf(page, '.hm-sw-viewer-panel') +check('Panel: text = Dotum (program list cells keep their monospace)', Object.keys(pf).every(f => f === 'Dotum' || f === 'ui-monospace'), pf) +const slider = panel.locator('input[type="range"]').nth(1) +const v0 = await slider.inputValue(); await slider.focus(); await page.keyboard.press('ArrowRight'); await page.keyboard.press('ArrowRight'); await page.waitForTimeout(150) +const v1 = await slider.inputValue(); const num = await panel.locator('input[type="number"]').nth(1).inputValue() +check('Panel: SWViewerSlider changes value and syncs the number input', Number(v1) > Number(v0) && Number(num) === Number(v1), `${v0} → ${v1}, input ${num}`) +const sw = panel.getByRole('switch').nth(1); const c0 = await sw.getAttribute('aria-checked'); await sw.click(); const c1 = await sw.getAttribute('aria-checked'); await sw.click() +check('Panel: SWViewerSwitch toggles (그리드)', c0 !== c1, `${c0} → ${c1}`) +const pb0 = await panel.boundingBox(); const title = panel.locator('.hm-sw-property__title').first() +const tb = await title.boundingBox(); await page.mouse.move(tb.x + 40, tb.y + tb.height / 2); await page.mouse.down(); await page.mouse.move(tb.x - 160, tb.y + 120, { steps: 10 }); await page.mouse.up(); await page.waitForTimeout(200) +const pb1 = await panel.boundingBox() +check('Panel: title drag moves the panel', Math.abs(pb1.x - pb0.x) > 100 && Math.abs(pb1.y - pb0.y) > 60, `(${Math.round(pb0.x)},${Math.round(pb0.y)}) → (${Math.round(pb1.x)},${Math.round(pb1.y)})`) +const grip = panel.locator('.hm-sw-viewer-panel__resize') +if (await grip.count()) { const gb = await grip.boundingBox(); await page.mouse.move(gb.x + gb.width / 2, gb.y + gb.height / 2); await page.mouse.down(); await page.mouse.move(gb.x + 80, gb.y - 160, { steps: 10 }); await page.mouse.up(); await page.waitForTimeout(200); const pb2 = await panel.boundingBox(); check('Panel: resize grip changes size', Math.round(pb2.width - pb1.width) > 40 && Math.round(pb1.height - pb2.height) > 80, `${Math.round(pb1.width)}×${Math.round(pb1.height)} → ${Math.round(pb2.width)}×${Math.round(pb2.height)}`) } +else check('Panel: resize grip (not resizable in this program)', true, 'resizable=false') +const body = panel.locator('.hm-sw-property__body') +const sc = await body.evaluate(e => { const before = e.scrollTop; e.scrollTop = 9999; return { scrollable: e.scrollHeight > e.clientHeight, before, after: e.scrollTop, overflowX: e.scrollWidth > e.clientWidth + 1 } }) +check('Panel: body scrolls vertically, no horizontal overflow', sc.scrollable && sc.after > sc.before && !sc.overflowX, sc) +const clipped = await panel.evaluate(p => [...p.querySelectorAll('*')].filter(e => { const own = [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim()); if (!own) return false; const cs = getComputedStyle(e); if (cs.overflowX === 'visible' && cs.textOverflow !== 'ellipsis') return false; const r = document.createRange(); r.selectNodeContents(e); return r.getBoundingClientRect().width > e.clientWidth - parseFloat(cs.paddingLeft) - parseFloat(cs.paddingRight) + 0.5 }).map(e => e.textContent.trim().slice(0, 30))) +check('Panel: no clipped text after Dotum', clipped.length === 0, clipped) +await page.screenshot({ path: path.join(out, `${engine}-04-options-panel.png`) }) +await panel.locator('input[type="number"]').first().focus(); await page.keyboard.press('Escape'); await page.waitForTimeout(200) +const afterEsc = await panel.isVisible().catch(() => false) +if (afterEsc) { await panel.getByRole('button', { name: /닫기/ }).first().click(); await page.waitForTimeout(200) } +check(`Panel: closes (${afterEsc ? 'close button — Escape is not wired by the program for non-modal panels' : 'Escape'})`, !(await panel.isVisible().catch(() => false))) +// 레이어 / 속성 panels + 정보(modal) Escape +await page.getByRole('button', { name: '레이어' }).first().click(); await page.waitForTimeout(300) +const lp = page.locator('.hm-sw-viewer-panel').filter({ hasText: '레이어' }).first() +check('Panel: 레이어 opens with layer rows', (await lp.isVisible()) && (await lp.locator('li').count()) > 0, `${await lp.locator('li').count()} rows`) +await page.getByRole('button', { name: '레이어' }).first().click(); await page.waitForTimeout(200) +await page.getByRole('button', { name: '정보 및 라이선스' }).click(); await page.waitForTimeout(300) +const about = page.locator('.hm-sw-viewer-panel[data-modal]').first() +const aboutOpen = await about.isVisible().catch(() => false) +await page.keyboard.press('Escape'); await page.waitForTimeout(200) +check('Panel: 정보 (modal) opens and Escape closes it', aboutOpen && !(await about.isVisible().catch(() => false)), `open=${aboutOpen}`) + +// Responsive header: More at narrow widths, no horizontal overflow +for (const w of [1920, 1180, 900, 560, 375]) { + await page.setViewportSize({ width: w, height: 900 }); await page.waitForTimeout(400) + const r = await page.evaluate(() => { const h = document.querySelector('.hm-sw-viewer-header'); return { overflow: h.scrollWidth > h.clientWidth + 1, doc: document.documentElement.scrollWidth > innerWidth + 1, more: !!document.querySelector('.hm-sw-viewer-header__more') } }) + check(`Responsive ${w}: header/page no horizontal overflow${r.more ? ' (More shown)' : ''}`, !r.overflow && !r.doc, r) + if (w === 900 || w === 375) { + await page.screenshot({ path: path.join(out, `${engine}-05-${w}.png`) }) + if (r.more) { await page.locator('.hm-sw-viewer-header__more').click(); await page.waitForTimeout(200); const items = await page.locator('.hm-sw-viewer-menu [role="menuitem"], .hm-sw-viewer-menu [role="menuitemcheckbox"], .hm-sw-viewer-menu button').count(); check(`Responsive ${w}: More opens with collapsed items`, items > 0, `${items} items`); await page.screenshot({ path: path.join(out, `${engine}-06-more-${w}.png`) }); await page.keyboard.press('Escape') } + } +} +check('Console / page / HTTP errors: none (favicon.ico 404 = program has no icon, pre-existing)', errors.length === 0, { errors: errors.slice(0, 6), favicon404: missingFavicon.length }) +await browser.close() +await writeFile(path.join(out, `${engine}-result.json`), JSON.stringify({ base, engine, loads, results, errors }, null, 2)) +console.log(`${results.filter(r => r.result === 'PASS').length}/${results.length} PASS`) diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/after-full-index.json b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/after-full-index.json new file mode 100644 index 0000000..af9d386 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/after-full-index.json @@ -0,0 +1,5572 @@ +{ + "v": 5, + "entries": { + "foundation-color--all": { + "type": "story", + "subtype": "story", + "id": "foundation-color--all", + "name": "Color", + "title": "Foundation/Color", + "importPath": "./src/foundation/color.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-typography--all": { + "type": "story", + "subtype": "story", + "id": "foundation-typography--all", + "name": "Typography", + "title": "Foundation/Typography", + "importPath": "./src/foundation/typography.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "foundation-layout--all": { + "type": "story", + "subtype": "story", + "id": "foundation-layout--all", + "name": "Layout", + "title": "Foundation/Layout", + "importPath": "./src/foundation/layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--all": { + "type": "story", + "subtype": "story", + "id": "components-form-button--all", + "name": "Button", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-button--roles": { + "type": "story", + "subtype": "story", + "id": "components-form-button--roles", + "name": "Roles", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Roles" + }, + "components-form-button--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-button--sizes", + "name": "Sizes", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-button--states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--states", + "name": "Brand States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-button--standard-states": { + "type": "story", + "subtype": "story", + "id": "components-form-button--standard-states", + "name": "Standard States", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandardStates" + }, + "components-form-button--long-label": { + "type": "story", + "subtype": "story", + "id": "components-form-button--long-label", + "name": "Long Label", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-form-button--korean-labels": { + "type": "story", + "subtype": "story", + "id": "components-form-button--korean-labels", + "name": "Korean Labels", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KoreanLabels" + }, + "components-form-button--icon-text-narrow": { + "type": "story", + "subtype": "story", + "id": "components-form-button--icon-text-narrow", + "name": "Icon Text Narrow", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconTextNarrow" + }, + "components-form-button--destructive": { + "type": "story", + "subtype": "story", + "id": "components-form-button--destructive", + "name": "Destructive", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-form-button--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-button--playground", + "name": "Playground", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-button--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-form-button--compatibility", + "name": "Compatibility", + "title": "Components/Form/Button", + "importPath": "./src/components/button.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-form-input--all": { + "type": "story", + "subtype": "story", + "id": "components-form-input--all", + "name": "Input", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-input--default": { + "type": "story", + "subtype": "story", + "id": "components-form-input--default", + "name": "Default", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-input--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--focus", + "name": "Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-input--error": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error", + "name": "Error", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-input--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-input--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-input--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-input--error-message", + "name": "Error Message", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-input--required": { + "type": "story", + "subtype": "story", + "id": "components-form-input--required", + "name": "Required", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-input--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-input--disabled", + "name": "Disabled", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-input--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-input--readonly", + "name": "Readonly", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-input--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-input--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-input--small": { + "type": "story", + "subtype": "story", + "id": "components-form-input--small", + "name": "Small", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Small" + }, + "components-form-input--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-input--medium", + "name": "Medium", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-input--large": { + "type": "story", + "subtype": "story", + "id": "components-form-input--large", + "name": "Large", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-input--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-input--playground", + "name": "Playground", + "title": "Components/Form/Input", + "importPath": "./src/components/input.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-textarea--all": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--all", + "name": "Textarea", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-textarea--default": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--default", + "name": "Default", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-textarea--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--focus", + "name": "Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-textarea--error": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error", + "name": "Error", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-textarea--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "InvalidFocus" + }, + "components-form-textarea--error-message": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--error-message", + "name": "Error Message", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ErrorMessage" + }, + "components-form-textarea--required": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--required", + "name": "Required", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Required" + }, + "components-form-textarea--readonly": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--readonly", + "name": "Readonly", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Readonly" + }, + "components-form-textarea--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--disabled", + "name": "Disabled", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-textarea--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--long-content", + "name": "Long Content", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-textarea--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-textarea--playground", + "name": "Playground", + "title": "Components/Form/Textarea", + "importPath": "./src/components/textarea.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-select--all": { + "type": "story", + "subtype": "story", + "id": "components-form-select--all", + "name": "Select", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-select--default": { + "type": "story", + "subtype": "story", + "id": "components-form-select--default", + "name": "Default", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-form-select--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-form-select--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-form-select--open": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open", + "name": "Open", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-form-select--selected": { + "type": "story", + "subtype": "story", + "id": "components-form-select--selected", + "name": "Selected", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-form-select--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-select--disabled", + "name": "Disabled", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-select--sizes": { + "type": "story", + "subtype": "story", + "id": "components-form-select--sizes", + "name": "Compare Sizes", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sizes" + }, + "components-form-select--medium": { + "type": "story", + "subtype": "story", + "id": "components-form-select--medium", + "name": "Medium", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Medium" + }, + "components-form-select--large": { + "type": "story", + "subtype": "story", + "id": "components-form-select--large", + "name": "Large", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Large" + }, + "components-form-select--long-content": { + "type": "story", + "subtype": "story", + "id": "components-form-select--long-content", + "name": "Long Content", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-form-select--open-large-short": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-short", + "name": "Open Large Short", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeShort" + }, + "components-form-select--open-medium-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-medium-long", + "name": "Open Medium Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenMediumLong" + }, + "components-form-select--open-large-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-large-long", + "name": "Open Large Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenLargeLong" + }, + "components-form-select--open-top": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top", + "name": "Open Top", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-form-select--open-top-long": { + "type": "story", + "subtype": "story", + "id": "components-form-select--open-top-long", + "name": "Open Top Long", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTopLong" + }, + "components-form-select--list-size-comparison": { + "type": "story", + "subtype": "story", + "id": "components-form-select--list-size-comparison", + "name": "Medium Trigger / List Size Comparison", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ListSizeComparison" + }, + "components-form-select--scroll": { + "type": "story", + "subtype": "story", + "id": "components-form-select--scroll", + "name": "Scroll", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "components-form-select--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-select--playground", + "name": "Playground", + "title": "Components/Form/Select", + "importPath": "./src/components/select.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-checkbox--all": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--all", + "name": "Checkbox", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-checkbox--unchecked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--unchecked", + "name": "Unchecked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Unchecked" + }, + "components-form-checkbox--checked": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--checked", + "name": "Checked", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Checked" + }, + "components-form-checkbox--indeterminate": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--indeterminate", + "name": "Indeterminate", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Indeterminate" + }, + "components-form-checkbox--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--disabled", + "name": "Disabled", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-checkbox--error": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--error", + "name": "Error", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-checkbox--playground": { + "type": "story", + "subtype": "story", + "id": "components-form-checkbox--playground", + "name": "Playground", + "title": "Components/Form/Checkbox", + "importPath": "./src/components/checkbox.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-form-radio-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--all", + "name": "Radio Group", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-radio-group--vertical": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--vertical", + "name": "Vertical", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-form-radio-group--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--horizontal", + "name": "Horizontal", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-form-radio-group--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--disabled", + "name": "Disabled", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-radio-group--error": { + "type": "story", + "subtype": "story", + "id": "components-form-radio-group--error", + "name": "Error", + "title": "Components/Form/Radio Group", + "importPath": "./src/components/radio-group.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Error" + }, + "components-form-switch--all": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--all", + "name": "Switch", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "play-fn" + ], + "exportName": "All" + }, + "components-form-switch--off": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--off", + "name": "Off", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Off" + }, + "components-form-switch--on": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--on", + "name": "On", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "On" + }, + "components-form-switch--disabled": { + "type": "story", + "subtype": "story", + "id": "components-form-switch--disabled", + "name": "Disabled", + "title": "Components/Form/Switch", + "importPath": "./src/components/switch.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-form-slider--all": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--all", + "name": "Slider", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-slider--single-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--single-value", + "name": "Single", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleValue" + }, + "components-form-slider--range-value": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--range-value", + "name": "Range", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeValue" + }, + "components-form-slider--disabled-slider": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--disabled-slider", + "name": "Disabled", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSlider" + }, + "components-form-slider--focus": { + "type": "story", + "subtype": "story", + "id": "components-form-slider--focus", + "name": "Focus", + "title": "Components/Form/Slider", + "importPath": "./src/components/slider.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-form-toggle--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--all", + "name": "Toggle", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle--states": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--states", + "name": "States", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "States" + }, + "components-form-toggle--icon-only": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--icon-only", + "name": "Icon Only", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IconOnly" + }, + "components-form-toggle--disabled-toggle": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--disabled-toggle", + "name": "Disabled", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledToggle" + }, + "components-form-toggle--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle", + "importPath": "./src/components/toggle.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-toggle-group--all": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--all", + "name": "Toggle Group", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-form-toggle-group--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--single-selection", + "name": "Single", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-form-toggle-group--multiple-selection": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--multiple-selection", + "name": "Multiple", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleSelection" + }, + "components-form-toggle-group--vertical-group": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--vertical-group", + "name": "Vertical", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalGroup" + }, + "components-form-toggle-group--content-nodes": { + "type": "story", + "subtype": "story", + "id": "components-form-toggle-group--content-nodes", + "name": "Content Nodes", + "title": "Components/Form/Toggle Group", + "importPath": "./src/components/toggle-group.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ContentNodes" + }, + "components-form-label--all": { + "type": "story", + "subtype": "story", + "id": "components-form-label--all", + "name": "Label", + "title": "Components/Form/Label", + "importPath": "./src/components/label.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--all", + "name": "Tabs", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-tabs--secondary": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary", + "name": "Secondary", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Secondary" + }, + "components-navigation-tabs--selected-first": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-first", + "name": "Selected First", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedFirst" + }, + "components-navigation-tabs--selected-last": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--selected-last", + "name": "Selected Last", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedLast" + }, + "components-navigation-tabs--focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--focus", + "name": "Focus", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Focus" + }, + "components-navigation-tabs--disabled": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--disabled", + "name": "Disabled", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-navigation-tabs--overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--overflow", + "name": "Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-navigation-tabs--secondary-overflow": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--secondary-overflow", + "name": "Secondary Overflow", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SecondaryOverflow" + }, + "components-navigation-tabs--long-label": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--long-label", + "name": "Long Label", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabel" + }, + "components-navigation-tabs--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-navigation-tabs--compatibility", + "name": "Compatibility", + "title": "Components/Navigation/Tabs", + "importPath": "./src/components/tabs.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-navigation-breadcrumb--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--all", + "name": "Breadcrumb", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-breadcrumb--basic-3": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--basic-3", + "name": "Basic", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic3" + }, + "components-navigation-breadcrumb--with-ellipsis": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--with-ellipsis", + "name": "Ellipsis", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithEllipsis" + }, + "components-navigation-breadcrumb--long-path": { + "type": "story", + "subtype": "story", + "id": "components-navigation-breadcrumb--long-path", + "name": "Long Path", + "title": "Components/Navigation/Breadcrumb", + "importPath": "./src/components/breadcrumb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongPath" + }, + "components-navigation-pagination--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--all", + "name": "Pagination", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-pagination--first-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--first-page", + "name": "First Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstPage" + }, + "components-navigation-pagination--last-page": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--last-page", + "name": "Last Page", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastPage" + }, + "components-navigation-pagination--long-range": { + "type": "story", + "subtype": "story", + "id": "components-navigation-pagination--long-range", + "name": "Long Range", + "title": "Components/Navigation/Pagination", + "importPath": "./src/components/pagination.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongRange" + }, + "components-navigation-navigation-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--all", + "name": "Navigation Menu", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-navigation-menu--default": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--default", + "name": "Default", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-navigation-navigation-menu--no-viewport": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--no-viewport", + "name": "No Viewport", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NoViewport" + }, + "components-navigation-navigation-menu--indicator-alignment": { + "type": "story", + "subtype": "story", + "id": "components-navigation-navigation-menu--indicator-alignment", + "name": "Indicator Alignment", + "title": "Components/Navigation/Navigation Menu", + "importPath": "./src/components/navigation-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "IndicatorAlignment" + }, + "components-navigation-menubar--all": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--all", + "name": "Menubar", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-navigation-menubar--trigger-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--trigger-focus", + "name": "Trigger Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "TriggerFocus" + }, + "components-navigation-menubar--open-focus": { + "type": "story", + "subtype": "story", + "id": "components-navigation-menubar--open-focus", + "name": "Open Focus", + "title": "Components/Navigation/Menubar", + "importPath": "./src/components/menubar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "OpenFocus" + }, + "components-overlay-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--all", + "name": "Dialog", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dialog--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--open", + "name": "Open", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-dialog--long-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--long-content-open", + "name": "Long Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContentOpen" + }, + "components-overlay-dialog--wide-content-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--wide-content-open", + "name": "Wide Content", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WideContentOpen" + }, + "components-overlay-dialog--body-scroll-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--body-scroll-open", + "name": "Body Scroll", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BodyScrollOpen" + }, + "components-overlay-dialog--delete-confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dialog--delete-confirmation-open", + "name": "Delete Confirmation", + "title": "Components/Overlay/Dialog", + "importPath": "./src/components/dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DeleteConfirmationOpen" + }, + "components-overlay-alert-dialog--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--all", + "name": "Alert Dialog", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-alert-dialog--confirmation-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--confirmation-open", + "name": "Confirmation", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ConfirmationOpen" + }, + "components-overlay-alert-dialog--destructive-open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-alert-dialog--destructive-open", + "name": "Destructive", + "title": "Components/Overlay/Alert Dialog", + "importPath": "./src/components/alert-dialog.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DestructiveOpen" + }, + "components-overlay-sheet--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--all", + "name": "Sheet", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-sheet--right": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--right", + "name": "Right", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Right" + }, + "components-overlay-sheet--left": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--left", + "name": "Left", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Left" + }, + "components-overlay-sheet--top": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--top", + "name": "Top", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Top" + }, + "components-overlay-sheet--bottom": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--bottom", + "name": "Bottom", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Bottom" + }, + "components-overlay-sheet--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--form", + "name": "Form", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-sheet--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-sheet--long-content", + "name": "Long Content", + "title": "Components/Overlay/Sheet", + "importPath": "./src/components/sheet.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-drawer--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--all", + "name": "Drawer", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-drawer--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--open", + "name": "Open", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-drawer--form": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--form", + "name": "Form", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Form" + }, + "components-overlay-drawer--long-content": { + "type": "story", + "subtype": "story", + "id": "components-overlay-drawer--long-content", + "name": "Long Content", + "title": "Components/Overlay/Drawer", + "importPath": "./src/components/drawer.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-overlay-dropdown-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--all", + "name": "Dropdown Menu", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-dropdown-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-dropdown-menu--open", + "name": "Open", + "title": "Components/Overlay/Dropdown Menu", + "importPath": "./src/components/dropdown-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-context-menu--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--all", + "name": "Context Menu", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-context-menu--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-context-menu--open", + "name": "Open", + "title": "Components/Overlay/Context Menu", + "importPath": "./src/components/context-menu.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Open" + }, + "components-overlay-popover--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--all", + "name": "Popover", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-popover--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-popover--open", + "name": "Open", + "title": "Components/Overlay/Popover", + "importPath": "./src/components/popover.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-tooltip--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--all", + "name": "Tooltip", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-tooltip--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-tooltip--open", + "name": "Open", + "title": "Components/Overlay/Tooltip", + "importPath": "./src/components/tooltip.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-overlay-hover-card--all": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--all", + "name": "Hover Card", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-overlay-hover-card--open": { + "type": "story", + "subtype": "story", + "id": "components-overlay-hover-card--open", + "name": "Open", + "title": "Components/Overlay/Hover Card", + "importPath": "./src/components/hover-card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-data-display-card--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--all", + "name": "Card", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-card--surfaces": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--surfaces", + "name": "Surfaces", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Surfaces" + }, + "components-data-display-card--action": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--action", + "name": "Action", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Action" + }, + "components-data-display-card--compatibility": { + "type": "story", + "subtype": "story", + "id": "components-data-display-card--compatibility", + "name": "Compatibility", + "title": "Components/Data & Display/Card", + "importPath": "./src/components/card.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Compatibility" + }, + "components-data-display-table--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--all", + "name": "Table", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-table--basic": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--basic", + "name": "Basic", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Basic" + }, + "components-data-display-table--selected": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--selected", + "name": "Selected", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "components-data-display-table--long-text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--long-text", + "name": "Long Text", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongText" + }, + "components-data-display-table--overflow": { + "type": "story", + "subtype": "story", + "id": "components-data-display-table--overflow", + "name": "Horizontal Overflow", + "title": "Components/Data & Display/Table", + "importPath": "./src/components/table.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Overflow" + }, + "components-data-display-badge--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--all", + "name": "Badge", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-badge--variants": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--variants", + "name": "Variants", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Variants" + }, + "components-data-display-badge--playground": { + "type": "story", + "subtype": "story", + "id": "components-data-display-badge--playground", + "name": "Playground", + "title": "Components/Data & Display/Badge", + "importPath": "./src/components/badge.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "components-data-display-avatar--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--all", + "name": "Avatar", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-avatar--image": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--image", + "name": "Image", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Image" + }, + "components-data-display-avatar--fallback-error": { + "type": "story", + "subtype": "story", + "id": "components-data-display-avatar--fallback-error", + "name": "Fallback", + "title": "Components/Data & Display/Avatar", + "importPath": "./src/components/avatar.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FallbackError" + }, + "components-data-display-progress--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--all", + "name": "Progress", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-progress--zero": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--zero", + "name": "Zero", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Zero" + }, + "components-data-display-progress--middle": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--middle", + "name": "Middle", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Middle" + }, + "components-data-display-progress--full": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--full", + "name": "Full", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Full" + }, + "components-data-display-progress--non-default-max": { + "type": "story", + "subtype": "story", + "id": "components-data-display-progress--non-default-max", + "name": "Non Default Max", + "title": "Components/Data & Display/Progress", + "importPath": "./src/components/progress.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "NonDefaultMax" + }, + "components-data-display-skeleton--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--all", + "name": "Skeleton", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-skeleton--text": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--text", + "name": "Text", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Text" + }, + "components-data-display-skeleton--card-list": { + "type": "story", + "subtype": "story", + "id": "components-data-display-skeleton--card-list", + "name": "Card List", + "title": "Components/Data & Display/Skeleton", + "importPath": "./src/components/skeleton.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CardList" + }, + "components-data-display-separator--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--all", + "name": "Separator", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-separator--horizontal": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--horizontal", + "name": "Horizontal", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Horizontal" + }, + "components-data-display-separator--vertical": { + "type": "story", + "subtype": "story", + "id": "components-data-display-separator--vertical", + "name": "Vertical", + "title": "Components/Data & Display/Separator", + "importPath": "./src/components/separator.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Vertical" + }, + "components-data-display-aspect-ratio--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--all", + "name": "Aspect Ratio", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-aspect-ratio--wide": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--wide", + "name": "16:9", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Wide" + }, + "components-data-display-aspect-ratio--square": { + "type": "story", + "subtype": "story", + "id": "components-data-display-aspect-ratio--square", + "name": "1:1", + "title": "Components/Data & Display/Aspect Ratio", + "importPath": "./src/components/aspect-ratio.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Square" + }, + "components-data-display-carousel--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--all", + "name": "Carousel", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-carousel--basic-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--basic-carousel", + "name": "Basic", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "BasicCarousel" + }, + "components-data-display-carousel--multiple-items": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--multiple-items", + "name": "Multiple Items", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MultipleItems" + }, + "components-data-display-carousel--loop-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--loop-carousel", + "name": "Loop", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LoopCarousel" + }, + "components-data-display-carousel--vertical-carousel": { + "type": "story", + "subtype": "story", + "id": "components-data-display-carousel--vertical-carousel", + "name": "Vertical", + "title": "Components/Data & Display/Carousel", + "importPath": "./src/components/carousel.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalCarousel" + }, + "components-data-display-scroll-area--all": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--all", + "name": "Scroll Area", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-data-display-scroll-area--vertical-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--vertical-scroll", + "name": "Vertical", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalScroll" + }, + "components-data-display-scroll-area--horizontal-scroll": { + "type": "story", + "subtype": "story", + "id": "components-data-display-scroll-area--horizontal-scroll", + "name": "Horizontal", + "title": "Components/Data & Display/Scroll Area", + "importPath": "./src/components/scroll-area.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalScroll" + }, + "components-disclosure-accordion--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--all", + "name": "Accordion", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-accordion--single": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--single", + "name": "Single", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Single" + }, + "components-disclosure-accordion--multiple": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--multiple", + "name": "Multiple", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Multiple" + }, + "components-disclosure-accordion--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-accordion--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-accordion--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Accordion", + "importPath": "./src/components/accordion.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-collapsible--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--all", + "name": "Collapsible", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-collapsible--closed": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--closed", + "name": "Closed", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Closed" + }, + "components-disclosure-collapsible--open": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--open", + "name": "Open", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Open" + }, + "components-disclosure-collapsible--disabled": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--disabled", + "name": "Disabled", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Disabled" + }, + "components-disclosure-collapsible--long-content": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-collapsible--long-content", + "name": "Long Content", + "title": "Components/Disclosure/Collapsible", + "importPath": "./src/components/collapsible.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "components-disclosure-resizable--all": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--all", + "name": "Resizable", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-disclosure-resizable--horizontal-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--horizontal-layout", + "name": "Horizontal", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HorizontalLayout" + }, + "components-disclosure-resizable--vertical-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--vertical-layout", + "name": "Vertical", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "VerticalLayout" + }, + "components-disclosure-resizable--min-max-layout": { + "type": "story", + "subtype": "story", + "id": "components-disclosure-resizable--min-max-layout", + "name": "Min Max", + "title": "Components/Disclosure/Resizable", + "importPath": "./src/components/resizable.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MinMaxLayout" + }, + "components-search-date-command--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--all", + "name": "Command", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-command--search": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--search", + "name": "Search", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Search" + }, + "components-search-date-command--grouped-list": { + "type": "story", + "subtype": "story", + "id": "components-search-date-command--grouped-list", + "name": "Grouped", + "title": "Components/Search & Date/Command", + "importPath": "./src/components/command.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GroupedList" + }, + "components-search-date-combobox--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--all", + "name": "Combobox", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-combobox--empty-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--empty-combobox", + "name": "Empty", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyCombobox" + }, + "components-search-date-combobox--controlled-combobox": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--controlled-combobox", + "name": "Controlled", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledCombobox" + }, + "components-search-date-combobox--long-option": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--long-option", + "name": "Long Option", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongOption" + }, + "components-search-date-combobox--open-bottom": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-bottom", + "name": "Open Bottom", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenBottom" + }, + "components-search-date-combobox--open-top": { + "type": "story", + "subtype": "story", + "id": "components-search-date-combobox--open-top", + "name": "Open Top", + "title": "Components/Search & Date/Combobox", + "importPath": "./src/components/combobox.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "OpenTop" + }, + "components-search-date-calendar--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--all", + "name": "Calendar", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-calendar--single-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--single-selection", + "name": "Single", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SingleSelection" + }, + "components-search-date-calendar--disabled-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--disabled-selection", + "name": "Disabled Dates", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DisabledSelection" + }, + "components-search-date-calendar--range-selection": { + "type": "story", + "subtype": "story", + "id": "components-search-date-calendar--range-selection", + "name": "Range", + "title": "Components/Search & Date/Calendar", + "importPath": "./src/components/calendar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RangeSelection" + }, + "components-search-date-date-picker--all": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--all", + "name": "Date Picker", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-search-date-date-picker--empty-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--empty-picker", + "name": "Empty", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EmptyPicker" + }, + "components-search-date-date-picker--invalid-focus": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--invalid-focus", + "name": "Invalid Focus", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "InvalidFocus" + }, + "components-search-date-date-picker--selected-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--selected-picker", + "name": "Selected", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedPicker" + }, + "components-search-date-date-picker--controlled-picker": { + "type": "story", + "subtype": "story", + "id": "components-search-date-date-picker--controlled-picker", + "name": "Controlled", + "title": "Components/Search & Date/Date Picker", + "importPath": "./src/components/date-picker.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ControlledPicker" + }, + "components-feedback-alert--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--all", + "name": "Alert", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "components-feedback-alert--default": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--default", + "name": "Default", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "components-feedback-alert--destructive": { + "type": "story", + "subtype": "story", + "id": "components-feedback-alert--destructive", + "name": "Destructive", + "title": "Components/Feedback/Alert", + "importPath": "./src/components/alert.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Destructive" + }, + "components-feedback-sonner--all": { + "type": "story", + "subtype": "story", + "id": "components-feedback-sonner--all", + "name": "Sonner", + "title": "Components/Feedback/Sonner", + "importPath": "./src/components/sonner.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--all", + "name": "Data Table", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-data-data-table--with-filter-bar-story": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--with-filter-bar-story", + "name": "With Filter Bar", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithFilterBarStory" + }, + "patterns-data-data-table--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--loading", + "name": "Loading", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-data-data-table--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-data-data-table--empty", + "name": "Empty", + "title": "Patterns/Data/Data Table", + "importPath": "./src/patterns/data-table.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-data-filter-bar--all": { + "type": "story", + "subtype": "story", + "id": "patterns-data-filter-bar--all", + "name": "Filter Bar", + "title": "Patterns/Data/Filter Bar", + "importPath": "./src/patterns/filter-bar.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--all", + "name": "GNB", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-gnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--default", + "name": "Default", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-gnb--sticky": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sticky", + "name": "Sticky", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sticky" + }, + "patterns-layout-gnb--sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--sidebar", + "name": "GNB Sidebar", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Sidebar" + }, + "patterns-layout-gnb--navigation-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--navigation-menu-open", + "name": "Navigation Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "NavigationMenuOpen" + }, + "patterns-layout-gnb--short-depth-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--short-depth-open", + "name": "Short Depth Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ShortDepthOpen" + }, + "patterns-layout-gnb--right-edge-long-depth": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--right-edge-long-depth", + "name": "Right Edge Long Depth", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "RightEdgeLongDepth" + }, + "patterns-layout-gnb--first-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-short", + "name": "First Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthShort" + }, + "patterns-layout-gnb--first-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--first-depth-long", + "name": "First Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FirstDepthLong" + }, + "patterns-layout-gnb--middle-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-short", + "name": "Middle Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthShort" + }, + "patterns-layout-gnb--middle-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--middle-depth-long", + "name": "Middle Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MiddleDepthLong" + }, + "patterns-layout-gnb--last-depth-short": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-short", + "name": "Last Depth Short", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthShort" + }, + "patterns-layout-gnb--last-depth-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--last-depth-long", + "name": "Last Depth Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LastDepthLong" + }, + "patterns-layout-gnb--edge-first-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-first-long", + "name": "Edge First Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeFirstLong" + }, + "patterns-layout-gnb--edge-last-long": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--edge-last-long", + "name": "Edge Last Long", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "EdgeLastLong" + }, + "patterns-layout-gnb--user-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--user-menu-open", + "name": "User Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "UserMenuOpen" + }, + "patterns-layout-gnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-gnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-gnb--utilities": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--utilities", + "name": "Utilities", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Utilities" + }, + "patterns-layout-gnb--mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile", + "name": "Mobile", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Mobile" + }, + "patterns-layout-gnb--mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-gnb--mobile-menu-open", + "name": "Mobile Menu Open", + "title": "Patterns/Layout/GNB", + "importPath": "./src/patterns/gnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "MobileMenuOpen" + }, + "patterns-layout-lnb--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--all", + "name": "LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-lnb--default": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--default", + "name": "Default", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Default" + }, + "patterns-layout-lnb--selected": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected", + "name": "Selected", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Selected" + }, + "patterns-layout-lnb--expanded": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--expanded", + "name": "Expanded", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Expanded" + }, + "patterns-layout-lnb--selected-child": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--selected-child", + "name": "Selected Child", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SelectedChild" + }, + "patterns-layout-lnb--collapsed-with-selection": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--collapsed-with-selection", + "name": "Collapsed With Selection", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "CollapsedWithSelection" + }, + "patterns-layout-lnb--with-logo": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-logo", + "name": "With Logo", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithLogo" + }, + "patterns-layout-lnb--long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--long-labels", + "name": "Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongLabels" + }, + "patterns-layout-lnb--scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--scroll", + "name": "Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Scroll" + }, + "patterns-layout-lnb--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level", + "name": "Third Level", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-lnb--third-level-long-labels": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-long-labels", + "name": "Third Level Long Labels", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelLongLabels" + }, + "patterns-layout-lnb--third-level-scroll": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--third-level-scroll", + "name": "Third Level Scroll", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevelScroll" + }, + "patterns-layout-lnb--with-gnb": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--with-gnb", + "name": "VERIFICATION ONLY · GNB + LNB", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithGNB" + }, + "patterns-layout-lnb--standalone-desktop": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-desktop", + "name": "LNB Standalone Desktop", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneDesktop" + }, + "patterns-layout-lnb--lnb-profile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--lnb-profile-menu-open", + "name": "LNB Profile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LNBProfileMenuOpen" + }, + "patterns-layout-lnb--standalone-mobile": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile", + "name": "LNB Standalone Mobile", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobile" + }, + "patterns-layout-lnb--standalone-mobile-menu-open": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-lnb--standalone-mobile-menu-open", + "name": "LNB Standalone Mobile Menu Open", + "title": "Patterns/Layout/LNB", + "importPath": "./src/patterns/lnb.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "StandaloneMobileMenuOpen" + }, + "patterns-layout-loading-screen--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--all", + "name": "Loading Screen", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-loading-screen--inline": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-loading-screen--inline", + "name": "Inline", + "title": "Patterns/Layout/Loading Screen", + "importPath": "./src/patterns/loading-screen.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Inline" + }, + "patterns-layout-dashboard-layout--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--all", + "name": "Dashboard", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "patterns-layout-dashboard-layout--with-sidebar": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--with-sidebar", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Header + Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WithSidebar" + }, + "patterns-layout-dashboard-layout--third-level": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--third-level", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Third Level", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "ThirdLevel" + }, + "patterns-layout-dashboard-layout--sidebar-only": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--sidebar-only", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Dashboard Sidebar", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "SidebarOnly" + }, + "patterns-layout-dashboard-layout--long-content": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--long-content", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Long Content", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "LongContent" + }, + "patterns-layout-dashboard-layout--loading": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--loading", + "name": "Loading", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Loading" + }, + "patterns-layout-dashboard-layout--empty": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--empty", + "name": "Empty", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Empty" + }, + "patterns-layout-dashboard-layout--framed": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-dashboard-layout--framed", + "name": "VERIFICATION ONLY — 운영 사용 금지 · Framed", + "title": "Patterns/Layout/Dashboard", + "importPath": "./src/patterns/dashboard-layout.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Framed" + }, + "patterns-layout-page-header--all": { + "type": "story", + "subtype": "story", + "id": "patterns-layout-page-header--all", + "name": "Page Header", + "title": "Patterns/Layout/Page Header", + "importPath": "./src/patterns/page-header.stories.tsx", + "componentPath": "./packages/ui/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "All" + }, + "orgchart--logo-personnel-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo-personnel-summary", + "name": "Overview", + "title": "OrgChart/Overview", + "importPath": "./src/org-chart/org-chart-p1.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoPersonnelSummary" + }, + "orgchart--department-colors": { + "type": "story", + "subtype": "story", + "id": "orgchart--department-colors", + "name": "Department Colors", + "title": "OrgChart/Department Colors", + "importPath": "./src/org-chart/org-chart-department-colors.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DepartmentColors" + }, + "orgchart--full-composition": { + "type": "story", + "subtype": "story", + "id": "orgchart--full-composition", + "name": "Full Composition", + "title": "OrgChart/Full Composition", + "importPath": "./src/org-chart/org-chart-full-composition.stories.tsx", + "componentPath": "./src/org-chart/org-chart-page-previews.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullComposition" + }, + "orgchart--expanded-org-chart": { + "type": "story", + "subtype": "story", + "id": "orgchart--expanded-org-chart", + "name": "Expanded OrgChart", + "title": "OrgChart/Expanded OrgChart", + "importPath": "./src/org-chart/org-chart-expanded.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ExpandedOrgChart" + }, + "orgchart-components-cards--business-management": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-management", + "name": "Business Management", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessManagement" + }, + "orgchart-components-cards--business-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--business-planning", + "name": "Business Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BusinessPlanning" + }, + "orgchart-components-cards--talent-growth": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--talent-growth", + "name": "Talent Growth", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TalentGrowth" + }, + "orgchart-components-cards--integrated-system": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--integrated-system", + "name": "Integrated System", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "IntegratedSystem" + }, + "orgchart-components-cards--design-planning": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--design-planning", + "name": "Design Planning", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "DesignPlanning" + }, + "orgchart-components-cards--solution-sales": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--solution-sales", + "name": "Solution Sales", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "SolutionSales" + }, + "orgchart-components-cards--top-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--top-leader", + "name": "최상위 리더", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "TopLeader" + }, + "orgchart-components-cards--organization-leader": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--organization-leader", + "name": "조직장", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationLeader" + }, + "orgchart-components-cards--employee": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-cards--employee", + "name": "일반 직원", + "title": "OrgChart/Components/Cards", + "importPath": "./src/org-chart/org-chart-cards.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Employee" + }, + "orgchart--logo": { + "type": "story", + "subtype": "story", + "id": "orgchart--logo", + "name": "Logo", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Logo" + }, + "orgchart--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--position-summary", + "name": "Position Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Verification/Overview", + "importPath": "./src/org-chart/org-chart-overview-internal.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--position-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--position-summary", + "name": "Position Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "PositionSummary" + }, + "orgchart-components-summaries--affiliation-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--affiliation-summary", + "name": "Affiliation Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "AffiliationSummary" + }, + "orgchart-components-summaries--status-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-components-summaries--status-summary", + "name": "Status Summary", + "title": "OrgChart/Components/Summaries", + "importPath": "./src/org-chart/org-chart-summary.stories.tsx", + "componentPath": "./src/org-chart/core-component-preview.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "StatusSummary" + }, + "orgchart-content--basic-organization": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--basic-organization", + "name": "Basic Organization", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "BasicOrganization" + }, + "orgchart-content--organization-hierarchy": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-hierarchy", + "name": "Organization Hierarchy", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationHierarchy" + }, + "orgchart-content--employee-cards": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--employee-cards", + "name": "Employee Cards", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "EmployeeCards" + }, + "orgchart-content--organization-summary": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--organization-summary", + "name": "Organization Summary", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "OrganizationSummary" + }, + "orgchart-content--json-data-update": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--json-data-update", + "name": "JSON Data Update", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "JSONDataUpdate" + }, + "orgchart-content--loading-empty-error": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--loading-empty-error", + "name": "Loading / Empty / Error", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "LoadingEmptyError" + }, + "orgchart-content--responsive-container": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--responsive-container", + "name": "Responsive Container", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "ResponsiveContainer" + }, + "orgchart-content--multiple-instances": { + "type": "story", + "subtype": "story", + "id": "orgchart-content--multiple-instances", + "name": "Multiple Instances", + "title": "OrgChart/Content", + "importPath": "./src/org-chart/org-chart.stories.tsx", + "componentPath": "./packages/org-chart-react/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "MultipleInstances" + }, + "center-graphic-facility--tunnel": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel", + "name": "Tunnel", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Tunnel" + }, + "center-graphic-facility--bridge": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--bridge", + "name": "Bridge", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Bridge" + }, + "center-graphic-facility--intersection": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--intersection", + "name": "Intersection", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Intersection" + }, + "center-graphic-facility--junction": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--junction", + "name": "Junction", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Junction" + }, + "center-graphic-facility--interchange": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--interchange", + "name": "Interchange", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Interchange" + }, + "center-graphic-facility--roadside": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--roadside", + "name": "Roadside", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Roadside" + }, + "center-graphic-facility--linked": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--linked", + "name": "Linked", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Linked" + }, + "center-graphic-facility--tunnel-playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-facility--tunnel-playground", + "name": "직접 테스트 (터널)", + "title": "Center Graphic/Facility", + "importPath": "./src/center/center-facility.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "TunnelPlayground" + }, + "center-graphic-information--information": { + "type": "story", + "subtype": "story", + "id": "center-graphic-information--information", + "name": "Information", + "title": "Center Graphic/Information", + "importPath": "./src/center/center-information.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Information" + }, + "center-graphic-overview--overview": { + "type": "story", + "subtype": "story", + "id": "center-graphic-overview--overview", + "name": "Overview", + "title": "Center Graphic/Overview", + "importPath": "./src/center/center-overview.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "center-graphic-spatial--spatial": { + "type": "story", + "subtype": "story", + "id": "center-graphic-spatial--spatial", + "name": "Spatial", + "title": "Center Graphic/Spatial", + "importPath": "./src/center/center-spatial.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Spatial" + }, + "center-graphic-title--compositions": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--compositions", + "name": "Title", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Compositions" + }, + "center-graphic-title--playground": { + "type": "story", + "subtype": "story", + "id": "center-graphic-title--playground", + "name": "Playground", + "title": "Center Graphic/Title", + "importPath": "./src/center/center-title.stories.tsx", + "componentPath": "./packages/center-graphic/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Playground" + }, + "sw-header--composed-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + "sw-header--home-menu": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu", + "name": "Home Menu", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenu" + }, + "sw-header--home-menu-capture-default": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-default", + "name": "Home Menu · 비교 캔버스 · Default", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureDefault" + }, + "sw-header--home-menu-header-composition": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-header-composition", + "name": "Home Menu · Header 조합 · 로고 클릭", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuHeaderComposition" + }, + "sw-header--home-menu-dynamic-data": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-dynamic-data", + "name": "Home Menu · Props · 데이터 변경", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuDynamicData" + }, + "sw-header--home-menu-standalone": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-standalone", + "name": "Home Menu · 단독 사용 · 조합형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenuStandalone" + }, + "sw-header--home-menu-property-bar-check": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-property-bar-check", + "name": "Home Menu · 속성Bar 비교 (26:10492)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuPropertyBarCheck" + }, + "sw-header--home-menu-capture-property-bar": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-property-bar", + "name": "Home Menu · 비교 캔버스 · 속성Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCapturePropertyBar" + }, + "sw-header--home-menu-integration": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-integration", + "name": "Home Menu · 통합 · Popup · Escape", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuIntegration" + }, + "sw-header--home-menu-capture-responsive": { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-responsive", + "name": "Home Menu · 비교 캔버스 · 반응형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureResponsive" + }, + "sw-header--document-open": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentOpen" + }, + "sw-header--hidden-sub-controls": { + "type": "story", + "subtype": "story", + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HiddenSubControls" + }, + "sw-header--detail-buttons": { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + "sw-header--overview": { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + "sw-header--interactive-states": { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + "sw-header--window-move-motion": { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WindowMoveMotion" + }, + "sw-header--logo-slot": { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + "sw-header--document-dropdown": { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + "sw-header--responsive-more": { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + "sw-header--k-guide": { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KGuide" + }, + "sw-footer--full-footer": { + "type": "story", + "subtype": "story", + "id": "sw-footer--full-footer", + "name": "전체 Footer · 실제 조합", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "FullFooter" + }, + "sw-footer--tool-groups": { + "type": "story", + "subtype": "story", + "id": "sw-footer--tool-groups", + "name": "도구 그룹별 표시", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ToolGroups" + }, + "sw-footer--figma-variants": { + "type": "story", + "subtype": "story", + "id": "sw-footer--figma-variants", + "name": "Figma 디자인별 Variant (35 노드)", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "FigmaVariants" + }, + "sw-footer--custom-content": { + "type": "story", + "subtype": "story", + "id": "sw-footer--custom-content", + "name": "도구 및 메뉴 변경 예제", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "CustomContent" + }, + "sw-footer--responsive": { + "type": "story", + "subtype": "story", + "id": "sw-footer--responsive", + "name": "화면 폭 변화", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Responsive" + }, + "sw-footer--parts": { + "type": "story", + "subtype": "story", + "id": "sw-footer--parts", + "name": "개별 부품 (조합용)", + "title": "SW/Footer", + "importPath": "./src/sw/sw-footer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Parts" + }, + "sw-popup--custom-content": { + "type": "story", + "subtype": "story", + "id": "sw-popup--custom-content", + "name": "Custom Content", + "title": "SW/Popup", + "importPath": "./src/sw/sw-popup.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "CustomContent" + }, + "sw-popup--multiple-popups": { + "type": "story", + "subtype": "story", + "id": "sw-popup--multiple-popups", + "name": "Multiple Popups", + "title": "SW/Popup", + "importPath": "./src/sw/sw-popup.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "MultiplePopups" + }, + "sw-header--property-panel-compare": { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Popup", + "importPath": "./src/sw/sw-property-panel.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + "sw-viewer--viewer-header": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--viewer-header", + "name": "Viewer Header", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ViewerHeader" + }, + "sw-viewer--menu-groups": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--menu-groups", + "name": "Menu Groups", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "MenuGroups" + }, + "sw-viewer--states": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--states", + "name": "Item States", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "States" + }, + "sw-viewer--dropdowns": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--dropdowns", + "name": "Header + Dropdown", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Dropdowns" + }, + "sw-viewer--settings-panel": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--settings-panel", + "name": "Settings Popup", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "SettingsPanel" + }, + "sw-viewer--content-variants": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--content-variants", + "name": "Popup Content Variants", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ContentVariants" + }, + "sw-viewer--variable-size": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--variable-size", + "name": "Variable Size Popups", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "VariableSize" + }, + "sw-viewer--responsive": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--responsive", + "name": "Responsive Widths", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Responsive" + }, + "sw-viewer--compare-with-sw-header": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--compare-with-sw-header", + "name": "SWHeader vs Viewer Header", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "CompareWithSWHeader" + }, + "sw-viewer--logo": { + "type": "story", + "subtype": "story", + "id": "sw-viewer--logo", + "name": "Logo", + "title": "SW/Viewer", + "importPath": "./src/sw/sw-viewer.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Logo" + }, + "sw-theme--theme-inheritance": { + "type": "story", + "subtype": "story", + "id": "sw-theme--theme-inheritance", + "name": "Theme Inheritance", + "title": "SW/Theme", + "importPath": "./src/sw/sw-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ThemeInheritance" + }, + "verification-publisher-regression--consumers-regression": { + "type": "story", + "subtype": "story", + "id": "verification-publisher-regression--consumers-regression", + "name": "Consumers Regression", + "title": "Verification/Publisher Regression", + "importPath": "./src/components/publisher-regression.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "ConsumersRegression" + }, + "theme-designer-playground--editor": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--editor", + "name": "Designer Playground", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal" + ], + "exportName": "Editor" + }, + "theme-designer-playground--live-verification": { + "type": "story", + "subtype": "story", + "id": "theme-designer-playground--live-verification", + "name": "Live Verification", + "title": "Theme/Designer Playground", + "importPath": "./src/theme/designer-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "internal", + "verification", + "play-fn" + ], + "exportName": "LiveVerification" + }, + "theme-runtime-contract--comparison": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--comparison", + "name": "Comparison", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Comparison" + }, + "theme-runtime-contract--global-external": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--global-external", + "name": "Global External", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "GlobalExternal" + }, + "theme-runtime-contract--verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--verification", + "name": "Verification", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "Verification" + }, + "theme-runtime-contract--dashboard": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract--dashboard", + "name": "Dashboard", + "title": "Theme/Runtime Contract", + "importPath": "./src/theme/runtime-theme.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "Dashboard" + }, + "theme-runtime-contract-loader--cdn-verification": { + "type": "story", + "subtype": "story", + "id": "theme-runtime-contract-loader--cdn-verification", + "name": "Cdn Verification", + "title": "Theme/Runtime Contract/Loader", + "importPath": "./src/theme/runtime-loader.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification", + "play-fn" + ], + "exportName": "CdnVerification" + } + } +} diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1280.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1280.png new file mode 100644 index 0000000..8cc982b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1280.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1440.png new file mode 100644 index 0000000..33c1041 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-390.png new file mode 100644 index 0000000..8351269 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-768.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-768.png new file mode 100644 index 0000000..d51dd45 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-768.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-manager.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-manager.png new file mode 100644 index 0000000..b734037 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-manager.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel-390.png new file mode 100644 index 0000000..a6138fe Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel.png new file mode 100644 index 0000000..7fb0af1 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/composed-property-panel.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-1440.png new file mode 100644 index 0000000..5461d99 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-390.png new file mode 100644 index 0000000..8450b39 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-0-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-1440.png new file mode 100644 index 0000000..1a38155 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-390.png new file mode 100644 index 0000000..0c7da55 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-1-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-1440.png new file mode 100644 index 0000000..4fa0949 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-390.png new file mode 100644 index 0000000..39cd480 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-2-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-1440.png new file mode 100644 index 0000000..c87bae9 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-390.png new file mode 100644 index 0000000..cc1b2fb Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-3-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-1440.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-1440.png new file mode 100644 index 0000000..7137295 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-390.png b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-390.png new file mode 100644 index 0000000..7bca7b3 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/overlay-4-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/result.json b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/result.json new file mode 100644 index 0000000..fa380fe --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/result.json @@ -0,0 +1,1745 @@ +{ + "baseCommit": "c165753bbe24de6581c66704bde4ba3246049ec2", + "checks": [ + { + "name": "28 -> 24 SW Stories, exactly four approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "Dropdown is one Story directly under Header with original ID, no Dropdown folder", + "status": "PASS" + }, + { + "name": "menu correction keeps all 24 IDs; only composed Story name/title change", + "status": "FAIL" + }, + { + "name": "all non-SW index entries identical", + "status": "FAIL" + }, + { + "name": "all retained declarations identical outside imports, meta and ComposedDemo", + "status": "FAIL" + }, + { + "name": "runtime, API, AI template, Overview, existing CSS/assets and Storybook configuration untouched", + "status": "FAIL" + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-default", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-header-composition", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-dynamic-data", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-standalone", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-property-bar-check", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-integration", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-responsive", + "status": "PASS" + }, + { + "name": "render sw-header--document-open", + "status": "PASS" + }, + { + "name": "render sw-header--hidden-sub-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "Dropdown page contains the Composed Controls group", + "status": "PASS" + }, + { + "name": "one copy of five Dropdown fields and the details group", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 390", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 364.5, + "w": 234, + "h": 280, + "right": 258, + "bottom": 644.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 390", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 406.5, + "w": 192, + "h": 182, + "right": 216, + "bottom": 588.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 390", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 1, + "y": 447.5, + "w": 388, + "h": 192, + "right": 389, + "bottom": 639.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 24, + "y": 490.5, + "w": 164, + "h": 100, + "right": 188, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 390", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 390", + "status": "PASS", + "data": { + "x": 192, + "y": 490.5, + "w": 164, + "h": 100, + "right": 356, + "bottom": 590.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 390", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 390", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 390", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 390", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 768", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 31.046875, + "y": 331.53125, + "w": 234, + "h": 280, + "right": 265.046875, + "bottom": 611.53125, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 768", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 269.046875, + "y": 331.53125, + "w": 192, + "h": 182, + "right": 461.046875, + "bottom": 513.53125, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 768", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 1.046875, + "y": 372.53125, + "w": 477.609375, + "h": 192, + "right": 478.65625, + "bottom": 564.53125, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 319.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 483.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 768", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 768", + "status": "PASS", + "data": { + "x": 487.046875, + "y": 373.53125, + "w": 164, + "h": 100, + "right": 651.046875, + "bottom": 473.53125, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 768", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 768", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 768", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 768", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1280", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 46.40625, + "y": 326.890625, + "w": 234, + "h": 280, + "right": 280.40625, + "bottom": 606.890625, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 284.40625, + "y": 326.890625, + "w": 192, + "h": 182, + "right": 476.40625, + "bottom": 508.890625, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 383.40625, + "y": 325.890625, + "w": 477.609375, + "h": 192, + "right": 861.015625, + "bottom": 517.890625, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 768.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 932.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1280", + "status": "PASS", + "data": { + "x": 936.40625, + "y": 326.890625, + "w": 164, + "h": 100, + "right": 1100.40625, + "bottom": 426.890625, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1280", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1280", + "status": "PASS" + }, + { + "name": "composition wraps without page overflow or scaling at 1440", + "status": "PASS", + "data": { + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + }, + { + "name": "레이어 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "레이어 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 128, + "y": 328.5, + "w": 234, + "h": 280, + "right": 362, + "bottom": 608.5, + "hit": true + } + }, + { + "name": "레이어 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "레이어 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "레이어 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "레이어 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "색상 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "색상 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 366, + "y": 328.5, + "w": 192, + "h": 182, + "right": 558, + "bottom": 510.5, + "hit": true + } + }, + { + "name": "색상 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "색상 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "색상 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "색상 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "선스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 465, + "y": 327.5, + "w": 477.609375, + "h": 192, + "right": 942.609375, + "bottom": 519.5, + "hit": true + } + }, + { + "name": "선스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "선스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "선스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "선스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 850, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1014, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "문자스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "문자스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Hover does not open at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 overlay in viewport, not clipped or covered at 1440", + "status": "PASS", + "data": { + "x": 1018, + "y": 328.5, + "w": 164, + "h": 100, + "right": 1182, + "bottom": 428.5, + "hit": true + } + }, + { + "name": "치수스타일 selected and expanded at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 Escape closes and restores focus at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 trigger toggles closed at 1440", + "status": "PASS" + }, + { + "name": "치수스타일 outside click closes at 1440", + "status": "PASS" + }, + { + "name": "keyboard opens layer menu and focuses current row", + "status": "PASS" + }, + { + "name": "keyboard moves to next layer row", + "status": "PASS" + }, + { + "name": "onLayerSelect callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)" + ] + }, + { + "name": "layer selection appears, closes and restores focus", + "status": "PASS" + }, + { + "name": "selected layer retains original row Hover background", + "status": "PASS" + }, + { + "name": "onLayerVisibilityChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)" + ] + }, + { + "name": "onLayerVisibilityChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerFreezeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)" + ] + }, + { + "name": "onLayerFreezeChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "onLayerLockChange callback exactly once", + "status": "PASS", + "data": [ + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)" + ] + }, + { + "name": "onLayerLockChange toggles only its own state, menu remains open", + "status": "PASS" + }, + { + "name": "disabled layer selection and toggles blocked", + "status": "PASS" + }, + { + "name": "full color menu: seven palette chips, two user colors, modes, RGB and pick", + "status": "PASS" + }, + { + "name": "onColorSelect callback exactly once", + "status": "PASS", + "data": [ + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)" + ] + }, + { + "name": "color palette updates displayed RGB and leaves menu open", + "status": "PASS" + }, + { + "name": "onColorModeChange callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)" + ] + }, + { + "name": "ByBlock On and displayed mode", + "status": "PASS" + }, + { + "name": "onColorInput callback exactly once", + "status": "PASS", + "data": [ + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)" + ] + }, + { + "name": "RGB commit clears mode and updates chip", + "status": "PASS" + }, + { + "name": "invalid RGB restores without callback", + "status": "PASS" + }, + { + "name": "onColorPick callback exactly once", + "status": "PASS", + "data": [ + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)" + ] + }, + { + "name": "color pick closes and restores focus", + "status": "PASS" + }, + { + "name": "color changes leave layer, line, text and dimension values intact", + "status": "PASS" + }, + { + "name": "all original line rows and weights retained", + "status": "PASS" + }, + { + "name": "onLineTypeSelect callback exactly once", + "status": "PASS", + "data": [ + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)" + ] + }, + { + "name": "selected line retains original row Hover and preview", + "status": "PASS" + }, + { + "name": "onLineWeightSelect callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)" + ] + }, + { + "name": "onLineWeightValueChange callback exactly once", + "status": "PASS", + "data": [ + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)" + ] + }, + { + "name": "onLineScaleChange callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)" + ] + }, + { + "name": "line type, editable weight and scale update independently; menu stays open", + "status": "PASS" + }, + { + "name": "invalid scale restores, no callback", + "status": "PASS" + }, + { + "name": "문자스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onTextStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "치수스타일 full two-item list retained", + "status": "PASS" + }, + { + "name": "onDimensionStyleSelect callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 selection displayed, closes, focus returns", + "status": "PASS" + }, + { + "name": "레이어 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLayerDetail callback exactly once", + "status": "PASS", + "data": [ + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)" + ] + }, + { + "name": "레이어 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "색상 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onColorDetail callback exactly once", + "status": "PASS", + "data": [ + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)" + ] + }, + { + "name": "색상 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "선스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onLineStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)" + ] + }, + { + "name": "선스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "문자스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onTextStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)" + ] + }, + { + "name": "문자스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "치수스타일 detail Hover uses existing text opacity", + "status": "PASS" + }, + { + "name": "onDimensionStyleDetail callback exactly once", + "status": "PASS", + "data": [ + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)" + ] + }, + { + "name": "치수스타일 detail closes, focus returns, no fabricated popup", + "status": "PASS" + }, + { + "name": "opening another control leaves exactly one menu and preserves selection", + "status": "PASS" + }, + { + "name": "keyboard Tab enters the open color controls", + "status": "PASS" + }, + { + "name": "details opens existing 28px property Bar", + "status": "PASS" + }, + { + "name": "details opens existing 314px property panel with focus", + "status": "PASS", + "data": { + "width": 314, + "focused": true, + "active": "
\"\"선택된 객체 - 원1
(LTscale:1)
(ByL)%

형상

\"원형

위치

구분XYZ
중간점
" + } + }, + { + "name": "property Bar and panel share edited state", + "status": "PASS", + "data": "12.5" + }, + { + "name": "property panel weight edit appears in composed line field", + "status": "PASS" + }, + { + "name": "property panel close returns focus", + "status": "PASS" + }, + { + "name": "property panel Escape returns focus", + "status": "PASS" + }, + { + "name": "narrow details panel keeps natural width and fits viewport", + "status": "PASS", + "data": { + "width": 314, + "left": 72, + "right": 386, + "bottom": 840, + "overflow": 0 + } + }, + { + "name": "all seven actionable controls Disabled", + "status": "PASS" + }, + { + "name": "Disabled controls block callbacks and overlays", + "status": "PASS" + }, + { + "name": "callback-free layer icons become readonly status images", + "status": "PASS" + }, + { + "name": "missing detail callback keeps safe no-op and menu open", + "status": "PASS" + }, + { + "name": "retained long layer scenario", + "status": "PASS" + }, + { + "name": "long layer name preserved with full title", + "status": "PASS" + }, + { + "name": "retained many layer scenario", + "status": "PASS" + }, + { + "name": "long layer list scrolls internally", + "status": "PASS" + }, + { + "name": "all 40 user colors accessible with palette scroll", + "status": "PASS" + }, + { + "name": "retained empty layer scenario", + "status": "PASS" + }, + { + "name": "Overview keeps one Header at 49px and 16:9 Stage", + "status": "PASS" + }, + { + "name": "Window Move Motion retains only nine 3x steps", + "status": "PASS" + }, + { + "name": "manager shows a single Dropdown link directly under Header, no Composed Controls submenu", + "status": "PASS" + }, + { + "name": "retired Dropdown links absent in manager", + "status": "PASS" + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "callbacks": [ + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerOpen", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorOpen", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleOpen", + "lineStyleOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleOpen", + "textStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleOpen", + "dimensionStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "dimensionStyleOpen(false)", + "layerOpen(true)", + "onLayerSelect(layer, Sample-Center)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerVisibilityChange(layer-1, false)", + "onLayerFreezeChange(layer-1, true)", + "onLayerLockChange(layer-1, true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorSelect(color, 241,4,4)", + "onColorModeChange(byBlock)", + "onColorInput(color, 255,0,0)", + "onColorPick", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineTypeSelect(line, CENTER)", + "onLineWeightSelect(weight, 0.25)", + "onLineWeightValueChange(weight, 0.5)", + "onLineScaleChange(scale, 2)", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleSelect(dotum)", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleSelect(iso-25)", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerDetail", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "onColorDetail", + "colorOpen(false)", + "onLineStyleOpen", + "lineStyleOpen(true)", + "onLineStyleDetail", + "lineStyleOpen(false)", + "onTextStyleOpen", + "textStyleOpen(true)", + "onTextStyleDetail", + "textStyleOpen(false)", + "onDimensionStyleOpen", + "dimensionStyleOpen(true)", + "onDimensionStyleDetail", + "dimensionStyleOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onPropertyBarOpenChange(true)", + "onPropertyPanelOpenChange(true)", + "onPropertyChange(radius, 12.5)", + "onPropertyChange(weight, 0.75)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyPanelOpenChange(true)", + "onPropertyPanelOpenChange(false)", + "onPropertyBarOpenChange(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "onLayerSelect(layer, Sample-매우-긴-레이어-이름-Ellipsis-확인용-Layer-Name-0123456789)", + "layerOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)", + "onColorOpen", + "colorOpen(true)", + "colorOpen(false)", + "onLayerOpen", + "layerOpen(true)", + "layerOpen(false)" + ], + "geometry": [ + { + "width": 390, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 768, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1280, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + }, + { + "width": 1440, + "overflow": 0, + "fields": [ + { + "width": 234, + "height": 38 + }, + { + "width": 192, + "height": 38 + }, + { + "width": 284, + "height": 38 + }, + { + "width": 164, + "height": 38 + }, + { + "width": 164, + "height": 38 + } + ] + } + ], + "menuCorrectionBaseCommit": "9482d45f340981c4b4ad6537cb678bf4afcdc681", + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/sw-dotum-font-qa/dropdown-consolidation/story-inventory.json b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/story-inventory.json new file mode 100644 index 0000000..ca06add --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/dropdown-consolidation/story-inventory.json @@ -0,0 +1,787 @@ +{ + "before": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } + ], + "after": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu", + "name": "Home Menu", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenu" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-default", + "name": "Home Menu · 비교 캔버스 · Default", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureDefault" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-header-composition", + "name": "Home Menu · Header 조합 · 로고 클릭", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuHeaderComposition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-dynamic-data", + "name": "Home Menu · Props · 데이터 변경", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuDynamicData" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-standalone", + "name": "Home Menu · 단독 사용 · 조합형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenuStandalone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-property-bar-check", + "name": "Home Menu · 속성Bar 비교 (26:10492)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuPropertyBarCheck" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-property-bar", + "name": "Home Menu · 비교 캔버스 · 속성Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCapturePropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-integration", + "name": "Home Menu · 통합 · Popup · Escape", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuIntegration" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-responsive", + "name": "Home Menu · 비교 캔버스 · 반응형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureResponsive" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentOpen" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HiddenSubControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KGuide" + } + ], + "removed": [ + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + } + ] +} diff --git a/docs/sw/sw-dotum-font-qa/font-diff/clipped-text-dotum-vs-noto.json b/docs/sw/sw-dotum-font-qa/font-diff/clipped-text-dotum-vs-noto.json new file mode 100644 index 0000000..7b1c8b0 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/font-diff/clipped-text-dotum-vs-noto.json @@ -0,0 +1,593 @@ +{ + "sw-header--composed-controls@1920": { + "newWithCurrent": { + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0", + "hm-sw-recent-files__name \"001-연결종합 계획평면도22222222.dwg\"": "309.6>299.0", + "hm-sw-recent-files__name \"00.시공상세도 분석 및 목차_20240416.gr\"": "330.3>299.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-default@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-header-composition@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-dynamic-data@1920": { + "newWithCurrent": { + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-integration@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-responsive@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-open@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--hidden-sub-controls@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__document-item-name \"C0020101-006-평면및종단면도(06)\"": "281.5>257.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-header--overview@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--interactive-states@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--logo-slot@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-dropdown@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--responsive-more@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--k-guide@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-footer--full-footer@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--states@1920": { + "newWithCurrent": { + "hm-sw-viewer-header__document-name \"상태 확인용.dwg\"": "106.0>100.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--variable-size@1920": { + "newWithCurrent": { + "hm-sw-property__title \"250 × auto (최소 폭)\"": "168.5>167.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--compare-with-sw-header@1920": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-theme--theme-inheritance@1920": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--composed-controls@1280": { + "newWithCurrent": { + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0", + "hm-sw-recent-files__name \"001-연결종합 계획평면도22222222.dwg\"": "309.6>299.0", + "hm-sw-recent-files__name \"00.시공상세도 분석 및 목차_20240416.gr\"": "330.3>299.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-default@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-header-composition@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-dynamic-data@1280": { + "newWithCurrent": { + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-integration@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-responsive@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-open@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--hidden-sub-controls@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__document-item-name \"C0020101-006-평면및종단면도(06)\"": "281.5>257.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-header--overview@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--interactive-states@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--logo-slot@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-dropdown@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--responsive-more@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--k-guide@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-footer--full-footer@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--states@1280": { + "newWithCurrent": { + "hm-sw-viewer-header__document-name \"상태 확인용.dwg\"": "106.0>100.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--variable-size@1280": { + "newWithCurrent": { + "hm-sw-property__title \"250 × auto (최소 폭)\"": "168.5>167.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--compare-with-sw-header@1280": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-theme--theme-inheritance@1280": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--composed-controls@900": { + "newWithCurrent": { + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0", + "hm-sw-recent-files__name \"001-연결종합 계획평면도22222222.dwg\"": "309.6>299.0", + "hm-sw-recent-files__name \"00.시공상세도 분석 및 목차_20240416.gr\"": "330.3>299.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-default@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-header-composition@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-dynamic-data@900": { + "newWithCurrent": { + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-integration@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-responsive@900": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-open@900": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--hidden-sub-controls@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__document-item-name \"C0020101-006-평면및종단면도(06)\"": "281.5>257.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-header--overview@900": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--interactive-states@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--logo-slot@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-dropdown@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--responsive-more@900": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--k-guide@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-footer--full-footer@900": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--states@900": { + "newWithCurrent": { + "hm-sw-viewer-header__document-name \"상태 확인용.dwg\"": "106.0>100.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--variable-size@900": { + "newWithCurrent": { + "hm-sw-property__title \"250 × auto (최소 폭)\"": "168.5>167.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--compare-with-sw-header@900": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__document-name \"C0060202-001-평면및종단면도.dwg\"": "289.2>270.0" + }, + "onlyWithNoto": [] + }, + "sw-theme--theme-inheritance@900": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--composed-controls@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0", + "hm-sw-recent-files__name \"001-연결종합 계획평면도22222222.dwg\"": "309.6>299.0", + "hm-sw-recent-files__name \"00.시공상세도 분석 및 목차_20240416.gr\"": "330.3>299.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-default@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-header-composition@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-dynamic-data@640": { + "newWithCurrent": { + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-integration@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--home-menu-capture-responsive@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-home-menu__label \"Display...\"": "77.6>72.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-open@640": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--hidden-sub-controls@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__document-item-name \"C0020101-006-평면및종단면도(06)\"": "281.5>257.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-header--overview@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-header--interactive-states@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--logo-slot@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--document-dropdown@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--responsive-more@640": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-header--k-guide@640": { + "newWithCurrent": { + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + }, + "sw-footer--full-footer@640": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"Standard\"": "70.5>69.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--states@640": { + "newWithCurrent": { + "hm-sw-viewer-header__document-name \"상태 확인용.dwg\"": "106.0>100.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--variable-size@640": { + "newWithCurrent": { + "hm-sw-property__title \"250 × auto (최소 폭)\"": "168.5>167.0" + }, + "onlyWithNoto": [] + }, + "sw-viewer--compare-with-sw-header@640": { + "newWithCurrent": { + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0" + }, + "onlyWithNoto": [] + }, + "sw-theme--theme-inheritance@640": { + "newWithCurrent": { + "hm-sw-header__document-name \"C0020101-006-평면및종단면도(06)\"": "288.2>270.0", + "hm-sw-header__mode \"그리기모드\"": "77.8>74.0", + "hm-sw-header__field-value \"0_Layer_Cludmark\"": "143.0>142.0" + }, + "onlyWithNoto": [] + } +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/font-diff/footer-before-after.png b/docs/sw/sw-dotum-font-qa/font-diff/footer-before-after.png new file mode 100644 index 0000000..bd78cc5 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/font-diff/footer-before-after.png differ diff --git a/docs/sw/sw-dotum-font-qa/font-diff/header-1920-before-after.png b/docs/sw/sw-dotum-font-qa/font-diff/header-1920-before-after.png new file mode 100644 index 0000000..e48ee59 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/font-diff/header-1920-before-after.png differ diff --git a/docs/sw/sw-dotum-font-qa/font-diff/layout-diff-noto-to-dotum.json b/docs/sw/sw-dotum-font-qa/font-diff/layout-diff-noto-to-dotum.json new file mode 100644 index 0000000..14a056f --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/font-diff/layout-diff-noto-to-dotum.json @@ -0,0 +1,59825 @@ +{ + "summary": [ + { + "key": "sw-header--composed-controls@1920", + "n": 52, + "resized": 17, + "moved": 7, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu@1920", + "n": 930, + "resized": 233, + "moved": 6, + "maxDw": 35, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-default@1920", + "n": 224, + "resized": 61, + "moved": 9, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-header-composition@1920", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-dynamic-data@1920", + "n": 147, + "resized": 40, + "moved": 2, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-standalone@1920", + "n": 39, + "resized": 13, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-property-bar-check@1920", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-property-bar@1920", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-integration@1920", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-responsive@1920", + "n": 224, + "resized": 61, + "moved": 9, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--document-open@1920", + "n": 1258, + "resized": 283, + "moved": 156, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--hidden-sub-controls@1920", + "n": 238, + "resized": 25, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--detail-buttons@1920", + "n": 21, + "resized": 1, + "moved": 20, + "maxDw": 0, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--overview@1920", + "n": 71, + "resized": 21, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--interactive-states@1920", + "n": 1204, + "resized": 282, + "moved": 98, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--window-move-motion@1920", + "n": 99, + "resized": 0, + "moved": 0, + "maxDw": 0, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--logo-slot@1920", + "n": 311, + "resized": 76, + "moved": 28, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--document-dropdown@1920", + "n": 1734, + "resized": 339, + "moved": 112, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--responsive-more@1920", + "n": 1004, + "resized": 154, + "moved": 46, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--k-guide@1920", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--full-footer@1920", + "n": 203, + "resized": 39, + "moved": 20, + "maxDw": 37, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--tool-groups@1920", + "n": 344, + "resized": 52, + "moved": 34, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--figma-variants@1920", + "n": 723, + "resized": 175, + "moved": 24, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "2173->2173", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--custom-content@1920", + "n": 77, + "resized": 10, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--responsive@1920", + "n": 630, + "resized": 115, + "moved": 68, + "maxDw": 37, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--parts@1920", + "n": 64, + "resized": 7, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--custom-content@1920", + "n": 171, + "resized": 11, + "moved": 1, + "maxDw": -4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--multiple-popups@1920", + "n": 193, + "resized": 61, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--property-panel-compare@1920", + "n": 291, + "resized": 72, + "moved": 4, + "maxDw": 13, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--viewer-header@1920", + "n": 72, + "resized": 29, + "moved": 35, + "maxDw": -28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--menu-groups@1920", + "n": 165, + "resized": 59, + "moved": 62, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--states@1920", + "n": 62, + "resized": 28, + "moved": 31, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-viewer-header__document-name:상태 확인용.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--dropdowns@1920", + "n": 34, + "resized": 9, + "moved": 16, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--settings-panel@1920", + "n": 132, + "resized": 42, + "moved": 58, + "maxDw": -28, + "maxDh": 32, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--content-variants@1920", + "n": 144, + "resized": 47, + "moved": 35, + "maxDw": -28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--variable-size@1920", + "n": 45, + "resized": 1, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-property__title:250 × auto (최소 폭)" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--responsive@1920", + "n": 202, + "resized": 55, + "moved": 75, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-viewer-header__document-name:C0060202-001-평면및종단면도.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--compare-with-sw-header@1920", + "n": 183, + "resized": 45, + "moved": 35, + "maxDw": 23, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--logo@1920", + "n": 218, + "resized": 87, + "moved": 105, + "maxDw": 28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-theme--theme-inheritance@1920", + "n": 385, + "resized": 16, + "moved": 26, + "maxDw": 12, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--composed-controls@1280", + "n": 52, + "resized": 17, + "moved": 7, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu@1280", + "n": 930, + "resized": 233, + "moved": 0, + "maxDw": 35, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-default@1280", + "n": 224, + "resized": 61, + "moved": 9, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-header-composition@1280", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-dynamic-data@1280", + "n": 147, + "resized": 40, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-standalone@1280", + "n": 39, + "resized": 13, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-property-bar-check@1280", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-property-bar@1280", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-integration@1280", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-responsive@1280", + "n": 193, + "resized": 42, + "moved": 1, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--document-open@1280", + "n": 1258, + "resized": 283, + "moved": 156, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--hidden-sub-controls@1280", + "n": 238, + "resized": 25, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--detail-buttons@1280", + "n": 21, + "resized": 1, + "moved": 20, + "maxDw": 0, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--overview@1280", + "n": 71, + "resized": 21, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--interactive-states@1280", + "n": 1204, + "resized": 282, + "moved": 98, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--window-move-motion@1280", + "n": 99, + "resized": 0, + "moved": 0, + "maxDw": 0, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--logo-slot@1280", + "n": 311, + "resized": 76, + "moved": 28, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--document-dropdown@1280", + "n": 1734, + "resized": 339, + "moved": 112, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--responsive-more@1280", + "n": 1004, + "resized": 154, + "moved": 46, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--k-guide@1280", + "n": 56, + "resized": 8, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--full-footer@1280", + "n": 203, + "resized": 39, + "moved": 20, + "maxDw": 37, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--tool-groups@1280", + "n": 344, + "resized": 52, + "moved": 34, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--figma-variants@1280", + "n": 713, + "resized": 175, + "moved": 24, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--custom-content@1280", + "n": 77, + "resized": 10, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--responsive@1280", + "n": 630, + "resized": 115, + "moved": 68, + "maxDw": 37, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--parts@1280", + "n": 64, + "resized": 7, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--custom-content@1280", + "n": 171, + "resized": 11, + "moved": 1, + "maxDw": -4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--multiple-popups@1280", + "n": 193, + "resized": 61, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--property-panel-compare@1280", + "n": 291, + "resized": 72, + "moved": 8, + "maxDw": 13, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--viewer-header@1280", + "n": 72, + "resized": 29, + "moved": 35, + "maxDw": -28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--menu-groups@1280", + "n": 165, + "resized": 59, + "moved": 62, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--states@1280", + "n": 62, + "resized": 28, + "moved": 31, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-viewer-header__document-name:상태 확인용.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--dropdowns@1280", + "n": 34, + "resized": 9, + "moved": 16, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--settings-panel@1280", + "n": 132, + "resized": 42, + "moved": 58, + "maxDw": -28, + "maxDh": 32, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--content-variants@1280", + "n": 144, + "resized": 47, + "moved": 35, + "maxDw": -28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--variable-size@1280", + "n": 45, + "resized": 1, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-property__title:250 × auto (최소 폭)" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--responsive@1280", + "n": 202, + "resized": 55, + "moved": 75, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [ + "hm-sw-viewer-header__document-name:C0060202-001-평면및종단면도.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--compare-with-sw-header@1280", + "n": 183, + "resized": 45, + "moved": 35, + "maxDw": 23, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--logo@1280", + "n": 218, + "resized": 87, + "moved": 105, + "maxDw": 28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-theme--theme-inheritance@1280", + "n": 385, + "resized": 16, + "moved": 26, + "maxDw": 12, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1280->1280", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--composed-controls@900", + "n": 52, + "resized": 17, + "moved": 7, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu@900", + "n": 807, + "resized": 183, + "moved": 4, + "maxDw": 35, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-home-menu__label:Display...", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-default@900", + "n": 224, + "resized": 61, + "moved": 9, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-header-composition@900", + "n": 41, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-dynamic-data@900", + "n": 137, + "resized": 34, + "moved": 1, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-standalone@900", + "n": 39, + "resized": 13, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-property-bar-check@900", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-property-bar@900", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1222->1222", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-integration@900", + "n": 41, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-responsive@900", + "n": 177, + "resized": 37, + "moved": 1, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--document-open@900", + "n": 1258, + "resized": 283, + "moved": 156, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--hidden-sub-controls@900", + "n": 238, + "resized": 25, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--detail-buttons@900", + "n": 21, + "resized": 1, + "moved": 20, + "maxDw": 0, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--overview@900", + "n": 55, + "resized": 15, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--interactive-states@900", + "n": 1204, + "resized": 282, + "moved": 98, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--window-move-motion@900", + "n": 99, + "resized": 0, + "moved": 0, + "maxDw": 0, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--logo-slot@900", + "n": 311, + "resized": 76, + "moved": 28, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--document-dropdown@900", + "n": 1734, + "resized": 339, + "moved": 112, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--responsive-more@900", + "n": 1004, + "resized": 154, + "moved": 46, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--k-guide@900", + "n": 41, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-footer--full-footer@900", + "n": 203, + "resized": 39, + "moved": 20, + "maxDw": 37, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--tool-groups@900", + "n": 344, + "resized": 52, + "moved": 34, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--figma-variants@900", + "n": 695, + "resized": 174, + "moved": 9, + "maxDw": 7, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--custom-content@900", + "n": 77, + "resized": 10, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--responsive@900", + "n": 630, + "resized": 115, + "moved": 68, + "maxDw": 37, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--parts@900", + "n": 64, + "resized": 7, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--custom-content@900", + "n": 171, + "resized": 11, + "moved": 1, + "maxDw": -4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--multiple-popups@900", + "n": 193, + "resized": 61, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--property-panel-compare@900", + "n": 291, + "resized": 72, + "moved": 4, + "maxDw": 13, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--viewer-header@900", + "n": 38, + "resized": 9, + "moved": 14, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--menu-groups@900", + "n": 165, + "resized": 59, + "moved": 62, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--states@900", + "n": 62, + "resized": 28, + "moved": 31, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-viewer-header__document-name:상태 확인용.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--dropdowns@900", + "n": 34, + "resized": 9, + "moved": 16, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--settings-panel@900", + "n": 98, + "resized": 22, + "moved": 37, + "maxDw": 9, + "maxDh": 32, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--content-variants@900", + "n": 110, + "resized": 27, + "moved": 14, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--variable-size@900", + "n": 45, + "resized": 1, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-property__title:250 × auto (최소 폭)" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--responsive@900", + "n": 202, + "resized": 55, + "moved": 75, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-viewer-header__document-name:C0060202-001-평면및종단면도.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--compare-with-sw-header@900", + "n": 168, + "resized": 41, + "moved": 35, + "maxDw": 23, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [ + "hm-sw-header__document-name:C0060202-001-평면및종단면도.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--logo@900", + "n": 218, + "resized": 87, + "moved": 105, + "maxDw": 28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-theme--theme-inheritance@900", + "n": 347, + "resized": 9, + "moved": 14, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "900->900", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--composed-controls@640", + "n": 52, + "resized": 17, + "moved": 7, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu@640", + "n": 745, + "resized": 175, + "moved": 0, + "maxDw": 35, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display...", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-recent-files__name:001-연결종합 계획평면도22222222.dwg", + "hm-sw-recent-files__name:00.시공상세도 분석 및 목차_20240416.grm", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-default@640", + "n": 224, + "resized": 61, + "moved": 9, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1920->1920", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-home-menu__label:Display...", + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-header-composition@640", + "n": 31, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-dynamic-data@640", + "n": 131, + "resized": 30, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-standalone@640", + "n": 39, + "resized": 13, + "moved": 0, + "maxDw": 11, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-property-bar-check@640", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-property-bar@640", + "n": 13, + "resized": 12, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "1222->1222", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-integration@640", + "n": 31, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--home-menu-capture-responsive@640", + "n": 164, + "resized": 29, + "moved": 1, + "maxDw": 11, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-home-menu__label:Display..." + ], + "truncGone": [] + }, + { + "key": "sw-header--document-open@640", + "n": 1258, + "resized": 283, + "moved": 156, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--hidden-sub-controls@640", + "n": 238, + "resized": 25, + "moved": 0, + "maxDw": 15, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-item-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--detail-buttons@640", + "n": 21, + "resized": 1, + "moved": 20, + "maxDw": 0, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--overview@640", + "n": 45, + "resized": 15, + "moved": 0, + "maxDw": 52, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--interactive-states@640", + "n": 1204, + "resized": 282, + "moved": 98, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--window-move-motion@640", + "n": 99, + "resized": 0, + "moved": 0, + "maxDw": 0, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--logo-slot@640", + "n": 311, + "resized": 76, + "moved": 28, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--document-dropdown@640", + "n": 1734, + "resized": 339, + "moved": 112, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--responsive-more@640", + "n": 1004, + "resized": 154, + "moved": 46, + "maxDw": 15, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)", + "hm-sw-header__document-name:C0020101-006-평면및종단면도(06)" + ], + "truncGone": [] + }, + { + "key": "sw-header--k-guide@640", + "n": 31, + "resized": 4, + "moved": 0, + "maxDw": 3, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--full-footer@640", + "n": 203, + "resized": 39, + "moved": 20, + "maxDw": 37, + "maxDh": -6, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--tool-groups@640", + "n": 344, + "resized": 52, + "moved": 34, + "maxDw": 29, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--figma-variants@640", + "n": 679, + "resized": 174, + "moved": 9, + "maxDw": 7, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "651->651", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--custom-content@640", + "n": 77, + "resized": 10, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--responsive@640", + "n": 630, + "resized": 115, + "moved": 68, + "maxDw": 37, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-footer--parts@640", + "n": 64, + "resized": 7, + "moved": 3, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--custom-content@640", + "n": 171, + "resized": 11, + "moved": 1, + "maxDw": -4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-popup--multiple-popups@640", + "n": 193, + "resized": 61, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-header--property-panel-compare@640", + "n": 291, + "resized": 72, + "moved": 4, + "maxDw": 13, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--viewer-header@640", + "n": 38, + "resized": 9, + "moved": 14, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--menu-groups@640", + "n": 165, + "resized": 59, + "moved": 62, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--states@640", + "n": 62, + "resized": 28, + "moved": 31, + "maxDw": 9, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-viewer-header__document-name:상태 확인용.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--dropdowns@640", + "n": 34, + "resized": 9, + "moved": 16, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--settings-panel@640", + "n": 98, + "resized": 22, + "moved": 37, + "maxDw": 9, + "maxDh": 32, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--content-variants@640", + "n": 110, + "resized": 27, + "moved": 14, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--variable-size@640", + "n": 45, + "resized": 1, + "moved": 0, + "maxDw": 4, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-property__title:250 × auto (최소 폭)" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--responsive@640", + "n": 202, + "resized": 55, + "moved": 75, + "maxDw": 23, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [ + "hm-sw-viewer-header__document-name:C0060202-001-평면및종단면도.dwg" + ], + "truncGone": [] + }, + { + "key": "sw-viewer--compare-with-sw-header@640", + "n": 158, + "resized": 41, + "moved": 35, + "maxDw": 23, + "maxDh": -4, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-viewer--logo@640", + "n": 218, + "resized": 87, + "moved": 105, + "maxDw": 28, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "640->640", + "truncNew": [], + "truncGone": [] + }, + { + "key": "sw-theme--theme-inheritance@640", + "n": 347, + "resized": 9, + "moved": 338, + "maxDw": 6, + "maxDh": 0, + "added": 0, + "removed": 0, + "more": "0->0", + "docW": "695->695", + "truncNew": [], + "truncGone": [] + } + ], + "details": { + "sw-header--composed-controls@1920": [ + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--home-menu@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "257->289", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "257->289", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "257->289", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "1.배수공-일반사항_231004.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-default@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-header-composition@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-dynamic-data@1920": [ + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-standalone@1920": [ + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "단독 타일", + "w": "62->73", + "h": "16->16" + } + ], + "sw-header--home-menu-property-bar-check@1920": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-capture-property-bar@1920": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-integration@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-responsive@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--document-open@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "184->173", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "263->263", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "761->758", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "132->129", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "263->263", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1622->1611", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1612->1601", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1502->1491", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1492->1481", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1142->1131", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1132->1121", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "882->871", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "872->861", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "782->771", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "772->761", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "254->243", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "666->655", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "656->645", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "138->127", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "534->523", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "482->471", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "160->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "117->117", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "99->99", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "46->46", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + } + ], + "sw-header--hidden-sub-controls@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--detail-buttons@1920": [ + { + "c": "hm-sw-theme", + "w": "1200->1200", + "h": "316->312" + } + ], + "sw-header--overview@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__bar-anchor", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "선택된 객체 - 원1", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--interactive-states@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--window-move-motion@1920": [], + "sw-header--logo-slot@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--document-dropdown@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Section-04.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-02.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + } + ], + "sw-header--responsive-more@1920": [ + { + "c": "hm-sw-header__leading", + "w": "127->140", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "저장", + "w": "27->32", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "내보내기", + "w": "55->63", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1292->1279", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__fields", + "w": "917->921", + "h": "38->38" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__toggle", + "txt": "측정", + "w": "27->31", + "h": "19->19" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "195->195", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "186->186", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "66->66", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + } + ], + "sw-header--k-guide@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-footer--full-footer@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "Drawing1.grm", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "7.4177, -0.2807, 0.0000", + "w": "128->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--tool-groups@1920": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + } + ], + "sw-footer--figma-variants@1920": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "125->128", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "73->76", + "h": "24->24" + }, + { + "c": "", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-footer--custom-content@1920": [ + { + "c": "hm-sw-footer-tab__label", + "txt": "평면도", + "w": "34->37", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "모델", + "w": "23->24", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "설정", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "열기", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "177->186", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "측량", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "그리기", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "사용자", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "목록", + "w": "27->29", + "h": "16->16" + } + ], + "sw-footer--responsive@1920": [ + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "324->327", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "300->303", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "215->218", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "193->196", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "229->232", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--parts@1920": [ + { + "c": "hm-sw-footer-menu__viewport", + "w": "200->209", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-popup--custom-content@1920": [ + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "126->130", + "h": "28->28" + } + ], + "sw-popup--multiple-popups@1920": [ + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + } + ], + "sw-header--property-panel-compare@1920": [ + { + "c": "hm-sw-property__text", + "txt": "0", + "w": "8->9", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "다양함", + "w": "39->43", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "150->148", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + } + ], + "sw-viewer--viewer-header@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "145->117", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "104->76", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--menu-groups@1920": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--states@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "144->141", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "상태 확인용.dwg", + "w": "101->100", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1268->1271", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "771->764", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "기본", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "113->115", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Active (on)", + "w": "71->73", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "118->120", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Toggle (off)", + "w": "76->78", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "112->109", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Disabled", + "w": "58->55", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "124->120", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown", + "w": "70->66", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "195->190", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown (disabled)", + "w": "141->136", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "484->493", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "268->261", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Disabled", + "w": "76->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "66->72", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch on", + "w": "50->56", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "67->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch off", + "w": "51->57", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "61->65", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Disabled", + "w": "45->49", + "h": "11->11" + } + ], + "sw-viewer--dropdowns@1920": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "112->114", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "도면", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "268->280", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "측정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "152->162", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "오른쪽 정렬 메뉴", + "w": "98->108", + "h": "20->20" + } + ], + "sw-viewer--settings-panel@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "145->117", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "104->76", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "194->226" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 배율 (px/mm)", + "w": "119->126", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "이 도면에는 굵은 선이 없습니다 (0.50mm 였다면 ", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "AutoCAD의 \"선가중치 설정 → 표시 배율\"과 동일", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "그리드", + "w": "39->43", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "줌 속도", + "w": "43->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "166->182" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "2.5D 보기", + "w": "61->68", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "Z 높이 배율", + "w": "68->77", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "좌클릭 드래그로 회전, 중간/우클릭 드래그로 이동합니다", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--content-variants@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "145->117", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "104->76", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 켜기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 끄기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "30", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "17", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "0", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "6", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "52", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "축척", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "스냅 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "단위", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__control", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--variable-size@1920": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "크기 비교.dwg", + "w": "88->92", + "h": "20->20" + } + ], + "sw-viewer--responsive@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->234", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--compare-with-sw-header@1920": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "130->130", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + } + ], + "sw-viewer--logo@1920": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "314->287", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "328->300", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-theme--theme-inheritance@1920": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-header--composed-controls@1280": [ + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--home-menu@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "257->289", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "257->289", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "257->289", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "1.배수공-일반사항_231004.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-default@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-header-composition@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-dynamic-data@1280": [ + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-standalone@1280": [ + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "단독 타일", + "w": "62->73", + "h": "16->16" + } + ], + "sw-header--home-menu-property-bar-check@1280": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-capture-property-bar@1280": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-integration@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-responsive@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "210->210", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--document-open@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "184->173", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "263->263", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "761->758", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "132->129", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1622->1611", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1612->1601", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1502->1491", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1492->1481", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1142->1131", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1132->1121", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "882->871", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "872->861", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "782->771", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "772->761", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "254->243", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "666->655", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "656->645", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "138->127", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "534->523", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "482->471", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "160->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "117->117", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "99->99", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "46->46", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + } + ], + "sw-header--hidden-sub-controls@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--detail-buttons@1280": [ + { + "c": "hm-sw-theme", + "w": "1203->1203", + "h": "316->312" + } + ], + "sw-header--overview@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__bar-anchor", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "선택된 객체 - 원1", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--interactive-states@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--window-move-motion@1280": [], + "sw-header--logo-slot@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--document-dropdown@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Section-04.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-02.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + } + ], + "sw-header--responsive-more@1280": [ + { + "c": "hm-sw-header__leading", + "w": "127->140", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "저장", + "w": "27->32", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "내보내기", + "w": "55->63", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1292->1279", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__fields", + "w": "917->921", + "h": "38->38" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__toggle", + "txt": "측정", + "w": "27->31", + "h": "19->19" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "195->195", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "186->186", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "66->66", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + } + ], + "sw-header--k-guide@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-footer--full-footer@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "Drawing1.grm", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "7.4177, -0.2807, 0.0000", + "w": "128->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--tool-groups@1280": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + } + ], + "sw-footer--figma-variants@1280": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "125->128", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "73->76", + "h": "24->24" + }, + { + "c": "", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-footer--custom-content@1280": [ + { + "c": "hm-sw-footer-tab__label", + "txt": "평면도", + "w": "34->37", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "모델", + "w": "23->24", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "설정", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "열기", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "177->186", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "측량", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "그리기", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "사용자", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "목록", + "w": "27->29", + "h": "16->16" + } + ], + "sw-footer--responsive@1280": [ + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "324->327", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "300->303", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "215->218", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "193->196", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "229->232", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--parts@1280": [ + { + "c": "hm-sw-footer-menu__viewport", + "w": "200->209", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-popup--custom-content@1280": [ + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "126->130", + "h": "28->28" + } + ], + "sw-popup--multiple-popups@1280": [ + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + } + ], + "sw-header--property-panel-compare@1280": [ + { + "c": "hm-sw-property__text", + "txt": "0", + "w": "8->9", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "다양함", + "w": "39->43", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "150->148", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + } + ], + "sw-viewer--viewer-header@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "148->120", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "107->79", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--menu-groups@1280": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--states@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "144->141", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "상태 확인용.dwg", + "w": "101->100", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1268->1271", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "771->764", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "기본", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "113->115", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Active (on)", + "w": "71->73", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "118->120", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Toggle (off)", + "w": "76->78", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "112->109", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Disabled", + "w": "58->55", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "124->120", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown", + "w": "70->66", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "195->190", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown (disabled)", + "w": "141->136", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "484->493", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "268->261", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Disabled", + "w": "76->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "66->72", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch on", + "w": "50->56", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "67->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch off", + "w": "51->57", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "61->65", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Disabled", + "w": "45->49", + "h": "11->11" + } + ], + "sw-viewer--dropdowns@1280": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "112->114", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "도면", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "268->280", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "측정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "152->162", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "오른쪽 정렬 메뉴", + "w": "98->108", + "h": "20->20" + } + ], + "sw-viewer--settings-panel@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "148->120", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "107->79", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "194->226" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 배율 (px/mm)", + "w": "119->126", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "이 도면에는 굵은 선이 없습니다 (0.50mm 였다면 ", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "AutoCAD의 \"선가중치 설정 → 표시 배율\"과 동일", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "그리드", + "w": "39->43", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "줌 속도", + "w": "43->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "166->182" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "2.5D 보기", + "w": "61->68", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "Z 높이 배율", + "w": "68->77", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "좌클릭 드래그로 회전, 중간/우클릭 드래그로 이동합니다", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--content-variants@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "148->120", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "107->79", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 켜기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 끄기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "30", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "17", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "0", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "6", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "52", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "축척", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "스냅 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "단위", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__control", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--variable-size@1280": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "크기 비교.dwg", + "w": "88->92", + "h": "20->20" + } + ], + "sw-viewer--responsive@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->234", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--compare-with-sw-header@1280": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "133->133", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + } + ], + "sw-viewer--logo@1280": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "314->287", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "328->300", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-theme--theme-inheritance@1280": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-header--composed-controls@900": [ + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--home-menu@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "257->289", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "257->289", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "257->289", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "1.배수공-일반사항_231004.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-default@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-header-composition@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-dynamic-data@900": [ + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "3개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-standalone@900": [ + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "단독 타일", + "w": "62->73", + "h": "16->16" + } + ], + "sw-header--home-menu-property-bar-check@900": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-capture-property-bar@900": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-integration@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-responsive@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "4개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--document-open@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "184->173", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "263->263", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "761->758", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "132->129", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1622->1611", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1612->1601", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1502->1491", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1492->1481", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1142->1131", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1132->1121", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "882->871", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "872->861", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "782->771", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "772->761", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "254->243", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "666->655", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "656->645", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "138->127", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "534->523", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "482->471", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "160->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "117->117", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "99->99", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "46->46", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + } + ], + "sw-header--hidden-sub-controls@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--detail-buttons@900": [ + { + "c": "hm-sw-theme", + "w": "846->846", + "h": "316->312" + } + ], + "sw-header--overview@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "선택된 객체 - 원1", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--interactive-states@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--window-move-motion@900": [], + "sw-header--logo-slot@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--document-dropdown@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Section-04.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-02.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + } + ], + "sw-header--responsive-more@900": [ + { + "c": "hm-sw-header__leading", + "w": "127->140", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "저장", + "w": "27->32", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "내보내기", + "w": "55->63", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1292->1279", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__fields", + "w": "917->921", + "h": "38->38" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__toggle", + "txt": "측정", + "w": "27->31", + "h": "19->19" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "195->195", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "186->186", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "66->66", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + } + ], + "sw-header--k-guide@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-footer--full-footer@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "Drawing1.grm", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "7.4177, -0.2807, 0.0000", + "w": "128->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--tool-groups@900": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + } + ], + "sw-footer--figma-variants@900": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "125->128", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "73->76", + "h": "24->24" + }, + { + "c": "", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-footer--custom-content@900": [ + { + "c": "hm-sw-footer-tab__label", + "txt": "평면도", + "w": "34->37", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "모델", + "w": "23->24", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "설정", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "열기", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "177->186", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "측량", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "그리기", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "사용자", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "목록", + "w": "27->29", + "h": "16->16" + } + ], + "sw-footer--responsive@900": [ + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "324->327", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "300->303", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "215->218", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "193->196", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "229->232", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--parts@900": [ + { + "c": "hm-sw-footer-menu__viewport", + "w": "200->209", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-popup--custom-content@900": [ + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "126->130", + "h": "28->28" + } + ], + "sw-popup--multiple-popups@900": [ + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + } + ], + "sw-header--property-panel-compare@900": [ + { + "c": "hm-sw-property__text", + "txt": "0", + "w": "8->9", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "다양함", + "w": "39->43", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "150->148", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + } + ], + "sw-viewer--viewer-header@900": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--menu-groups@900": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--states@900": [ + { + "c": "hm-sw-viewer-header__document", + "w": "144->141", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "상태 확인용.dwg", + "w": "101->100", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1268->1271", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "771->764", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "기본", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "113->115", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Active (on)", + "w": "71->73", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "118->120", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Toggle (off)", + "w": "76->78", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "112->109", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Disabled", + "w": "58->55", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "124->120", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown", + "w": "70->66", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "195->190", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown (disabled)", + "w": "141->136", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "484->493", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "268->261", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Disabled", + "w": "76->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "66->72", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch on", + "w": "50->56", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "67->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch off", + "w": "51->57", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "61->65", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Disabled", + "w": "45->49", + "h": "11->11" + } + ], + "sw-viewer--dropdowns@900": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "112->114", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "도면", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "268->280", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "측정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "152->162", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "오른쪽 정렬 메뉴", + "w": "98->108", + "h": "20->20" + } + ], + "sw-viewer--settings-panel@900": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "194->226" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 배율 (px/mm)", + "w": "119->126", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "이 도면에는 굵은 선이 없습니다 (0.50mm 였다면 ", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "AutoCAD의 \"선가중치 설정 → 표시 배율\"과 동일", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "그리드", + "w": "39->43", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "줌 속도", + "w": "43->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "166->182" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "2.5D 보기", + "w": "61->68", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "Z 높이 배율", + "w": "68->77", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "좌클릭 드래그로 회전, 중간/우클릭 드래그로 이동합니다", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--content-variants@900": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 켜기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 끄기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "30", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "17", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "0", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "6", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "52", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "축척", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "스냅 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "단위", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__control", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--variable-size@900": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "크기 비교.dwg", + "w": "88->92", + "h": "20->20" + } + ], + "sw-viewer--responsive@900": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->234", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--compare-with-sw-header@900": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + } + ], + "sw-viewer--logo@900": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "314->287", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "328->300", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-theme--theme-inheritance@900": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-header--composed-controls@640": [ + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--home-menu@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "4개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "4개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "257->289", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "257->289", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\Design.", + "w": "257->289", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "1.배수공-일반사항_231004.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "264->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "001-연결종합 계획평면도22222222.dwg", + "w": "264->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "264->299", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "226->258", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "03.암발파공법적용도_231011.grm", + "w": "226->258", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "226->258", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "225->256", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "0_목차.dwg", + "w": "225->256", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "225->256", + "h": "14->14" + }, + { + "c": "hm-sw-recent-files__text", + "w": "282->299", + "h": "32->32" + }, + { + "c": "hm-sw-recent-files__name", + "txt": "00.시공상세도 분석 및 목차_20240416.grm", + "w": "282->299", + "h": "16->16" + }, + { + "c": "hm-sw-recent-files__path", + "txt": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "w": "282->299", + "h": "14->14" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-default@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-header-composition@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-dynamic-data@640": [ + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "4개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--home-menu-standalone@640": [ + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "조합형 섹션", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 A", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도구 B", + "w": "45->53", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "실행", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "1개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "단독 타일", + "w": "62->73", + "h": "16->16" + } + ], + "sw-header--home-menu-property-bar-check@640": [ + { + "c": "hm-sw-property-bar", + "w": "530->570", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-capture-property-bar@640": [ + { + "c": "hm-sw-property-bar", + "w": "530->582", + "h": "28->28" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "원", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--home-menu-integration@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-header--home-menu-capture-responsive@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "작업중인 파일", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장", + "w": "31->35", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복사저장", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "내보내기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "도면묶기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "다른파일 열기", + "w": "117->124", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "찾아열기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "최근파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "새파일", + "w": "44->51", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "파일 손상시", + "w": "105->111", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "복구하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "임시파일", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "Display...", + "w": "73->76", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "저장하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "불러오기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "궁금하면", + "w": "91->95", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "설명보기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "문의하기", + "w": "58->66", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "S/W정보", + "w": "60->70", + "h": "16->16" + }, + { + "c": "hm-sw-home-menu__measure-row", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__section", + "w": "101->104", + "h": "75->75" + }, + { + "c": "hm-sw-home-menu__title", + "txt": "더보기", + "w": "80->83", + "h": "19->19" + }, + { + "c": "hm-sw-home-menu__label", + "txt": "5개 그룹", + "w": "57->68", + "h": "16->16" + } + ], + "sw-header--document-open@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "231->220", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "184->173", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "250->247", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "203->200", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "263->263", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "761->758", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "179->176", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "132->129", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "58->61", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Open", + "w": "40->43", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1622->1611", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1612->1601", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1502->1491", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1492->1481", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1142->1131", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "1132->1121", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "882->871", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "872->861", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "782->771", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "772->761", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "294->283", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "254->243", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "666->655", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "656->645", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "178->167", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "138->127", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__leading", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "77->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "파일 열기", + "w": "59->70", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "534->523", + "h": "48->48" + }, + { + "c": "hm-sw-header__fields", + "w": "482->471", + "h": "48->48" + }, + { + "c": "hm-sw-header__control", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "200->189", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "160->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "117->117", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "99->99", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "46->46", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + } + ], + "sw-header--hidden-sub-controls@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "40->44", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "40->44", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "WALL", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--detail-buttons@640": [ + { + "c": "hm-sw-theme", + "w": "602->602", + "h": "316->312" + } + ], + "sw-header--overview@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-property-bar__content", + "w": "528->580", + "h": "27->27" + }, + { + "c": "hm-sw-property-bar__object", + "txt": "선택된 객체 - 원1", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-property-bar__fields", + "w": "438->490", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "90->103", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "104->117", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "58->68", + "h": "20->20" + }, + { + "c": "hm-sw-property-bar__field", + "w": "99->113", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "66->78", + "h": "20->20" + } + ], + "sw-header--interactive-states@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + } + ], + "sw-header--window-move-motion@640": [], + "sw-header--logo-slot@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + } + ], + "sw-header--document-dropdown@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-01.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Section-04.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Drawing-02.dwg", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)-수정본-최", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "Sample-Plan-03.dxf", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-action", + "txt": "+ New", + "w": "55->59", + "h": "24->24" + }, + { + "c": "hm-sw-header__document-action", + "txt": "Open", + "w": "50->53", + "h": "24->24" + } + ], + "sw-header--responsive-more@640": [ + { + "c": "hm-sw-header__leading", + "w": "127->140", + "h": "48->48" + }, + { + "c": "hm-sw-header__document", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "45->50", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "저장", + "w": "27->32", + "h": "20->16" + }, + { + "c": "hm-sw-header__document", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-button", + "w": "80->88", + "h": "48->48" + }, + { + "c": "hm-sw-header__document-name", + "txt": "내보내기", + "w": "55->63", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "143->143", + "h": "20->16" + }, + { + "c": "hm-sw-header__object-area", + "w": "1292->1279", + "h": "48->48" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__fields", + "w": "917->921", + "h": "38->38" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__toggle", + "txt": "측정", + "w": "27->31", + "h": "19->19" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "150->150", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "185->190", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "85->90", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "85->90", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Continuous", + "w": "85->90", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "110->110", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "195->195", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "96->96", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "135->135", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "72->87", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "72->87", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "255,229,0", + "w": "72->87", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "199->199", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "71->71", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "186->186", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "67->67", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "66->66", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "111->118", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "111->118", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Sample-Center", + "w": "111->118", + "h": "16->16" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "60->60", + "h": "20->16" + } + ], + "sw-header--k-guide@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0020101-006-평면및종단면도(06)", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "139->142", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "139->142", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0_Layer_Cludmark", + "w": "139->142", + "h": "16->16" + } + ], + "sw-footer--full-footer@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "Drawing1.grm", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__line-values", + "w": "160->165", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "선스타일", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-header__font-name", + "txt": "Arial", + "w": "40->38", + "h": "24->18" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->70", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "문자스타일", + "w": "68->70", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->70", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "68->69", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "치수스타일", + "w": "68->69", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "Standard", + "w": "68->69", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "7.4177, -0.2807, 0.0000", + "w": "128->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--tool-groups@640": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "593->622", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "587->616", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + } + ], + "sw-footer--figma-variants@640": [ + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "111->113", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "52->54", + "h": "24->24" + }, + { + "c": "", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "52->54", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "59->61", + "h": "24->24" + }, + { + "c": "", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "59->61", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "125->128", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "66->69", + "h": "24->24" + }, + { + "c": "", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "66->69", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "73->76", + "h": "24->24" + }, + { + "c": "", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "73->76", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도로/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-theme", + "w": "146->151", + "h": "164->164" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "87->92", + "h": "24->24" + }, + { + "c": "", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "87->92", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu", + "w": "94->99", + "h": "24->24" + }, + { + "c": "", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "94->99", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-guide__title", + "txt": "명령어 등록", + "w": "71->78", + "h": "16->16" + }, + { + "c": "hm-sw-footer-guide__caption", + "txt": "빠른사용", + "w": "45->49", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 03", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "23->26", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-footer--custom-content@640": [ + { + "c": "hm-sw-footer-tab__label", + "txt": "평면도", + "w": "34->37", + "h": "14->14" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "모델", + "w": "23->24", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "설정", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "열기", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "177->186", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "측량", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "그리기", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "사용자", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령", + "w": "27->29", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "목록", + "w": "27->29", + "h": "16->16" + } + ], + "sw-footer--responsive@640": [ + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "532->535", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__viewport", + "w": "728->765", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "324->327", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "300->303", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "215->218", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "193->196", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer__status", + "txt": "10.5939, 6.0728, 0.0000", + "w": "131->126", + "h": "17->17" + }, + { + "c": "hm-sw-footer-tab__label", + "txt": "Layout 02", + "w": "57->55", + "h": "14->14" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "보조기능", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "229->232", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "치수/연산", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "블록", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "레이어", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선택/조회", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "모델링", + "w": "59->62", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "선형/횡단", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "구조/배근", + "w": "80->85", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__title", + "txt": "명령어", + "w": "40->44", + "h": "16->16" + }, + { + "c": "hm-sw-footer-side__subtitle", + "txt": "전체보기", + "w": "54->58", + "h": "16->16" + } + ], + "sw-footer--parts@640": [ + { + "c": "hm-sw-footer-menu__viewport", + "w": "200->209", + "h": "24->24" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "도형", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "수정", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "편집", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-menu__tab", + "txt": "문자", + "w": "45->47", + "h": "16->16" + }, + { + "c": "hm-sw-footer-command__label", + "txt": "Command:", + "w": "72->69", + "h": "14->14" + }, + { + "c": "hm-sw-footer-command__input", + "w": "469->472", + "h": "16->16" + } + ], + "sw-popup--custom-content@640": [ + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "27->29", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "126->130", + "h": "28->28" + } + ], + "sw-popup--multiple-popups@640": [ + { + "c": "hm-sw-property__text", + "txt": "WALL", + "w": "38->39", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + } + ], + "sw-header--property-panel-compare@640": [ + { + "c": "hm-sw-property__text", + "txt": "0", + "w": "8->9", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "다양함", + "w": "39->43", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "18->19", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-property__text", + "txt": "0_Layer_Cludmark", + "w": "131->122", + "h": "16->16" + }, + { + "c": "hm-sw-property__trigger-text", + "w": "114->113", + "h": "16->16" + }, + { + "c": "hm-sw-property__text", + "txt": "Continuous", + "w": "80->77", + "h": "16->16" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-header__input", + "w": "119->112", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(LTscale:1)", + "w": "61->68", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "39->43", + "h": "28->28" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "157->161", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "mm", + "w": "23->19", + "h": "16->16" + }, + { + "c": "hm-sw-header__input", + "w": "150->148", + "h": "26->26" + }, + { + "c": "hm-sw-property__unit", + "txt": "(ByL)", + "w": "30->32", + "h": "16->16" + }, + { + "c": "hm-sw-property__editor", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "70->79", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "40->44", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "86->97", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "99->112", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-property__editor", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__row", + "w": "94->106", + "h": "24->24" + }, + { + "c": "hm-sw-property__value", + "w": "64->71", + "h": "20->20" + }, + { + "c": "hm-sw-header__input", + "w": "64->71", + "h": "20->20" + } + ], + "sw-viewer--viewer-header@640": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--menu-groups@640": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--states@640": [ + { + "c": "hm-sw-viewer-header__document", + "w": "144->141", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "상태 확인용.dwg", + "w": "101->100", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1268->1271", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "771->764", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "기본", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "113->115", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Active (on)", + "w": "71->73", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "118->120", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Toggle (off)", + "w": "76->78", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "112->109", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Disabled", + "w": "58->55", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "124->120", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown", + "w": "70->66", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "195->190", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "Dropdown (disabled)", + "w": "141->136", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "484->493", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "268->261", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Disabled", + "w": "76->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "66->72", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch on", + "w": "50->56", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "67->73", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Switch off", + "w": "51->57", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "61->65", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "Disabled", + "w": "45->49", + "h": "11->11" + } + ], + "sw-viewer--dropdowns@640": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "112->114", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "도면", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "268->280", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "104->106", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "측정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "152->162", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "오른쪽 정렬 메뉴", + "w": "98->108", + "h": "20->20" + } + ], + "sw-viewer--settings-panel@640": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "194->226" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "표시 배율 (px/mm)", + "w": "119->126", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "이 도면에는 굵은 선이 없습니다 (0.50mm 였다면 ", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "AutoCAD의 \"선가중치 설정 → 표시 배율\"과 동일", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "그리드", + "w": "39->43", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "줌 속도", + "w": "43->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-section", + "w": "324->324", + "h": "166->182" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "2.5D 보기", + "w": "61->68", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "Z 높이 배율", + "w": "68->77", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-hint", + "txt": "좌클릭 드래그로 회전, 중간/우클릭 드래그로 이동합니다", + "w": "298->298", + "h": "16->32" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--content-variants@640": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 켜기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "전체 끄기", + "w": "66->71", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "30", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "1", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "17", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "0", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "4", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "6", + "w": "23->22", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-badge", + "txt": "52", + "w": "30->29", + "h": "22->22" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "축척", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "스냅 사용", + "w": "56->62", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__label", + "txt": "단위", + "w": "26->29", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-field__control", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-select", + "w": "61->57", + "h": "28->28" + }, + { + "c": "hm-sw-viewer-button", + "txt": "취소", + "w": "41->43", + "h": "24->24" + }, + { + "c": "hm-sw-viewer-button", + "txt": "적용", + "w": "41->43", + "h": "24->24" + } + ], + "sw-viewer--variable-size@640": [ + { + "c": "hm-sw-viewer-header__document-name", + "txt": "크기 비교.dwg", + "w": "88->92", + "h": "20->20" + } + ], + "sw-viewer--responsive@640": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->234", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "330->342", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "224->232", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-viewer--compare-with-sw-header@640": [ + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도", + "w": "270->270", + "h": "20->16" + }, + { + "c": "hm-sw-header__mode", + "txt": "그리기모드", + "w": "90->90", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "60->65", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "색상", + "w": "60->65", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "ByLayer", + "w": "60->65", + "h": "16->16" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "149->149", + "h": "20->16" + }, + { + "c": "hm-sw-header__field-text", + "w": "35->38", + "h": "30->30" + }, + { + "c": "hm-sw-header__field-label", + "txt": "레이어", + "w": "35->38", + "h": "14->14" + }, + { + "c": "hm-sw-header__field-value", + "txt": "0", + "w": "35->38", + "h": "16->16" + } + ], + "sw-viewer--logo@640": [ + { + "c": "hm-sw-viewer-header__document", + "w": "360->357", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1053->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "314->287", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__document", + "w": "328->300", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__document-name", + "txt": "C0060202-001-평면및종단면도.dwg", + "w": "222->245", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__object", + "w": "1027->1055", + "h": "50->50" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "201->209", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "80->82", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "샘플", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "197->194", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__tabs", + "w": "187->184", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Model17,377", + "w": "97->95", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__count", + "txt": "17,377", + "w": "34->33", + "h": "15->15" + }, + { + "c": "hm-sw-viewer-header__tab", + "txt": "Layout237", + "w": "87->85", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "249->260", + "h": "42->42" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "2.5D", + "w": "23->22", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__switch-field", + "w": "70->75", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__switch-label", + "txt": "어두운 배경", + "w": "54->59", + "h": "11->11" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "358->370", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "232->240", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "81->84", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "레이어", + "w": "39->42", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "설정", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "68->70", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "속성", + "w": "26->28", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status", + "w": "80->84", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ], + "sw-theme--theme-inheritance@640": [ + { + "c": "hm-sw-viewer-header__group", + "w": "113->119", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "파일 열기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__group", + "w": "115->121", + "h": "40->40" + }, + { + "c": "hm-sw-viewer-header__button", + "w": "109->115", + "h": "34->34" + }, + { + "c": "hm-sw-viewer-header__label", + "txt": "전체 보기", + "w": "55->61", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-header__actions", + "w": "104->108", + "h": "48->48" + }, + { + "c": "hm-sw-viewer-status", + "w": "68->72", + "h": "20->20" + }, + { + "c": "hm-sw-viewer-status__label", + "txt": "도면 열림", + "w": "44->48", + "h": "20->20" + } + ] + } +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/font-diff/popup-before-after.png b/docs/sw/sw-dotum-font-qa/font-diff/popup-before-after.png new file mode 100644 index 0000000..670a325 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/font-diff/popup-before-after.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-0-도형.png b/docs/sw/sw-dotum-font-qa/footer-design/category-0-도형.png new file mode 100644 index 0000000..a86c2be Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-0-도형.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-1-수정.png b/docs/sw/sw-dotum-font-qa/footer-design/category-1-수정.png new file mode 100644 index 0000000..86a50de Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-1-수정.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-10-선형_횡단.png b/docs/sw/sw-dotum-font-qa/footer-design/category-10-선형_횡단.png new file mode 100644 index 0000000..70f8ccf Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-10-선형_횡단.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-11-구조_배근.png b/docs/sw/sw-dotum-font-qa/footer-design/category-11-구조_배근.png new file mode 100644 index 0000000..db64d7b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-11-구조_배근.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-2-편집.png b/docs/sw/sw-dotum-font-qa/footer-design/category-2-편집.png new file mode 100644 index 0000000..f5b7c82 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-2-편집.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-3-문자.png b/docs/sw/sw-dotum-font-qa/footer-design/category-3-문자.png new file mode 100644 index 0000000..8ed4a26 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-3-문자.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-4-치수_연산.png b/docs/sw/sw-dotum-font-qa/footer-design/category-4-치수_연산.png new file mode 100644 index 0000000..d0a8a13 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-4-치수_연산.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-5-블록.png b/docs/sw/sw-dotum-font-qa/footer-design/category-5-블록.png new file mode 100644 index 0000000..a4f7fd1 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-5-블록.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-6-레이어.png b/docs/sw/sw-dotum-font-qa/footer-design/category-6-레이어.png new file mode 100644 index 0000000..d5937b5 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-6-레이어.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-7-뷰.png b/docs/sw/sw-dotum-font-qa/footer-design/category-7-뷰.png new file mode 100644 index 0000000..5bb8f60 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-7-뷰.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-8-선택_조회.png b/docs/sw/sw-dotum-font-qa/footer-design/category-8-선택_조회.png new file mode 100644 index 0000000..bc34a25 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-8-선택_조회.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-9-모델링.png b/docs/sw/sw-dotum-font-qa/footer-design/category-9-모델링.png new file mode 100644 index 0000000..014053d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-9-모델링.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-add-default.png b/docs/sw/sw-dotum-font-qa/footer-design/category-add-default.png new file mode 100644 index 0000000..29bc79c Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-add-default.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/category-add-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/category-add-hover.png new file mode 100644 index 0000000..a109d63 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/category-add-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/footer-design-review.json b/docs/sw/sw-dotum-font-qa/footer-design/footer-design-review.json new file mode 100644 index 0000000..3b91589 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/footer-design/footer-design-review.json @@ -0,0 +1,1057 @@ +{ + "storybook": "http://127.0.0.1:6024", + "results": [ + { + "name": "Token --hm-sw-footer-gra-border-orange = user gradient (#DA6813 8.52% / #FFBB89 37.93% / #E5690D 71.85% / #AE3607 92.77%)", + "result": "PASS", + "detail": "linear-gradient(180deg, #da6813 8.52%, #ffbb89 37.93%, #e5690d 71.85%, #ae3607 92.77%)" + }, + { + "name": "전체보기(aux) hover: ring over the whole button (opacity 0 → 1, gra-border-orange, same box)", + "result": "PASS", + "detail": { + "ring": "74×71", + "box": "74×71" + } + }, + { + "name": "전체보기(aux) hover: both text lines #FF5C00", + "result": "PASS", + "detail": [ + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ] + }, + { + "name": "전체보기(aux) hover: size and text boxes (relative to the button) unchanged", + "result": "PASS", + "detail": [ + { + "w": 74, + "h": 71, + "tx": 7.9, + "ty": 18, + "tw": 58.3, + "sx": 7.9, + "sy": 36, + "sw": 58.3 + }, + { + "w": 74, + "h": 71, + "tx": 7.9, + "ty": 18, + "tw": 58.3, + "sx": 7.9, + "sy": 36, + "sw": 58.3 + } + ] + }, + { + "name": "전체보기(aux) text = Dotum 14px", + "result": "PASS", + "detail": "Dotum" + }, + { + "name": "전체보기(commands) hover: ring over the whole button (opacity 0 → 1, gra-border-orange, same box)", + "result": "PASS", + "detail": { + "ring": "74×71", + "box": "74×71" + } + }, + { + "name": "전체보기(commands) hover: both text lines #FF5C00", + "result": "PASS", + "detail": [ + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ] + }, + { + "name": "전체보기(commands) hover: size and text boxes (relative to the button) unchanged", + "result": "PASS", + "detail": [ + { + "w": 74, + "h": 71, + "tx": 15.2, + "ty": 18, + "tw": 43.7, + "sx": 7.9, + "sy": 36, + "sw": 58.3 + }, + { + "w": 74, + "h": 71, + "tx": 15.2, + "ty": 18, + "tw": 43.7, + "sx": 7.9, + "sy": 36, + "sw": 58.3 + } + ] + }, + { + "name": "전체보기(commands) text = Dotum 14px", + "result": "PASS", + "detail": "Dotum" + }, + { + "name": "category-add hover: same size", + "result": "PASS", + "detail": "28×12" + }, + { + "name": "layout-add hover: same size", + "result": "PASS", + "detail": "24×22" + }, + { + "name": "category + hover: icon swaps to the orange + (menu-add-hover), no extra surface", + "result": "PASS", + "detail": "background image changes on hover" + }, + { + "name": "Layout + hover: gra-border-orange surface masked to the button shape, + icon on top", + "result": "PASS", + "detail": "url(+) , gra-border-orange ; mask=button shape" + }, + { + "name": "Model selected: gra-border-orange surface (::before) masked to the model shape", + "result": "PASS", + "detail": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) " + }, + { + "name": "Model not selected: its own tab image surface (tab-model.svg, beige), no orange ::before", + "result": "PASS", + "detail": { + "tab": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='73'%20height='22'%20viewBox='0%200%2073%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='bg'%3e%3cg%20filter='url(%23filter0_i_0_5)'%3e%3cpath%20d='M13.6039%203.29463C15.1093%201.22467%2017.5143%200%2020.0738%200H73V22H0L13.6039%203.29463Z'%20fill='%23C3B79E'/%3e%3c/g%3e%3cpath%20d='M20.0742%200.5H72.5V21.5H0.981445L14.0078%203.58887C15.4191%201.64829%2017.6747%200.5%2020.0742%200.5Z'%20stroke='url(%23paint0_linear_0_5)'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_5'%20x='0'%20y='-3'%20width='73'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_5'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_5'%20x1='38.5'%20y1='0'%20x2='38.5'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-opacity='0.05'/%3e%3cstop%20offset='1'%20stop-opacity='0.3'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "before": "rgba(0, 0, 0, 0)" + } + }, + { + "name": "Model text #161410 12px 400 no outline — selected, unselected and hover identical", + "result": "PASS", + "detail": [ + "rgb(22, 20, 16) 12px 400 Dotum", + "rgb(22, 20, 16) 12px 400 Dotum" + ] + }, + { + "name": "Layout 1 default/hover text: #161410 12px 400, same box (Dotum)", + "result": "PASS", + "detail": "rgb(22, 20, 16) → rgb(22, 20, 16), 69×22" + }, + { + "name": "Categories: vacant surface never reaches the selected tab pocket (no split surface) — every category", + "result": "PASS", + "detail": [ + "도형: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "수정: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "편집: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "문자: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "치수/연산: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "블록: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "레이어: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "뷰: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "선택/조회: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "모델링: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "선형/횡단: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport", + "구조/배근: vacant↓1074 tab↑1078 behind=hm-sw-footer-menu__viewport" + ] + }, + { + "name": "Categories: one surface behind the whole pocket (left / middle / right) — every category", + "result": "PASS", + "detail": [ + "도형:hm-sw-footer-menu__viewport", + "수정:hm-sw-footer-menu__viewport", + "편집:hm-sw-footer-menu__viewport", + "문자:hm-sw-footer-menu__viewport", + "치수/연산:hm-sw-footer-menu__viewport", + "블록:hm-sw-footer-menu__viewport", + "레이어:hm-sw-footer-menu__viewport", + "뷰:hm-sw-footer-menu__viewport", + "선택/조회:hm-sw-footer-menu__viewport", + "모델링:hm-sw-footer-menu__viewport", + "선형/횡단:hm-sw-footer-menu__viewport", + "구조/배근:hm-sw-footer-menu__viewport" + ] + }, + { + "name": "Categories: tab text Dotum", + "result": "PASS", + "detail": "" + }, + { + "name": "Console / page error 없음", + "result": "PASS", + "detail": [] + } + ], + "facts": { + "token": "linear-gradient(180deg, #da6813 8.52%, #ffbb89 37.93%, #e5690d 71.85%, #ae3607 92.77%)", + "side": [ + { + "label": "aux", + "default": { + "box": { + "x": 600, + "y": 1025.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='74'%20height='71'%20viewBox='0%200%2074%2071'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Vector'%20d='M0.5%200.5H73.5V70.5H0.5V0.5Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='url(%23paint0_linear_0_21)'%20stroke='url(%23paint1_linear_0_21)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_21'%20x1='0'%20y1='71.0004'%20x2='-1.95986e-06'%20y2='0'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%232B261C'/%3e%3cstop%20offset='0.12'%20stop-color='%2315120C'/%3e%3cstop%20offset='0.28'%20stop-color='%23282216'/%3e%3cstop%20offset='0.37'%20stop-color='%23322B1D'/%3e%3cstop%20offset='0.51'%20stop-color='%233C3423'/%3e%3cstop%20offset='0.89'%20stop-color='%232B2417'/%3e%3cstop%20offset='1'%20stop-color='%23433A25'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_21'%20x1='37'%20y1='0'%20x2='37'%20y2='71'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23886D35'/%3e%3cstop%20offset='0.0884568'%20stop-color='%23423625'/%3e%3cstop%20offset='0.26169'%20stop-color='%23F3DBA8'/%3e%3cstop%20offset='0.837918'%20stop-color='%230E0B06'/%3e%3cstop%20offset='1'%20stop-color='%23574B30'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "ring": { + "x": 600, + "y": 1025.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "0", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px), linear-" + }, + "title": { + "x": 607.9, + "y": 1043.5, + "w": 58.3, + "h": 16, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + }, + "sub": { + "x": 607.9, + "y": 1061.5, + "w": 58.3, + "h": 16, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + } + }, + "hover": { + "box": { + "x": 600, + "y": 1025.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='74'%20height='71'%20viewBox='0%200%2074%2071'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Vector'%20d='M0.5%200.5H73.5V70.5H0.5V0.5Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='url(%23paint0_linear_0_21)'%20stroke='url(%23paint1_linear_0_21)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_21'%20x1='0'%20y1='71.0004'%20x2='-1.95986e-06'%20y2='0'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%232B261C'/%3e%3cstop%20offset='0.12'%20stop-color='%2315120C'/%3e%3cstop%20offset='0.28'%20stop-color='%23282216'/%3e%3cstop%20offset='0.37'%20stop-color='%23322B1D'/%3e%3cstop%20offset='0.51'%20stop-color='%233C3423'/%3e%3cstop%20offset='0.89'%20stop-color='%232B2417'/%3e%3cstop%20offset='1'%20stop-color='%23433A25'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_21'%20x1='37'%20y1='0'%20x2='37'%20y2='71'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23886D35'/%3e%3cstop%20offset='0.0884568'%20stop-color='%23423625'/%3e%3cstop%20offset='0.26169'%20stop-color='%23F3DBA8'/%3e%3cstop%20offset='0.837918'%20stop-color='%230E0B06'/%3e%3cstop%20offset='1'%20stop-color='%23574B30'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "ring": { + "x": 600, + "y": 1025.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px), linear-" + }, + "title": { + "x": 607.9, + "y": 1043.5, + "w": 58.3, + "h": 16, + "color": "rgb(255, 92, 0)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + }, + "sub": { + "x": 607.9, + "y": 1061.5, + "w": 58.3, + "h": 16, + "color": "rgb(255, 92, 0)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + } + } + }, + { + "label": "commands", + "default": { + "box": { + "x": 2446, + "y": 1026.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='74'%20height='71'%20viewBox='0%200%2074%2071'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Vector'%20d='M0.5%200.5H73.5V70.5H0.5V0.5Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='url(%23paint0_linear_0_21)'%20stroke='url(%23paint1_linear_0_21)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_21'%20x1='0'%20y1='71.0004'%20x2='-1.95986e-06'%20y2='0'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%232B261C'/%3e%3cstop%20offset='0.12'%20stop-color='%2315120C'/%3e%3cstop%20offset='0.28'%20stop-color='%23282216'/%3e%3cstop%20offset='0.37'%20stop-color='%23322B1D'/%3e%3cstop%20offset='0.51'%20stop-color='%233C3423'/%3e%3cstop%20offset='0.89'%20stop-color='%232B2417'/%3e%3cstop%20offset='1'%20stop-color='%23433A25'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_21'%20x1='37'%20y1='0'%20x2='37'%20y2='71'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23886D35'/%3e%3cstop%20offset='0.0884568'%20stop-color='%23423625'/%3e%3cstop%20offset='0.26169'%20stop-color='%23F3DBA8'/%3e%3cstop%20offset='0.837918'%20stop-color='%230E0B06'/%3e%3cstop%20offset='1'%20stop-color='%23574B30'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "ring": { + "x": 2446, + "y": 1026.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "0", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px), linear-" + }, + "title": { + "x": 2461.2, + "y": 1044.5, + "w": 43.7, + "h": 16, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + }, + "sub": { + "x": 2453.9, + "y": 1062.5, + "w": 58.3, + "h": 16, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + } + }, + "hover": { + "box": { + "x": 1726, + "y": 1026.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='74'%20height='71'%20viewBox='0%200%2074%2071'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Vector'%20d='M0.5%200.5H73.5V70.5H0.5V0.5Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='url(%23paint0_linear_0_21)'%20stroke='url(%23paint1_linear_0_21)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_21'%20x1='0'%20y1='71.0004'%20x2='-1.95986e-06'%20y2='0'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%232B261C'/%3e%3cstop%20offset='0.12'%20stop-color='%2315120C'/%3e%3cstop%20offset='0.28'%20stop-color='%23282216'/%3e%3cstop%20offset='0.37'%20stop-color='%23322B1D'/%3e%3cstop%20offset='0.51'%20stop-color='%233C3423'/%3e%3cstop%20offset='0.89'%20stop-color='%232B2417'/%3e%3cstop%20offset='1'%20stop-color='%23433A25'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_21'%20x1='37'%20y1='0'%20x2='37'%20y2='71'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23886D35'/%3e%3cstop%20offset='0.0884568'%20stop-color='%23423625'/%3e%3cstop%20offset='0.26169'%20stop-color='%23F3DBA8'/%3e%3cstop%20offset='0.837918'%20stop-color='%230E0B06'/%3e%3cstop%20offset='1'%20stop-color='%23574B30'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "ring": { + "x": 1726, + "y": 1026.5, + "w": 74, + "h": 71, + "color": "rgb(246, 244, 242)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px), linear-" + }, + "title": { + "x": 1741.2, + "y": 1044.5, + "w": 43.7, + "h": 16, + "color": "rgb(255, 92, 0)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + }, + "sub": { + "x": 1733.9, + "y": 1062.5, + "w": 58.3, + "h": 16, + "color": "rgb(255, 92, 0)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "outline", + "mask": "none" + } + } + } + ], + "add": { + "category-add": { + "default": { + "box": { + "x": 1675.5, + "y": 1079.5, + "w": 28, + "h": 12, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='28'%20height='12'%20viewBox='0%200%2028%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='btn_add'%3e%3cg%20id='Union'%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='%23D4CBBD'/%3e%3cmask%20id='stroke0_0_402'%20maskUnits='userSpaceOnUse'%20x='8'%20y='0'%20width='12'%20height='12'%20fill='black'%3e%3crect%20fill='white'%20x='8'%20width='12'%20height='12'/%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'/%3e%3c/mask%3e%3cpath%20d='M15%201V5H19V7H15V11H13L13%207H9V5H13L13%201H15Z'%20stroke-width='2'%20stroke='black'%20mask='url(%23stroke0_0_402)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1675.5, + "y": 1079.5, + "w": 28, + "h": 12, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + }, + "hover": { + "box": { + "x": 1675.5, + "y": 1079.5, + "w": 28, + "h": 12, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='28'%20height='12'%20viewBox='0%200%2028%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='btn_add'%3e%3cg%20id='Union'%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='%23FF5C00'/%3e%3cmask%20id='stroke0_0_402'%20maskUnits='userSpaceOnUse'%20x='8'%20y='0'%20width='12'%20height='12'%20fill='black'%3e%3crect%20fill='white'%20x='8'%20width='12'%20height='12'/%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'/%3e%3c/mask%3e%3cpath%20d='M15%201V5H19V7H15V11H13L13%207H9V5H13L13%201H15Z'%20stroke-width='2'%20stroke='black'%20mask='url(%23stroke0_0_402)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1675.5, + "y": 1079.5, + "w": 28, + "h": 12, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "14px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + } + }, + "layout-add": { + "default": { + "box": { + "x": 1527, + "y": 1003.5, + "w": 24, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='24'%20height='22'%20viewBox='0%200%2024%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='btn_add_layout'%20filter='url(%23filter0_i_0_16)'%3e%3cpath%20d='M0%204C0%201.79086%201.79086%200%204%200H20C22.2091%200%2024%201.79086%2024%204V22H0V4Z'%20fill='%23C3B79E'/%3e%3cpath%20d='M4%200.5H20C21.933%200.5%2023.5%202.067%2023.5%204V21.5H0.5V4C0.5%202.12727%201.97083%200.598421%203.82031%200.504883L4%200.5Z'%20stroke='url(%23paint0_linear_0_16)'/%3e%3cpath%20id='Union'%20d='M13%207H11V10H8V12H11V15H13V12H16V10H13V7Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='%23161410'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_16'%20x='0'%20y='-3'%20width='24'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_16'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_16'%20x1='12'%20y1='0'%20x2='12'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23C8BA9C'/%3e%3cstop%20offset='1'%20stop-color='%23918670'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1527, + "y": 1003.5, + "w": 24, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + }, + "hover": { + "box": { + "x": 1527, + "y": 1003.5, + "w": 24, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='24'%20height='22'%20viewBox='0%200%2024%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='btn_add_layout'%20filter='url(%23filter0_i_0_16)'%3e%3cpath%20d='M0%204C0%201.79086%201.79086%200%204%200H20C22.2091%200%2024%201.79086%2024%204V22H0V4Z'%20fill='%23C3B79E'/%3e%3cpath%20d='M4%200.5H20C21.933%200.5%2023.5%202.067%2023.5%204V21.5H0.5V4C0.5%202.12727%201.97083%200.598421%203.82031%200.504883L4%200.5Z'%20stroke='url(%23paint0_linear_0_16)'/%3e%3cpath%20id='Union'%20d='M13%207H11V10H8V12H11V15H13V12H16V10H13V7Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='%23161410'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_16'%20x='0'%20y='-3'%20width='24'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_16'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_16'%20x1='12'%20y1='0'%20x2='12'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23C8BA9C'/%3e%3cstop%20offset='1'%20stop-color='%23918670'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1527, + "y": 1003.5, + "w": 24, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='28'%20height='12'%20viewBox='0%200%2028%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='btn_add'%3e%3cg%20id='Union'%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'%20fill='%23D4CBBD'/%3e%3cmask%20id='stroke0_0_402'%20maskUnits='userSpaceOnUse'%20x='8'%20y='0'%20width='12'%20height='12'%20fill='black'%3e%3crect%20fill='white'%20x='8'%20width='12'%20height='12'/%3e%3cpath%20d='M15%205V1H13L13%205H9V7H13L13%2011H15V7H19V5H15Z'%20fill-rule='evenodd'%20clip-rule='evenodd'/%3e%3c/mask%3e%3cpath%20d='M15%201V5H19V7H15V11H13L13%207H9V5H13L13%201H15Z'%20stroke-width='2'%20stroke='black'%20mask='url(%23stroke0_0_402)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e\"), linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%" + } + } + } + }, + "addCallsBefore": 0, + "model": { + "initialState": "on", + "selected": { + "tab": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%" + }, + "text": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + }, + "unselected": { + "tab": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='73'%20height='22'%20viewBox='0%200%2073%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='bg'%3e%3cg%20filter='url(%23filter0_i_0_5)'%3e%3cpath%20d='M13.6039%203.29463C15.1093%201.22467%2017.5143%200%2020.0738%200H73V22H0L13.6039%203.29463Z'%20fill='%23C3B79E'/%3e%3c/g%3e%3cpath%20d='M20.0742%200.5H72.5V21.5H0.981445L14.0078%203.58887C15.4191%201.64829%2017.6747%200.5%2020.0742%200.5Z'%20stroke='url(%23paint0_linear_0_5)'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_5'%20x='0'%20y='-3'%20width='73'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_5'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_5'%20x1='38.5'%20y1='0'%20x2='38.5'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-opacity='0.05'/%3e%3cstop%20offset='1'%20stop-opacity='0.3'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "text": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + }, + "unselectedHover": { + "tab": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%" + }, + "text": { + "x": 1727, + "y": 1003.5, + "w": 73, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + } + }, + "layoutSelected": { + "tab": { + "x": 1552, + "y": 1003.5, + "w": 85, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "linear-gradient(0deg, rgb(124, 108, 76) 0.48%, rgb(124, 108, 76) 85.07%, rgb(166, 148, 111) 100%)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1552, + "y": 1003.5, + "w": 85, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "text": { + "x": 1552, + "y": 1003.5, + "w": 69, + "h": 22, + "color": "rgb(246, 244, 242)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "outline", + "mask": "none" + } + }, + "layoutHover": [ + { + "i": 1, + "d": { + "tab": { + "x": 1638, + "y": 1003.5, + "w": 97, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1638, + "y": 1003.5, + "w": 97, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='97'%20height='22'%20viewBox='0%200%2097%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='bg'%3e%3cg%20filter='url(%23filter0_i_0_83)'%3e%3cpath%20d='M13.6039%203.29463C15.1093%201.22467%2017.5143%200%2020.0738%200H93C95.2091%200%2097%201.79086%2097%204V22H0L13.6039%203.29463Z'%20fill='%23C3B79E'/%3e%3c/g%3e%3cpath%20d='M20.0742%200.5H93C94.933%200.5%2096.5%202.067%2096.5%204V21.5H0.981445L14.0078%203.58887C15.4191%201.64829%2017.6747%200.5%2020.0742%200.5Z'%20stroke='url(%23paint0_linear_0_83)'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_83'%20x='0'%20y='-3'%20width='97'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_83'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_83'%20x1='56'%20y1='0'%20x2='56'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-opacity='0.05'/%3e%3cstop%20offset='1'%20stop-opacity='0.3'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "text": { + "x": 1638, + "y": 1003.5, + "w": 69, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + }, + "h": { + "tab": { + "x": 1638, + "y": 1003.5, + "w": 97, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + }, + "before": { + "x": 1638, + "y": 1003.5, + "w": 97, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%" + }, + "text": { + "x": 1638, + "y": 1003.5, + "w": 69, + "h": 22, + "color": "rgb(22, 20, 16)", + "bg": "rgba(0, 0, 0, 0)", + "opacity": "1", + "font": "Dotum", + "size": "12px", + "weight": "400", + "shadow": "none", + "mask": "none" + } + } + } + ], + "categories": [ + { + "name": "도형", + "tab": [ + 916, + 1078, + 47, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 1589, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "수정", + "tab": [ + 970, + 1078, + 47, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 977, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "편집", + "tab": [ + 1018, + 1078, + 47, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "문자", + "tab": [ + 1065, + 1078, + 47, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "치수/연산", + "tab": [ + 1113, + 1078, + 85, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "블록", + "tab": [ + 1199, + 1078, + 47, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "레이어", + "tab": [ + 1247, + 1078, + 62, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "뷰", + "tab": [ + 1310, + 1078, + 43, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "선택/조회", + "tab": [ + 1354, + 1078, + 85, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "모델링", + "tab": [ + 1440, + 1078, + 62, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "선형/횡단", + "tab": [ + 1503, + 1078, + 85, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + }, + { + "name": "구조/배근", + "tab": [ + 1589, + 1078, + 85, + 16 + ], + "vacantBottom": 1074, + "vacantLeft": 909, + "tabTop": 1078, + "slots": 12, + "behind": [ + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport", + "hm-sw-footer-menu__viewport" + ] + } + ] + }, + "errors": [] +} diff --git a/docs/sw/sw-dotum-font-qa/footer-design/layout-1-default.png b/docs/sw/sw-dotum-font-qa/footer-design/layout-1-default.png new file mode 100644 index 0000000..79d0de3 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/layout-1-default.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/layout-1-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/layout-1-hover.png new file mode 100644 index 0000000..1e046b1 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/layout-1-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/layout-add-default.png b/docs/sw/sw-dotum-font-qa/footer-design/layout-add-default.png new file mode 100644 index 0000000..aa0e5dd Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/layout-add-default.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/layout-add-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/layout-add-hover.png new file mode 100644 index 0000000..0290116 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/layout-add-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/layout-selected.png b/docs/sw/sw-dotum-font-qa/footer-design/layout-selected.png new file mode 100644 index 0000000..de5cca8 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/layout-selected.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/model-selected.png b/docs/sw/sw-dotum-font-qa/footer-design/model-selected.png new file mode 100644 index 0000000..d68a910 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/model-selected.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/model-unselected-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/model-unselected-hover.png new file mode 100644 index 0000000..d68a910 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/model-unselected-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/model-unselected.png b/docs/sw/sw-dotum-font-qa/footer-design/model-unselected.png new file mode 100644 index 0000000..5eae875 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/model-unselected.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/side-aux-default.png b/docs/sw/sw-dotum-font-qa/footer-design/side-aux-default.png new file mode 100644 index 0000000..d78e48c Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/side-aux-default.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/side-aux-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/side-aux-hover.png new file mode 100644 index 0000000..70a0b8b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/side-aux-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/side-commands-default.png b/docs/sw/sw-dotum-font-qa/footer-design/side-commands-default.png new file mode 100644 index 0000000..f4389aa Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/side-commands-default.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-design/side-commands-hover.png b/docs/sw/sw-dotum-font-qa/footer-design/side-commands-hover.png new file mode 100644 index 0000000..3ba9741 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-design/side-commands-hover.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/footer-full.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/footer-full.png new file mode 100644 index 0000000..4e77d1a Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/footer-full.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-custom-dropdowns.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-custom-dropdowns.png new file mode 100644 index 0000000..8743ca4 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-custom-dropdowns.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-slider-styles.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-slider-styles.png new file mode 100644 index 0000000..1faa903 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-slider-styles.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-stack-375.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-stack-375.png new file mode 100644 index 0000000..408c5e2 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/popup-stack-375.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/result.json b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/result.json new file mode 100644 index 0000000..c930873 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/result.json @@ -0,0 +1,782 @@ +{ + "date": "2026-10-20T07:16:17.568Z", + "checks": [ + { + "n": "Footer: 기본 Footer / States removed, full-footer + figma-variants kept", + "ok": true, + "d": [ + "sw-footer--full-footer", + "sw-footer--tool-groups", + "sw-footer--figma-variants", + "sw-footer--custom-content", + "sw-footer--responsive", + "sw-footer--parts" + ] + }, + { + "n": "Footer: full-footer keeps only 실제 Footer 조합 (3 sections removed)", + "ok": true, + "d": { + "sections": [ + "실제 Footer 조합 (동작)" + ], + "errors": [] + } + }, + { + "n": "Footer: one live footer, no Figma / reference image", + "ok": true, + "d": 1 + }, + { + "n": "Footer: category change keeps the command slot position", + "ok": true, + "d": { + "before": [ + 1389, + 817, + 12 + ], + "after": [ + 1389, + 817, + 12 + ] + } + }, + { + "n": "Footer: 보조기능 전체보기 hover = both lines accent + orange ring, 74 × 71", + "ok": true, + "d": { + "title": "rgb(255, 92, 0)", + "sub": "rgb(255, 92, 0)", + "ring": "1", + "w": 74, + "h": 71 + } + }, + { + "n": "Footer: 명령어 전체보기 hover = both lines accent + orange ring, 74 × 71", + "ok": true, + "d": { + "title": "rgb(255, 92, 0)", + "sub": "rgb(255, 92, 0)", + "ring": "1", + "w": 74, + "h": 71 + } + }, + { + "n": "Footer: side button default unchanged (subtitle #F6F4F2, no ring)", + "ok": true, + "d": [ + "rgb(246, 244, 242)", + "0" + ] + }, + { + "n": "Footer: category + hover = orange + (menu-add-hover, #FF5C00), 28px", + "ok": true, + "d": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'" + }, + { + "n": "Footer: Layout + hover = gra-border-orange surface with the +, 24px", + "ok": true, + "d": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='28'%20height='12'%20viewBox='0%200%2028%20" + }, + { + "n": "Footer: Model (selected) = gra-border-orange surface, black #161410 text without outline, 73 × 22", + "ok": true, + "d": { + "bg": "none", + "before": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "220,40", + "w": 73, + "h": 22 + } + }, + { + "n": "Footer: Layout 02 hover = Model surface; text identical to Default (black, size, weight, place, box)", + "ok": true, + "d": { + "l02": { + "bg": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "before": "none", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "80,40", + "w": 85, + "h": 22 + }, + "l02d": { + "bg": "none", + "before": "none", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "80,40", + "w": 85, + "h": 22 + } + } + }, + { + "n": "Footer: Layout 01 hover = Model surface (slanted); text identical to Default", + "ok": true, + "d": { + "l01": { + "bg": "none", + "before": "linear-gradient(rgb(218, 104, 19) 8.52%, rgb(255, 187, 137) 37.93%, rgb(229, 105, 13) 71.85%, rgb(174, 54, 7) 92.77%)", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "80,40", + "w": 97, + "h": 22 + }, + "l01d": { + "bg": "none", + "before": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='97'%20height='22'%20viewBox='0%200%2097%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='bg'%3e%3cg%20filter='url(%23filter0_i_0_83)'%3e%3cpath%20d='M13.6039%203.29463C15.1093%201.22467%2017.5143%200%2020.0738%200H93C95.2091%200%2097%201.79086%2097%204V22H0L13.6039%203.29463Z'%20fill='%23C3B79E'/%3e%3c/g%3e%3cpath%20d='M20.0742%200.5H93C94.933%200.5%2096.5%202.067%2096.5%204V21.5H0.981445L14.0078%203.58887C15.4191%201.64829%2017.6747%200.5%2020.0742%200.5Z'%20stroke='url(%23paint0_linear_0_83)'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_83'%20x='0'%20y='-3'%20width='97'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_83'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_83'%20x1='56'%20y1='0'%20x2='56'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-opacity='0.05'/%3e%3cstop%20offset='1'%20stop-opacity='0.3'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "80,40", + "w": 97, + "h": 22 + } + } + }, + { + "n": "Footer: Layout tabs return to their default look after hover", + "ok": true, + "d": { + "bg": "none", + "before": "url(\"data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='97'%20height='22'%20viewBox='0%200%2097%2022'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='bg'%3e%3cg%20filter='url(%23filter0_i_0_83)'%3e%3cpath%20d='M13.6039%203.29463C15.1093%201.22467%2017.5143%200%2020.0738%200H93C95.2091%200%2097%201.79086%2097%204V22H0L13.6039%203.29463Z'%20fill='%23C3B79E'/%3e%3c/g%3e%3cpath%20d='M20.0742%200.5H93C94.933%200.5%2096.5%202.067%2096.5%204V21.5H0.981445L14.0078%203.58887C15.4191%201.64829%2017.6747%200.5%2020.0742%200.5Z'%20stroke='url(%23paint0_linear_0_83)'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_i_0_83'%20x='0'%20y='-3'%20width='97'%20height='25'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='BackgroundImageFix'%20result='shape'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='-3'/%3e%3cfeGaussianBlur%20stdDeviation='2'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='arithmetic'%20k2='-1'%20k3='1'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200.219608%200%200%200%200%200.188235%200%200%200%200%200.121569%200%200%200%200.25%200'/%3e%3cfeBlend%20mode='multiply'%20in2='shape'%20result='effect1_innerShadow_0_83'/%3e%3c/filter%3e%3clinearGradient%20id='paint0_linear_0_83'%20x1='56'%20y1='0'%20x2='56'%20y2='22'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-opacity='0.05'/%3e%3cstop%20offset='1'%20stop-opacity='0.3'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\")", + "color": "rgb(22, 20, 16)", + "size": "12px", + "weight": "400", + "shadow": "none", + "text": "80,40", + "w": 97, + "h": 22 + } + }, + { + "n": "Footer: category pocket surface is the same across the whole tab for 1st · 2nd · 3rd · 4th tab", + "ok": true, + "d": [ + [ + "도형", + "hm-sw-footer__group", + "hm-sw-footer__group", + "hm-sw-footer__group" + ], + [ + "수정", + "hm-sw-footer__group", + "hm-sw-footer__group", + "hm-sw-footer__group" + ], + [ + "편집", + "hm-sw-footer__group", + "hm-sw-footer__group", + "hm-sw-footer__group" + ], + [ + "문자", + "hm-sw-footer__group", + "hm-sw-footer__group", + "hm-sw-footer__group" + ] + ] + }, + { + "n": "Footer: vacant surface covers the slot row only (46px)", + "ok": true, + "d": 46 + }, + { + "n": "Footer: a selected Layout keeps its own (brown) selected surface, distinct from hover", + "ok": true, + "d": [ + "on", + "linear-gradient(0deg, rgb(124, 108, 76) 0.48%, rgb(124, 108, 76) 85.07%, rgb(166, 148, 111) 100%)" + ] + }, + { + "n": "Footer: aux Figma comparison lives in figma-variants (6 rows)", + "ok": true, + "d": [] + }, + { + "n": "Footer: responsive 860px row renders with an overflow ▲ control", + "ok": true, + "d": { + "panelOrder": "명령 더보기 (7개)", + "errors": [] + } + }, + { + "n": "Footer: 화면 폭 변화 keeps the 6 widths, 참고 좁은 화면 + Figma 기본 구성 removed", + "ok": true, + "d": [ + "실제 조합 (바 안 명령창, command)" + ] + }, + { + "n": "Header: layer field keeps the header design (#F6F4F2, 38px, value 700)", + "ok": true, + "d": "rgb(246, 244, 242)|38px|rgb(246, 244, 242)|700" + }, + { + "n": "Popup: 도면 설정 layer = 속성창 layer picker (value, trigger, label computed look)", + "ok": true, + "d": { + "a": "rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgba(0, 0, 0, 0),28px,14px,400,none / rgb(230, 4, 3),rgba(0, 0, 0, 0),none,rgb(230, 4, 3),26px,14px,400,none / rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgb(154, 146, 132),16px,14px,700,none / layer", + "b": "rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgba(0, 0, 0, 0),28px,14px,400,none / rgb(230, 4, 3),rgba(0, 0, 0, 0),none,rgb(230, 4, 3),26px,14px,400,none / rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgb(154, 146, 132),16px,14px,700,none / layer" + } + }, + { + "n": "Popup: 도면 설정 color = 속성창 color picker (value, trigger, label computed look)", + "ok": true, + "d": { + "a": "rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgba(0, 0, 0, 0),28px,14px,400,none / rgb(230, 4, 3),rgba(0, 0, 0, 0),none,rgb(230, 4, 3),26px,14px,500,none / rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgb(154, 146, 132),16px,14px,700,none / color", + "b": "rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgba(0, 0, 0, 0),28px,14px,400,none / rgb(230, 4, 3),rgba(0, 0, 0, 0),none,rgb(230, 4, 3),26px,14px,500,none / rgb(0, 0, 0),rgba(0, 0, 0, 0),none,rgb(154, 146, 132),16px,14px,700,none / color" + } + }, + { + "n": "Popup: no SWHeader field dropdown inside any popup", + "ok": true + }, + { + "n": "Popup: layer picker opens (fixed overlay), selects and closes", + "ok": true, + "d": "Callback: layer=hatch" + }, + { + "n": "Popup: color picker chip commits the RGB value", + "ok": true, + "d": "Callback: layer=hatch → color=0,0,255" + }, + { + "n": "Popup: frame / title / close unchanged (3 popups in the main section)", + "ok": true + }, + { + "n": "Slider: A = panel (18px, no property paint), B = property (16px, property paint), same fill", + "ok": true, + "d": [ + { + "look": "panel", + "h": 18, + "fill": "0.4", + "paint": false, + "range": "#266651" + }, + { + "look": "property", + "h": 16, + "fill": "0.4", + "paint": true, + "range": "#266651" + }, + { + "look": "panel", + "h": 18, + "fill": "0.4", + "paint": false, + "range": "#266651" + } + ] + }, + { + "n": "Slider: one shared value; keyboard change on B commits through onValueCommit", + "ok": true, + "d": { + "log": "Callback: layer=hatch → color=0,0,255 → opacity(property)=50", + "afterB": [ + "50", + "50", + "50" + ] + } + }, + { + "n": "Slider: appearance selection switches the look only", + "ok": true, + "d": "property" + }, + { + "n": "Slider: disabled 40%", + "ok": true, + "d": { + "d": true, + "o": "0.4" + } + }, + { + "n": "Slider: property window gauge keeps 86 × 16 and its paint", + "ok": true, + "d": [ + 86, + 16, + true + ] + }, + { + "n": "Select: Popup 도면 설정 단위 = Viewer 축척 지정 단위 (default · hover · focus computed look)", + "ok": true, + "d": { + "ps": { + "d": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=none;outlineColor=oklab(0.462622 -0.0726663 0.0150061 / 0.5);outlineWidth=3px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT", + "h": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=none;outlineColor=oklab(0.462622 -0.0726663 0.0150061 / 0.5);outlineWidth=3px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT", + "f": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=solid;outlineColor=rgb(166, 125, 3);outlineWidth=2px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT" + }, + "vs": { + "d": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=none;outlineColor=oklab(0.462622 -0.0726663 0.0150061 / 0.5);outlineWidth=3px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT", + "h": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=none;outlineColor=oklab(0.462622 -0.0726663 0.0150061 / 0.5);outlineWidth=3px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT", + "f": "appearance=auto;height=28px;paddingLeft=8px;paddingRight=8px;borderTopWidth=1px;borderTopColor=rgb(148, 136, 113);borderTopStyle=solid;borderRadius=4px;backgroundColor=rgb(241, 236, 225);color=rgb(0, 0, 0);fontSize=12px;fontWeight=400;lineHeight=normal;outlineStyle=solid;outlineColor=rgb(166, 125, 3);outlineWidth=2px;opacity=1;cursor=default;class=hm-sw-select;tag=SELECT" + } + } + }, + { + "n": "Select: options and selection kept (Popup mm/cm/m, Viewer mm/m), change events", + "ok": true, + "d": { + "popupOptions": [ + "mm", + "cm", + "m" + ], + "viewerOptions": [ + "mm", + "m" + ], + "popupPicked": [ + true, + "m" + ] + } + }, + { + "n": "Header: Open returns once while growing 520 → 1080 and stays", + "ok": true, + "d": [ + [ + 520, + 0, + "" + ], + [ + 560, + 0, + "" + ], + [ + 600, + 1, + "" + ], + [ + 640, + 1, + "actions" + ], + [ + 680, + 1, + "actions" + ], + [ + 720, + 1, + "" + ], + [ + 760, + 1, + "" + ], + [ + 820, + 1, + "" + ], + [ + 900, + 1, + "color" + ], + [ + 1080, + 1, + "color" + ] + ] + }, + { + "n": "Header: at 1920 every part is back and Open is shown", + "ok": true, + "d": [ + [ + 1440, + 1, + "" + ], + [ + 1920, + 1, + "" + ] + ] + }, + { + "n": "Header: shrinking, Open moves into More first (1800) and stays there", + "ok": true, + "d": [ + [ + 1800, + 0, + "dimensionStyle" + ], + [ + 1440, + 0, + "" + ], + [ + 1080, + 0, + "" + ], + [ + 900, + 0, + "" + ], + [ + 640, + 0, + "" + ], + [ + 520, + 0, + "" + ] + ] + }, + { + "n": "Header: regrowing after a shrink, Open returns once and stays", + "ok": true, + "d": [ + [ + 560, + 0, + "" + ], + [ + 600, + 1, + "" + ], + [ + 640, + 1, + "actions" + ], + [ + 680, + 1, + "actions" + ], + [ + 720, + 1, + "" + ], + [ + 900, + 1, + "color" + ], + [ + 1080, + 1, + "color" + ], + [ + 1920, + 1, + "" + ] + ] + }, + { + "n": "Popup B: same frame as Popup A", + "ok": true, + "d": [ + "314|rgb(228, 219, 201)|rgb(166, 125, 3)|rgb(255, 198, 0)|700", + "314|rgb(228, 219, 201)|rgb(166, 125, 3)|rgb(255, 198, 0)|700" + ] + }, + { + "n": "Popup B: popup layer picker (no SWHeader field)", + "ok": true + }, + { + "n": "Popup B: layer selection callback and field value", + "ok": true, + "d": "Callback: b.layer=dim" + }, + { + "n": "Popup B: 375px, no page overflow and the popup inside the viewport", + "ok": true, + "d": { + "sw": 375, + "vw": 375, + "b": [ + 32, + 343 + ] + } + }, + { + "n": "Viewer: 250 × auto title art keeps 308px and paints from the left edge (no gap)", + "ok": true, + "d": { + "w": 250, + "h": 142, + "artW": 308, + "gap": 0 + } + }, + { + "n": "Viewer: 320 / 480 popups unchanged (no gap)", + "ok": true, + "d": [ + { + "w": 250, + "h": 142, + "artW": 308, + "gap": 0 + }, + { + "w": 320, + "h": 420, + "artW": 308, + "gap": 0 + }, + { + "w": 480, + "h": 300, + "artW": 308, + "gap": 0 + } + ] + }, + { + "n": "Viewer: 250 × auto collapses to the title bar and expands back to auto height", + "ok": true, + "d": { + "h0": 142, + "h1": 32 + } + }, + { + "n": "Viewer: 250 × auto drags by its title bar", + "ok": true, + "d": { + "dx": 60, + "dy": 30 + } + }, + { + "n": "Viewer: content variants (incl. 300px) title art has no gap", + "ok": true, + "d": [ + { + "w": 314, + "h": 420, + "artW": 308, + "gap": 0 + }, + { + "w": 314, + "h": 420, + "artW": 308, + "gap": 0 + }, + { + "w": 300, + "h": 239, + "artW": 308, + "gap": 0 + } + ] + }, + { + "n": "Viewer: SWViewerSlider = SWSlider panel with viewer tokens (#266651 / #e4dbc9)", + "ok": true, + "d": { + "cls": "hm-sw-slider hm-sw-viewer-slider", + "look": "panel", + "h": 18, + "range": "#266651", + "track": "#e4dbc9" + } + } + ], + "report": { + "header": { + "grow": [ + [ + 520, + 0, + "" + ], + [ + 560, + 0, + "" + ], + [ + 600, + 1, + "" + ], + [ + 640, + 1, + "actions" + ], + [ + 680, + 1, + "actions" + ], + [ + 720, + 1, + "" + ], + [ + 760, + 1, + "" + ], + [ + 820, + 1, + "" + ], + [ + 900, + 1, + "color" + ], + [ + 1080, + 1, + "color" + ] + ], + "wide": [ + [ + 1440, + 1, + "" + ], + [ + 1920, + 1, + "" + ] + ], + "shrink": [ + [ + 1800, + 0, + "dimensionStyle" + ], + [ + 1440, + 0, + "" + ], + [ + 1080, + 0, + "" + ], + [ + 900, + 0, + "" + ], + [ + 640, + 0, + "" + ], + [ + 520, + 0, + "" + ] + ], + "regrow": [ + [ + 560, + 0, + "" + ], + [ + 600, + 1, + "" + ], + [ + 640, + 1, + "actions" + ], + [ + 680, + 1, + "actions" + ], + [ + 720, + 1, + "" + ], + [ + 900, + 1, + "color" + ], + [ + 1080, + 1, + "color" + ], + [ + 1920, + 1, + "" + ] + ] + } + } +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-250-auto.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-250-auto.png new file mode 100644 index 0000000..92e9a74 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-250-auto.png differ diff --git a/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-scale-select.png b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-scale-select.png new file mode 100644 index 0000000..327a716 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/footer-popup-viewer-refinement/viewer-scale-select.png differ diff --git a/docs/sw/sw-dotum-font-qa/home-menu-integration/capture-default-1920.png b/docs/sw/sw-dotum-font-qa/home-menu-integration/capture-default-1920.png new file mode 100644 index 0000000..42d8a03 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/home-menu-integration/capture-default-1920.png differ diff --git a/docs/sw/sw-dotum-font-qa/home-menu-integration/header-composition-open.png b/docs/sw/sw-dotum-font-qa/home-menu-integration/header-composition-open.png new file mode 100644 index 0000000..6d81d96 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/home-menu-integration/header-composition-open.png differ diff --git a/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-390.png b/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-390.png new file mode 100644 index 0000000..acdfec4 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-768.png b/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-768.png new file mode 100644 index 0000000..2579890 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/home-menu-integration/responsive-768.png differ diff --git a/docs/sw/sw-dotum-font-qa/home-menu-integration/result.json b/docs/sw/sw-dotum-font-qa/home-menu-integration/result.json new file mode 100644 index 0000000..347924d --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/home-menu-integration/result.json @@ -0,0 +1,477 @@ +{ + "browser": "155.0.8059.80", + "checks": [ + { + "name": "Storybook SW titles: Header, Popup, Viewer (SW/Tool removed, SW/Home Menu merged into SW/Header 2026-10-19); no SW/Header/Options; sw-header--home-menu listed", + "status": "PASS", + "data": [ + "SW/Footer", + "SW/Header", + "SW/Popup", + "SW/Theme", + "SW/Viewer" + ] + }, + { + "name": "menu at Figma x 375, width 1305, height 77 (measured, no fixed x); header stays 49", + "status": "PASS", + "data": { + "left": 375, + "width": 1305, + "height": 77, + "headerHeight": 49, + "sections": [ + 340, + 260, + 180, + 260, + 261 + ], + "tiles": 15, + "tileSizes": [ + "80x46" + ], + "titles": 5, + "badgeInlined": true, + "icons": 30, + "iconsLoaded": 30 + } + }, + { + "name": "5 sections 340/260/180/260/261, 15 tiles 80x46, 5 titles", + "status": "PASS", + "data": { + "left": 375, + "width": 1305, + "height": 77, + "headerHeight": 49, + "sections": [ + 340, + 260, + 180, + 260, + 261 + ], + "tiles": 15, + "tileSizes": [ + "80x46" + ], + "titles": 5, + "badgeInlined": true, + "icons": 30, + "iconsLoaded": 30 + } + }, + { + "name": "title badge SVG and 30 tile icons render", + "status": "PASS", + "data": { + "left": 375, + "width": 1305, + "height": 77, + "headerHeight": 49, + "sections": [ + 340, + 260, + 180, + 260, + 261 + ], + "tiles": 15, + "tileSizes": [ + "80x46" + ], + "titles": 5, + "badgeInlined": true, + "icons": 30, + "iconsLoaded": 30 + } + }, + { + "name": "hidden by default (not in DOM), logo aria-expanded=false", + "status": "PASS" + }, + { + "name": "logo click opens, aria-expanded=true, aria-controls → menu id", + "status": "PASS" + }, + { + "name": "tile Hover: label #FF5C00", + "status": "PASS", + "data": "rgb(255, 92, 0)" + }, + { + "name": "action tile click: onItemSelect, no Active / aria-pressed / ring after the click", + "status": "PASS", + "data": { + "pressed": null, + "active": null, + "ring": "0" + } + }, + { + "name": "logo re-click closes; onHomeClick never called while homeMenu is set", + "status": "PASS", + "data": "onHomeMenuOpenChange(false, home)\nonItemSelect(working / save, active=false)\nonHomeMenuOpenChange(true, home)" + }, + { + "name": "Escape inside closes the menu and returns focus to the logo", + "status": "PASS" + }, + { + "name": "click on the menu background closes it (Figma CLOSE)", + "status": "PASS" + }, + { + "name": "recent panel opens (outline accent); Escape closes the panel, then the menu", + "status": "PASS", + "data": { + "panelOpen": true, + "panelFirst": true + } + }, + { + "name": "opening the document dropdown closes the menu (reason document); New / Open stay in the dropdown", + "status": "PASS", + "data": "C0020101-006-평면및종단면도(06)\nC0020101-007-횡단면도\n+ New\nOpen" + }, + { + "name": "opening the menu closes the document dropdown", + "status": "PASS" + }, + { + "name": "no separate Open button next to the logo (documentOpenPlacement=\"menu\")", + "status": "PASS" + }, + { + "name": "focus outside: Escape closes the most recent (menu), then the popup", + "status": "PASS", + "data": { + "step1": { + "menu": 0, + "popup": 1 + }, + "step2": { + "menu": 0, + "popup": 0 + } + } + }, + { + "name": "popup opened after the menu: Escape outside closes the popup first, menu stays", + "status": "PASS", + "data": { + "menu": 1, + "popup": 0 + } + }, + { + "name": "Escape inside the popup closes only the popup", + "status": "PASS", + "data": { + "menu": 1, + "popup": 0 + } + }, + { + "name": "Escape inside the menu closes only the menu (popup stays), focus → logo", + "status": "PASS", + "data": { + "menu": 0, + "popup": 1, + "focusHome": true + } + }, + { + "name": "every width: menu starts at object area −2px, ends at the window area, covers neither logo nor file name, header 49, no page scroll", + "status": "PASS", + "data": [ + { + "width": 1920, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 1305, + "scrolls": false, + "pageScroll": false, + "rowSections": 5, + "moved": 0 + }, + { + "width": 1440, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 825, + "scrolls": false, + "pageScroll": false, + "rowSections": 2, + "moved": 3 + }, + { + "width": 1080, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 639, + "scrolls": false, + "pageScroll": false, + "rowSections": 1, + "moved": 4 + }, + { + "width": 768, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 520, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 390, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 165, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + } + ] + }, + { + "name": "every width: no horizontal scroll in the menu; 5 sections = row + More (1920: all in the row)", + "status": "PASS", + "data": [ + { + "width": 1920, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 1305, + "scrolls": false, + "pageScroll": false, + "rowSections": 5, + "moved": 0 + }, + { + "width": 1440, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 825, + "scrolls": false, + "pageScroll": false, + "rowSections": 2, + "moved": 3 + }, + { + "width": 1080, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 639, + "scrolls": false, + "pageScroll": false, + "rowSections": 1, + "moved": 4 + }, + { + "width": 768, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 520, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 390, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 165, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + } + ] + }, + { + "name": "without homeMenu: logo click calls onHomeClick, renders no menu, no aria-expanded", + "status": "FAIL", + "data": [ + "[SWHeader Overview] homeMenuOpen(true, home)" + ] + }, + { + "name": "no page / console errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "titles": [ + "SW/Footer", + "SW/Header", + "SW/Popup", + "SW/Theme", + "SW/Viewer" + ], + "geometry": { + "left": 375, + "width": 1305, + "height": 77, + "headerHeight": 49, + "sections": [ + 340, + 260, + 180, + 260, + 261 + ], + "tiles": 15, + "tileSizes": [ + "80x46" + ], + "titles": 5, + "badgeInlined": true, + "icons": 30, + "iconsLoaded": 30 + }, + "responsive": [ + { + "width": 1920, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 1305, + "scrolls": false, + "pageScroll": false, + "rowSections": 5, + "moved": 0 + }, + { + "width": 1440, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 825, + "scrolls": false, + "pageScroll": false, + "rowSections": 2, + "moved": 3 + }, + { + "width": 1080, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 639, + "scrolls": false, + "pageScroll": false, + "rowSections": 1, + "moved": 4 + }, + { + "width": 768, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 520, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 288, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + }, + { + "width": 390, + "headerHeight": 49, + "start": 0, + "endGap": 0, + "coversHome": false, + "coversDocument": false, + "menuWidth": 165, + "scrolls": false, + "pageScroll": false, + "rowSections": 0, + "moved": 5 + } + ] + } +} \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-open.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-open.png new file mode 100644 index 0000000..3fb0e9d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-open.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-responsive.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-responsive.png new file mode 100644 index 0000000..86a51f0 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/composed-responsive.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-document-new.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-document-new.png new file mode 100644 index 0000000..57c3d67 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-document-new.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-layer-states.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-layer-states.png new file mode 100644 index 0000000..bda4fb8 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/hidden-layer-states.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/integrated-improvement-result.json b/docs/sw/sw-dotum-font-qa/integrated-improvement/integrated-improvement-result.json new file mode 100644 index 0000000..19df6a0 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/integrated-improvement/integrated-improvement-result.json @@ -0,0 +1,1218 @@ +{ + "browser": "155.0.8059.80", + "checks": [ + { + "name": "menu (default): no Open next to the logo", + "status": "PASS" + }, + { + "name": "menu (default): dropdown footer keeps + New and Open", + "status": "PASS" + }, + { + "name": "header: Open takes the file name place right of the logo (same junction offset, 48px)", + "status": "PASS", + "data": { + "home": { + "x": 360, + "y": 851.5, + "w": 80, + "h": 48, + "right": 440 + }, + "openBox": { + "x": 425, + "y": 851.5, + "w": 61.375, + "h": 48, + "right": 486.375 + }, + "junction": -15 + } + }, + { + "name": "header: file name follows Open without overlap", + "status": "PASS", + "data": { + "openBox": { + "x": 425, + "y": 851.5, + "w": 61.375, + "h": 48, + "right": 486.375 + }, + "docBox": { + "x": 488.375, + "y": 851.5, + "w": 246.625, + "h": 48, + "right": 735 + } + } + }, + { + "name": "header: Open uses hm-sw-header__document-button (same surface, color, weight as the file name)", + "status": "PASS", + "data": { + "styles": { + "cls": "hm-sw-header__document-button", + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "5px", + "borderL": "0px", + "borderR": "1px" + }, + "fileStyles": { + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "12px" + } + } + }, + { + "name": "D-1: file name after Open starts with 12px padding", + "status": "PASS", + "data": { + "bg": "linear-gradient(rgb(8, 24, 19) 0%, rgb(9", + "color": "rgb(240, 247, 245)", + "weight": "700", + "padL": "12px" + } + }, + { + "name": "header: Open hover turns only the text #FFC600", + "status": "PASS" + }, + { + "name": "header: dropdown footer has + New only (no duplicate Open)", + "status": "PASS" + }, + { + "name": "header: Open calls onDocumentOpen", + "status": "PASS" + }, + { + "name": "documentOpenLabel is the Open text", + "status": "PASS" + }, + { + "name": "responsive 1920: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2280, + "barRight": 2280, + "overlap": false, + "open": 61.375, + "doc": 246.625, + "layer": 234, + "more": false + } + }, + { + "name": "responsive 1920: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 61.375, + "inMore": null + } + }, + { + "name": "responsive 1920: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1800: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2160, + "barRight": 2160, + "overlap": false, + "open": 0, + "doc": 190, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1800: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 1800: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1440: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1800, + "barRight": 1800, + "overlap": false, + "open": 61.375, + "doc": 310, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1440: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 61.375, + "inMore": null + } + }, + { + "name": "responsive 1440: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1180: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1540, + "barRight": 1540, + "overlap": false, + "open": 0, + "doc": 150, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1180: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 1180: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 1080: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1440, + "barRight": 1440, + "overlap": false, + "open": 0, + "doc": 136, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 1080: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 1080: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 900: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1260, + "barRight": 1260, + "overlap": false, + "open": 0, + "doc": 175, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 900: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 900: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 768: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1128, + "barRight": 1128, + "overlap": false, + "open": 61.375, + "doc": 175.625, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 768: Open shown next to the logo", + "status": "PASS", + "data": { + "open": 61.375, + "inMore": null + } + }, + { + "name": "responsive 768: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 640: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1000, + "barRight": 1000, + "overlap": false, + "open": 0, + "doc": 111, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 640: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 640: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 520: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 880, + "barRight": 880, + "overlap": false, + "open": 0, + "doc": 103, + "layer": 234, + "more": true + } + }, + { + "name": "responsive 520: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "responsive 520: layer field keeps its Figma width (234) while Open is shown", + "status": "PASS", + "data": 234 + }, + { + "name": "responsive 390: 49px, no overflow or overlap, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 750, + "barRight": 750, + "overlap": false, + "open": 0, + "doc": 96, + "layer": 113, + "more": true + } + }, + { + "name": "responsive 390: Open moved into More and works there", + "status": "PASS", + "data": { + "open": 0, + "inMore": true + } + }, + { + "name": "resize: collapsed Open returns once when the header grows (measured, with hysteresis)", + "status": "PASS", + "data": [ + [ + 520, + 0 + ], + [ + 560, + 0 + ], + [ + 600, + 1 + ], + [ + 640, + 1 + ], + [ + 680, + 1 + ], + [ + 720, + 1 + ], + [ + 760, + 1 + ], + [ + 820, + 1 + ], + [ + 900, + 1 + ], + [ + 1080, + 1 + ] + ] + }, + { + "name": "hidden documentNew: footer keeps Open on its right side", + "status": "PASS", + "data": { + "footer": { + "x": 424, + "y": 442.5, + "w": 310, + "h": 40, + "right": 734 + }, + "action": { + "x": 672.875, + "y": 451, + "w": 53.125, + "h": 24, + "right": 726 + } + } + }, + { + "name": "hidden documentNew + documentOpen: no footer", + "status": "PASS" + }, + { + "name": "hidden layerFreeze / layerLock: field draws the bulb only, two empty 20px places", + "status": "PASS", + "data": [ + { + "empty": false, + "w": 20 + }, + { + "empty": true, + "w": 20 + }, + { + "empty": true, + "w": 20 + } + ] + }, + { + "name": "hidden layerFreeze / layerLock: rows have no snowflake / lock button, places kept", + "status": "PASS", + "data": [ + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + }, + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + }, + { + "buttons": [ + "hm-sw-header__layer-toggle--visibility", + "hm-sw-header__layer-item" + ], + "empty": 2, + "name": 931 + } + ] + }, + { + "name": "hidden layer states: the bulb still reports its callback", + "status": "PASS" + }, + { + "name": "composed: Open right of the logo at the same junction offset as SWHeader", + "status": "PASS", + "data": { + "cHome": { + "x": 360, + "y": 6118.5, + "w": 80, + "h": 48, + "right": 440 + }, + "cOpen": { + "x": 425, + "y": 6118.5, + "w": 61.375, + "h": 48, + "right": 486.375 + } + } + }, + { + "name": "composed: file name after Open has 12px padding", + "status": "PASS" + }, + { + "name": "composed: Open callback", + "status": "PASS" + }, + { + "name": "composed: showOpen={false} removes Open from the dropdown", + "status": "PASS" + }, + { + "name": "composed responsive 1920: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1800: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1440: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1180: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 1080: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 900: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 768: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 640: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 640: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "composed responsive 520: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 520: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "composed responsive 390: 49px, no overflow, nothing past the edge", + "status": "PASS", + "data": { + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + }, + { + "name": "composed responsive 390: 파일 열기 reachable in More", + "status": "PASS" + }, + { + "name": "popup: SWPopup frames match the property window frame (314, surface, border, radius, title)", + "status": "PASS", + "data": [ + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + } + ] + }, + { + "name": "popup content: SWHeaderInput rows commit through the host callbacks", + "status": "PASS" + }, + { + "name": "popup content: SWPopupRow is the property row (72px label, 32px row, 28px box)", + "status": "PASS", + "data": { + "label": "72px", + "minH": "32px", + "box": "28px" + } + }, + { + "name": "popup content: HM UI Switch works inside", + "status": "PASS" + }, + { + "name": "popup content: SWSelect (unit) works inside", + "status": "PASS" + }, + { + "name": "popup content: HM UI Slider works inside", + "status": "PASS", + "data": "Callback: name=평면도-02 → scale=50 → snap=false → unit=cm → opacity=70" + }, + { + "name": "popup content: HM UI Button works inside", + "status": "PASS" + }, + { + "name": "popup dropdown: no SWHeader field dropdown inside the popups", + "status": "PASS" + }, + { + "name": "popup dropdown: popup layer picker opens right under its field (fixed overlay, right edge) and is not clipped", + "status": "PASS", + "data": { + "fieldBox": { + "x": 473, + "y": 558.5, + "w": 200, + "h": 28, + "right": 673 + }, + "menuBox": { + "x": 439, + "y": 586.5, + "w": 234, + "h": 160, + "right": 673 + }, + "hit": true + } + }, + { + "name": "popup dropdown: selection callback, list closes, popup stays", + "status": "PASS" + }, + { + "name": "popup dropdown: popup color picker becomes a fixed overlay", + "status": "PASS" + }, + { + "name": "popup dropdown: color chip callback", + "status": "PASS", + "data": "Callback: name=평면도-02 → scale=50 → snap=false → unit=cm → opacity=70 → apply → layer=dim → color=0,255,0" + }, + { + "name": "popup dropdown: Escape closes the dropdown only", + "status": "PASS" + }, + { + "name": "object popup: read-only rows", + "status": "PASS" + }, + { + "name": "object popup: number row commits", + "status": "PASS" + }, + { + "name": "object popup: compact row uses the 41px hug field", + "status": "PASS", + "data": { + "cls": "hm-sw-header__input hm-sw-property__compact", + "w": 28.5625 + } + }, + { + "name": "property panel + children: children follow the property groups in the same body", + "status": "PASS", + "data": [ + "공통", + "메모" + ] + }, + { + "name": "property panel + children: child content callback", + "status": "PASS" + }, + { + "name": "popup: close button calls onClose", + "status": "PASS" + }, + { + "name": "short popup: dropdown extends past the popup and stays fully visible (no clipping)", + "status": "PASS", + "data": { + "bBox": { + "x": 706, + "y": 264.5, + "w": 314, + "h": 104, + "right": 1020 + }, + "menuB": { + "x": 769, + "y": 355.5, + "w": 234, + "h": 160, + "right": 1003 + }, + "bHit": true + } + }, + { + "name": "several popups: Escape in a dropdown closes only the dropdown", + "status": "PASS" + }, + { + "name": "several popups: Escape on an edited input cancels the edit only", + "status": "PASS" + }, + { + "name": "several popups: Escape inside a popup closes that popup only", + "status": "PASS", + "data": "Callback: close(a)" + }, + { + "name": "several popups: Escape outside closes only the top popup (last used: B)", + "status": "PASS", + "data": "Callback: close(a) → close(b)" + }, + { + "name": "several popups: the popup used last becomes the top", + "status": "PASS", + "data": "Callback: close(a) → close(b) → close(a)" + }, + { + "name": "long content: the body scrolls inside the frame and the last row is reachable", + "status": "PASS", + "data": { + "scroll": { + "sh": 1000, + "ch": 328, + "overflow": "auto" + }, + "lastVisible": true + } + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "junction": -15, + "responsive": [ + { + "width": 1920, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2280, + "barRight": 2280, + "overlap": false, + "open": 61.375, + "doc": 246.625, + "layer": 234, + "more": false, + "inMore": null + }, + { + "width": 1800, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 2160, + "barRight": 2160, + "overlap": false, + "open": 0, + "doc": 190, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 1440, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1800, + "barRight": 1800, + "overlap": false, + "open": 61.375, + "doc": 310, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 1180, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1540, + "barRight": 1540, + "overlap": false, + "open": 0, + "doc": 150, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 1080, + "height": 49, + "barOverflow": 0, + "areaOverflow": 1, + "headerRight": 1440, + "barRight": 1440, + "overlap": false, + "open": 0, + "doc": 136, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 900, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1260, + "barRight": 1260, + "overlap": false, + "open": 0, + "doc": 175, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 768, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1128, + "barRight": 1128, + "overlap": false, + "open": 61.375, + "doc": 175.625, + "layer": 234, + "more": true, + "inMore": null + }, + { + "width": 640, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 1000, + "barRight": 1000, + "overlap": false, + "open": 0, + "doc": 111, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 520, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 880, + "barRight": 880, + "overlap": false, + "open": 0, + "doc": 103, + "layer": 234, + "more": true, + "inMore": true + }, + { + "width": 390, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "headerRight": 750, + "barRight": 750, + "overlap": false, + "open": 0, + "doc": 96, + "layer": 113, + "more": true, + "inMore": true + } + ], + "hysteresis": [ + [ + 520, + 0 + ], + [ + 560, + 0 + ], + [ + 600, + 1 + ], + [ + 640, + 1 + ], + [ + 680, + 1 + ], + [ + 720, + 1 + ], + [ + 760, + 1 + ], + [ + 820, + 1 + ], + [ + 900, + 1 + ], + [ + 1080, + 1 + ] + ], + "composedResponsive": [ + { + "width": 1920, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1800, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1440, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1180, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 1080, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 900, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 0, + "clipped": false, + "right": 0 + }, + { + "width": 768, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 1, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 640, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 520, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + }, + { + "width": 390, + "height": 49, + "barOverflow": 0, + "areaOverflow": 0, + "open": 0, + "more": 1, + "clipped": false, + "right": 0 + } + ], + "popupFrames": [ + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + }, + { + "w": 314, + "bg": "rgb(228, 219, 201)", + "border": "rgb(166, 125, 3)", + "radius": "4px", + "shadow": "rgb(0, 0, 0) 0px 0px 0px 1px inset", + "title": "rgb(255, 198, 0)", + "weight": "700", + "titlebar": 30, + "role": "dialog", + "modal": "false" + } + ] + }, + "status": "PASS" +} diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-header.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-header.png new file mode 100644 index 0000000..b11b180 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-header.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-responsive.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-responsive.png new file mode 100644 index 0000000..dc904ed Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/open-placement-responsive.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-content.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-content.png new file mode 100644 index 0000000..2c9097b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-content.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-dropdown.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-dropdown.png new file mode 100644 index 0000000..b7b171b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-custom-dropdown.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-short-dropdown.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-short-dropdown.png new file mode 100644 index 0000000..b8715b1 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-short-dropdown.png differ diff --git a/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-stack.png b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-stack.png new file mode 100644 index 0000000..e5e1ac0 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/integrated-improvement/popup-stack.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview-firefox/firefox-result.json b/docs/sw/sw-dotum-font-qa/overview-firefox/firefox-result.json new file mode 100644 index 0000000..915d50d --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/overview-firefox/firefox-result.json @@ -0,0 +1,90 @@ +{ + "checks": [ + { + "name": "Firefox 1400: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 1200, + "height": 675, + "slotWidth": 1200, + "slotHeight": 702.5, + "headerHeight": 49, + "viewportWidth": 1400, + "viewportHeight": 915 + } + }, + { + "name": "Firefox 1400: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": true + } + }, + { + "name": "Firefox 1400: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 156, + "visible": true + } + }, + { + "name": "Firefox 1400: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox 500: 16:9 in Inner and Header 49", + "status": "PASS", + "data": { + "width": 468, + "height": 263.25, + "slotWidth": 468, + "slotHeight": 500.5, + "headerHeight": 49, + "viewportWidth": 500, + "viewportHeight": 715 + } + }, + { + "name": "Firefox 500: full original popup 314x754", + "status": "PASS", + "data": { + "width": 314, + "height": 754, + "focus": true + } + }, + { + "name": "Firefox 500: popup bottom reachable and focusable", + "status": "PASS", + "data": { + "top": 567.75, + "visible": true + } + }, + { + "name": "Firefox 500: Escape closes popup and restores focus", + "status": "PASS" + }, + { + "name": "Firefox SW runtime errors absent; known Storybook font warnings recorded separately", + "status": "PASS", + "data": { + "errors": [], + "warnings": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:5657/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:5657/sb-common-assets/nunito-sans-regular.woff2" + ] + } + } + ], + "errors": [], + "infrastructureWarnings": [ + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:5657/sb-common-assets/nunito-sans-regular.woff2", + "downloadable font: download failed (font-family: \"Nunito Sans\" style:normal weight:400 width:100 src index:0): status=2147746065 source: http://127.0.0.1:5657/sb-common-assets/nunito-sans-regular.woff2" + ], + "version": "158.0", + "status": "PASS" +} diff --git a/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-1400.png b/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-1400.png new file mode 100644 index 0000000..32520eb Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-1400.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-500.png b/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-500.png new file mode 100644 index 0000000..db85eae Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview-firefox/overview-firefox-500.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview/after-index.json b/docs/sw/sw-dotum-font-qa/overview/after-index.json new file mode 100644 index 0000000..7d55407 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/overview/after-index.json @@ -0,0 +1,300 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-dropdown.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu", + "name": "Home Menu", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenu" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-default", + "name": "Home Menu · 비교 캔버스 · Default", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureDefault" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-header-composition", + "name": "Home Menu · Header 조합 · 로고 클릭", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuHeaderComposition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-dynamic-data", + "name": "Home Menu · Props · 데이터 변경", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuDynamicData" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-standalone", + "name": "Home Menu · 단독 사용 · 조합형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HomeMenuStandalone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-property-bar-check", + "name": "Home Menu · 속성Bar 비교 (26:10492)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuPropertyBarCheck" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-property-bar", + "name": "Home Menu · 비교 캔버스 · 속성Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCapturePropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-integration", + "name": "Home Menu · 통합 · Popup · Escape", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuIntegration" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--home-menu-capture-responsive", + "name": "Home Menu · 비교 캔버스 · 반응형", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-home-menu.stories.tsx", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "HomeMenuCaptureResponsive" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentOpen" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header-open.stories.tsx", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "HiddenSubControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "KGuide" + } +] diff --git a/docs/sw/sw-dotum-font-qa/overview/before-index.json b/docs/sw/sw-dotum-font-qa/overview/before-index.json new file mode 100644 index 0000000..d3311f8 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/overview/before-index.json @@ -0,0 +1,423 @@ +[ + { + "type": "story", + "subtype": "story", + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ], + "exportName": "DetailButtons" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Overview" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "InteractiveStates" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "WindowMoveMotion" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composed-controls", + "name": "Composed Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ComposedControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LogoSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DocumentDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-dropdown", + "name": "Layer Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--color-dropdown", + "name": "Color Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ColorDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--line-style-dropdown", + "name": "Line Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LineStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--text-dimension-style-dropdown", + "name": "Text · Dimension Style Dropdown", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "TextDimensionStyleDropdown" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "ResponsiveMore" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--layer-detail-input", + "name": "Layer Detail · Input", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "LayerDetailInput" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel", + "name": "Property Panel", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanel" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-variants", + "name": "Property Panel Variants", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelVariants" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "KGuide" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--additional-hover", + "name": "Additional Hover", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "AdditionalHover" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-bar", + "name": "Property Bar", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyBar" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--dynamic-controls", + "name": "Dynamic Controls", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "DynamicControls" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--colorize", + "name": "Colorize", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Colorize" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--composition", + "name": "Composition (Visibility · Order)", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "Composition" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-none", + "name": "Property Panel · 선택 없음", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelNone" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-all", + "name": "Property Panel · 전체 선택", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelAll" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-circle", + "name": "Property Panel · 원 1개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCircle" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-expanded", + "name": "Property Panel · 모두 펼침", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelExpanded" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-panel-compare", + "name": "Property Panel · 4개 비교", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyPanelCompare" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-shape-slot", + "name": "Property Panel · 형상 Slot", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyShapeSlot" + }, + { + "type": "story", + "subtype": "story", + "id": "sw-header--property-fields", + "name": "Property Panel · 필드 13개", + "title": "SW/Header", + "importPath": "./src/sw/sw-header.stories.tsx", + "componentPath": "./packages/sw/dist/index.js", + "tags": [ + "dev", + "test", + "manifest" + ], + "exportName": "PropertyFields" + } +] diff --git a/docs/sw/sw-dotum-font-qa/overview/chrome-result.json b/docs/sw/sw-dotum-font-qa/overview/chrome-result.json new file mode 100644 index 0000000..a57d776 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/overview/chrome-result.json @@ -0,0 +1,733 @@ +{ + "baseCommit": "50bf5bda8e956a4973b923d64131f2f2285bd38c", + "checks": [ + { + "name": "24 retained Story IDs, names and tags; only approved Dropdown retirements", + "status": "FAIL" + }, + { + "name": "retained non-Overview declarations byte-identical; relocated composition separately verified", + "status": "FAIL" + }, + { + "name": "retired Dropdown IDs absent", + "status": "PASS" + }, + { + "name": "package production source untouched except the integrated-improvement files", + "status": "FAIL", + "data": [ + "packages/sw/src/components/sw-footer/SWFooter.tsx", + "packages/sw/src/components/sw-footer/SWFooterCommandLine.tsx", + "packages/sw/src/components/sw-footer/SWFooterLayoutTabs.tsx", + "packages/sw/src/components/sw-footer/SWFooterParts.tsx", + "packages/sw/src/components/sw-footer/assets/arrow-down-hover.svg", + "packages/sw/src/components/sw-footer/assets/arrow-down.svg", + "packages/sw/src/components/sw-footer/assets/arrow-up-hover.svg", + "packages/sw/src/components/sw-footer/assets/arrow-up.svg", + "packages/sw/src/components/sw-footer/assets/aux-grid-snap.svg", + "packages/sw/src/components/sw-footer/assets/aux-grid.svg", + "packages/sw/src/components/sw-footer/assets/aux-lineweight.svg", + "packages/sw/src/components/sw-footer/assets/aux-object-snap.svg", + "packages/sw/src/components/sw-footer/assets/aux-orthogonal.svg", + "packages/sw/src/components/sw-footer/assets/aux-selection.svg", + "packages/sw/src/components/sw-footer/assets/menu-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/menu-add.svg", + "packages/sw/src/components/sw-footer/assets/side-bg.svg", + "packages/sw/src/components/sw-footer/assets/slot-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/slot-add.svg", + "packages/sw/src/components/sw-footer/assets/tab-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-add.svg", + "packages/sw/src/components/sw-footer/assets/tab-close-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-close.svg", + "packages/sw/src/components/sw-footer/assets/tab-delete-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-delete.svg", + "packages/sw/src/components/sw-footer/assets/tab-model-on.svg", + "packages/sw/src/components/sw-footer/assets/tab-model.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-editing-fill.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-editing.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-on.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-ring.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant.svg", + "packages/sw/src/components/sw-footer/assets/tool-arc-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-arc.svg", + "packages/sw/src/components/sw-footer/assets/tool-circle-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-circle.svg", + "packages/sw/src/components/sw-footer/assets/tool-ellipse-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-ellipse.svg", + "packages/sw/src/components/sw-footer/assets/tool-hatch-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-hatch.svg", + "packages/sw/src/components/sw-footer/assets/tool-line-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-line.svg", + "packages/sw/src/components/sw-footer/assets/tool-ncopy-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-ncopy.svg", + "packages/sw/src/components/sw-footer/assets/tool-pline-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-pline.svg", + "packages/sw/src/components/sw-footer/assets/tool-point-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-point.svg", + "packages/sw/src/components/sw-footer/assets/tool-poly-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-poly.svg", + "packages/sw/src/components/sw-footer/assets/tool-rect-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-rect.svg", + "packages/sw/src/components/sw-footer/icons.tsx", + "packages/sw/src/components/sw-footer/index.ts", + "packages/sw/src/components/sw-footer/types.ts", + "packages/sw/src/components/sw-header/components/SWHeaderHome.tsx", + "packages/sw/src/components/sw-home-menu/SWHomeMenu.tsx", + "packages/sw/src/components/sw-home-menu/SWRecentFiles.tsx", + "packages/sw/src/components/sw-home-menu/assets/title-badge.svg", + "packages/sw/src/components/sw-home-menu/index.ts", + "packages/sw/src/components/sw-home-menu/types.ts", + "packages/sw/src/components/sw-select/SWSelect.tsx", + "packages/sw/src/components/sw-slider/SWSlider.tsx", + "packages/sw/src/components/sw-viewer/SWViewerControls.tsx", + "packages/sw/src/components/sw-viewer/SWViewerHeader.tsx", + "packages/sw/src/components/sw-viewer/SWViewerIcon.tsx", + "packages/sw/src/components/sw-viewer/SWViewerMenu.tsx", + "packages/sw/src/components/sw-viewer/SWViewerPanel.tsx", + "packages/sw/src/components/sw-viewer/index.ts", + "packages/sw/src/components/sw-viewer/types.ts", + "packages/sw/src/theme/sw-footer.css", + "packages/sw/src/theme/sw-home-menu.css", + "packages/sw/src/theme/sw-viewer.css" + ] + }, + { + "name": "16:9 fitted to both Inner dimensions at 1920x1080", + "status": "PASS", + "data": { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1440x900", + "status": "PASS", + "data": { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1280x720", + "status": "PASS", + "data": { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 768x600", + "status": "PASS", + "data": { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 390x844", + "status": "PASS", + "data": { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + } + }, + { + "name": "16:9 fitted to both Inner dimensions at 1000x500", + "status": "PASS", + "data": { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + }, + { + "name": "one Header and no duplicate fixed Figma specimen", + "status": "PASS" + }, + { + "name": "document selection updates Header and Callback", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false)" + }, + { + "name": "layer selection updates shared data", + "status": "PASS", + "data": "onDocumentClick → documentOpen(true) → onDocumentSelect(doc-2) → documentOpen(false) → onLayerOpen → onLayerSelect(layer, CC-D GNL)" + }, + { + "name": "existing layer Detail callback closes list", + "status": "PASS" + }, + { + "name": "color selection invokes host callback", + "status": "PASS", + "data": "onLayerOpen → onLayerSelect(layer, CC-D GNL) → onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255)" + }, + { + "name": "line selection updates Header", + "status": "PASS", + "data": "onLayerOpen → onLayerDetail → onColorOpen → onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER)" + }, + { + "name": "ByLayer weight mode does not turn numeric property into a mode string", + "status": "PASS" + }, + { + "name": "text style selection updates Header", + "status": "PASS", + "data": "onColorSelect(color, 255,255,255) → onLineStyleOpen → onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum)" + }, + { + "name": "dimension style selection updates Header", + "status": "PASS", + "data": "onLineTypeSelect(line, CENTER) → onLineWeightSelect(w-bylayer) → onTextStyleOpen → onTextStyleSelect(dotum) → onDimensionStyleOpen → onDimensionStyleSelect(iso-25)" + }, + { + "name": "opening another dropdown closes the previous one", + "status": "PASS" + }, + { + "name": "Escape closes Header dropdown", + "status": "PASS" + }, + { + "name": "outside click closes Header dropdown", + "status": "PASS" + }, + { + "name": "Bar Enter commits state", + "status": "PASS" + }, + { + "name": "Bar validates min=0", + "status": "PASS" + }, + { + "name": "Bar Escape cancels edit", + "status": "PASS" + }, + { + "name": "Header opens panel with same Bar value", + "status": "PASS" + }, + { + "name": "numeric weight property remains numeric after ByLayer mode", + "status": "PASS" + }, + { + "name": "Header layer value shared with panel", + "status": "PASS" + }, + { + "name": "panel edit updates the Bar", + "status": "PASS" + }, + { + "name": "panel number validation rejects negative radius", + "status": "PASS" + }, + { + "name": "panel Layer dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel line dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel color dropdown updates Header shared value", + "status": "PASS" + }, + { + "name": "panel RGB validation rejects out-of-range value", + "status": "PASS" + }, + { + "name": "gauge keyboard editing commits host state", + "status": "PASS" + }, + { + "name": "first Escape cancels draft and retains panel", + "status": "PASS" + }, + { + "name": "next Escape closes panel and restores Header focus", + "status": "PASS" + }, + { + "name": "panel Close button restores focus", + "status": "PASS" + }, + { + "name": "external Props update Bar", + "status": "PASS" + }, + { + "name": "Bar ReadOnly", + "status": "PASS" + }, + { + "name": "Bar Disabled", + "status": "PASS" + }, + { + "name": "dynamic Bar field added", + "status": "PASS" + }, + { + "name": "dynamic field shared with panel", + "status": "PASS" + }, + { + "name": "dynamic field removed from both", + "status": "PASS" + }, + { + "name": "shape Slot can be empty without changing panel structure", + "status": "PASS" + }, + { + "name": "original panel size none:314x256", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 256 + } + }, + { + "name": "original panel size all:314x361", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 361 + } + }, + { + "name": "original panel size circle:314x658", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 658 + } + }, + { + "name": "original panel size expanded:314x754", + "status": "PASS", + "data": { + "x": 1000, + "y": 301.25, + "width": 314, + "height": 754 + } + }, + { + "name": "expanded popup bottom accessible through internal scroll", + "status": "PASS" + }, + { + "name": "small Inner reaches full popup bottom with native Header and popup dimensions", + "status": "PASS", + "data": { + "top": 630, + "left": 16, + "height": 201, + "scrollHeight": 831, + "width": 358, + "scrollWidth": 390 + } + }, + { + "name": "narrow popup Escape restores More focus", + "status": "PASS" + }, + { + "name": "actual Storybook manager iframe fits its own Inner", + "status": "PASS", + "data": { + "width": 1071.59375, + "height": 602.765625, + "slotWidth": 1071.59375, + "slotHeight": 744.5, + "viewportWidth": 1140, + "viewportHeight": 960 + } + }, + { + "name": "no browser errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "sizes": [ + { + "stage": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 675, + "right": 1560, + "bottom": 939.25 + }, + "slot": { + "x": 360, + "y": 169.5, + "w": 1200, + "h": 864.5, + "right": 1560, + "bottom": 1034 + }, + "header": { + "x": 360, + "y": 264.25, + "w": 1200, + "h": 49, + "right": 1560, + "bottom": 313.25 + }, + "viewport": { + "w": 1920, + "h": 1080 + }, + "overflow": 0 + }, + { + "stage": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 675, + "right": 1320, + "bottom": 849.25 + }, + "slot": { + "x": 120, + "y": 169.5, + "w": 1200, + "h": 684.5, + "right": 1320, + "bottom": 854 + }, + "header": { + "x": 120, + "y": 174.25, + "w": 1200, + "h": 49, + "right": 1320, + "bottom": 223.25 + }, + "viewport": { + "w": 1440, + "h": 900 + }, + "overflow": 0 + }, + { + "stage": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 504.5, + "right": 1088.4375, + "bottom": 674 + }, + "slot": { + "x": 38.40625, + "y": 169.5, + "w": 1203.1875, + "h": 504.5, + "right": 1241.59375, + "bottom": 674 + }, + "header": { + "x": 191.5625, + "y": 169.5, + "w": 896.875, + "h": 49, + "right": 1088.4375, + "bottom": 218.5 + }, + "viewport": { + "w": 1280, + "h": 720 + }, + "overflow": 0 + }, + { + "stage": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 384.5, + "right": 725.765625, + "bottom": 554 + }, + "slot": { + "x": 23.046875, + "y": 169.5, + "w": 721.90625, + "h": 384.5, + "right": 744.953125, + "bottom": 554 + }, + "header": { + "x": 42.21875, + "y": 169.5, + "w": 683.546875, + "h": 49, + "right": 725.765625, + "bottom": 218.5 + }, + "viewport": { + "w": 768, + "h": 600 + }, + "overflow": 0 + }, + { + "stage": { + "x": 16, + "y": 383.0625, + "w": 358, + "h": 201.375, + "right": 374, + "bottom": 584.4375 + }, + "slot": { + "x": 16, + "y": 169.5, + "w": 358, + "h": 628.5, + "right": 374, + "bottom": 798 + }, + "header": { + "x": 16, + "y": 383.0625, + "w": 390, + "h": 49, + "right": 406, + "bottom": 432.0625 + }, + "viewport": { + "w": 390, + "h": 844 + }, + "overflow": 0 + }, + { + "stage": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 284.5, + "right": 752.875, + "bottom": 454 + }, + "slot": { + "x": 30, + "y": 169.5, + "w": 940, + "h": 284.5, + "right": 970, + "bottom": 454 + }, + "header": { + "x": 247.109375, + "y": 169.5, + "w": 505.765625, + "h": 49, + "right": 752.875, + "bottom": 218.5 + }, + "viewport": { + "w": 1000, + "h": 500 + }, + "overflow": 0 + } + ], + "browser": "155.0.8059.80", + "managerOrder": [ + "sw-header--composed-controls", + "sw-header--home-menu", + "sw-header--home-menu-standalone", + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more" + ], + "status": "FAIL" +} diff --git a/docs/sw/sw-dotum-font-qa/overview/manager-story-order.json b/docs/sw/sw-dotum-font-qa/overview/manager-story-order.json new file mode 100644 index 0000000..4105370 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/overview/manager-story-order.json @@ -0,0 +1,12 @@ +[ + "sw-header--composed-controls", + "sw-header--home-menu", + "sw-header--home-menu-standalone", + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more" +] diff --git a/docs/sw/sw-dotum-font-qa/overview/overview-after-expanded.png b/docs/sw/sw-dotum-font-qa/overview/overview-after-expanded.png new file mode 100644 index 0000000..c1b824d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview/overview-after-expanded.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview/overview-after-scrolled.png b/docs/sw/sw-dotum-font-qa/overview/overview-after-scrolled.png new file mode 100644 index 0000000..ed9674a Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview/overview-after-scrolled.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview/overview-after.png b/docs/sw/sw-dotum-font-qa/overview/overview-after.png new file mode 100644 index 0000000..e484eac Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview/overview-after.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview/overview-manager.png b/docs/sw/sw-dotum-font-qa/overview/overview-manager.png new file mode 100644 index 0000000..abcf251 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview/overview-manager.png differ diff --git a/docs/sw/sw-dotum-font-qa/overview/overview-narrow.png b/docs/sw/sw-dotum-font-qa/overview/overview-narrow.png new file mode 100644 index 0000000..f20ab4e Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/overview/overview-narrow.png differ diff --git a/docs/sw/sw-dotum-font-qa/run-log.txt b/docs/sw/sw-dotum-font-qa/run-log.txt new file mode 100644 index 0000000..1802054 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/run-log.txt @@ -0,0 +1,19 @@ +=== footer-popup-viewer-refinement +exit 0 pass=47 fail=0 +=== integrated-improvement +exit 0 pass=89 fail=0 +=== theme-inheritance +exit 0 pass=23 fail=0 +=== viewer +exit 0 pass=70 fail=0 +=== storybook-simplification +exit 0 pass=9 fail=0 +=== home-menu-integration +exit 1 pass=22 fail=1 +=== storybook-unused-removal +exit 1 pass=0 fail=5 +=== overview +exit 1 pass=0 fail=0 +=== dropdown-consolidation +exit 1 pass=223 fail=5 +DONE diff --git a/docs/sw/sw-dotum-font-qa/storybook-simplification/popup-property-panel-compare.png b/docs/sw/sw-dotum-font-qa/storybook-simplification/popup-property-panel-compare.png new file mode 100644 index 0000000..41a87c8 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-simplification/popup-property-panel-compare.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-simplification/result.json b/docs/sw/sw-dotum-font-qa/storybook-simplification/result.json new file mode 100644 index 0000000..45ff1eb --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/storybook-simplification/result.json @@ -0,0 +1,75 @@ +[ + { + "n": "direct URL render: 40 SW Stories, no error display / page error", + "ok": true, + "d": [] + }, + { + "n": "removed Home Menu IDs absent from index", + "ok": true + }, + { + "n": "removed Footer IDs absent, full-footer / figma-variants kept", + "ok": true + }, + { + "n": "Popup › Property Panel: four states none/all/circle/expanded at 314 × 256/361/658/754", + "ok": true, + "d": [ + [ + "none", + 314, + 256 + ], + [ + "all", + 314, + 361 + ], + [ + "circle", + 314, + 658 + ], + [ + "expanded", + 314, + 754 + ] + ] + }, + { + "n": "sidebar SW order Header → Footer → Popup → Viewer → Theme", + "ok": true, + "d": [ + "Header", + "Footer", + "Popup", + "Viewer", + "Theme" + ] + }, + { + "n": "verification Stories not in sidebar", + "ok": true, + "d": [] + }, + { + "n": "Popup children order: Custom Content, Multiple Popups, Property Panel", + "ok": true, + "d": [ + "sw-popup--custom-content", + "sw-popup--multiple-popups", + "sw-header--property-panel-compare" + ] + }, + { + "n": "Property Panel listed once (under Popup only)", + "ok": true + }, + { + "n": "sidebar link opens moved Story with same ID", + "ok": true, + "d": "http://127.0.0.1:7032/?path=/story/sw-header--property-panel-compare" + } +] \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.json b/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.json new file mode 100644 index 0000000..e01991a --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.json @@ -0,0 +1,172 @@ +[ + [ + "sw-header", + "component", + "Header" + ], + [ + "sw-header--composed-controls", + "story", + "Dropdown" + ], + [ + "sw-header--home-menu", + "story", + "Home Menu" + ], + [ + "sw-header--home-menu-standalone", + "story", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--document-open", + "story", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "story", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "story", + "Overview" + ], + [ + "sw-header--interactive-states", + "story", + "Interactive States" + ], + [ + "sw-header--logo-slot", + "story", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "story", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "story", + "Responsive More" + ], + [ + "sw-footer", + "component", + "Footer" + ], + [ + "sw-footer--full-footer", + "story", + "전체 Footer · 실제 조합" + ], + [ + "sw-footer--tool-groups", + "story", + "도구 그룹별 표시" + ], + [ + "sw-footer--custom-content", + "story", + "도구 및 메뉴 변경 예제" + ], + [ + "sw-footer--responsive", + "story", + "화면 폭 변화" + ], + [ + "sw-footer--parts", + "story", + "개별 부품 (조합용)" + ], + [ + "sw-popup", + "component", + "Popup" + ], + [ + "sw-popup--custom-content", + "story", + "Custom Content" + ], + [ + "sw-popup--multiple-popups", + "story", + "Multiple Popups" + ], + [ + "sw-header--property-panel-compare", + "story", + "Property Panel · 4개 비교" + ], + [ + "sw-viewer", + "component", + "Viewer" + ], + [ + "sw-viewer--viewer-header", + "story", + "Viewer Header" + ], + [ + "sw-viewer--menu-groups", + "story", + "Menu Groups" + ], + [ + "sw-viewer--states", + "story", + "Item States" + ], + [ + "sw-viewer--dropdowns", + "story", + "Header + Dropdown" + ], + [ + "sw-viewer--settings-panel", + "story", + "Settings Popup" + ], + [ + "sw-viewer--content-variants", + "story", + "Popup Content Variants" + ], + [ + "sw-viewer--variable-size", + "story", + "Variable Size Popups" + ], + [ + "sw-viewer--responsive", + "story", + "Responsive Widths" + ], + [ + "sw-viewer--compare-with-sw-header", + "story", + "SWHeader vs Viewer Header" + ], + [ + "sw-viewer--logo", + "story", + "Logo" + ], + [ + "sw-theme", + "component", + "Theme" + ], + [ + "sw-theme--theme-inheritance", + "story", + "Theme Inheritance" + ] +] \ No newline at end of file diff --git a/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.png b/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.png new file mode 100644 index 0000000..2e26f92 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-simplification/sidebar.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1280-end.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1280-end.png new file mode 100644 index 0000000..355f695 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1280-end.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1440-end.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1440-end.png new file mode 100644 index 0000000..38d409b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-1440-end.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-390-end.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-390-end.png new file mode 100644 index 0000000..1dd6162 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-390-end.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-768-end.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-768-end.png new file mode 100644 index 0000000..9ec49c2 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/compare-768-end.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1280.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1280.png new file mode 100644 index 0000000..3eb0805 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1280.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1440.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1440.png new file mode 100644 index 0000000..1a72d1f Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-390.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-390.png new file mode 100644 index 0000000..adfdcc0 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-768.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-768.png new file mode 100644 index 0000000..a09e036 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/dropdown-768.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-sidebar.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-sidebar.png new file mode 100644 index 0000000..04bea06 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-sidebar.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-story-order.json b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-story-order.json new file mode 100644 index 0000000..4d6cd65 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/manager-story-order.json @@ -0,0 +1,42 @@ +[ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--home-menu", + "Home Menu" + ], + [ + "sw-header--home-menu-standalone", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ] +] diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1280.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1280.png new file mode 100644 index 0000000..4cd26e4 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1280.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1440.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1440.png new file mode 100644 index 0000000..8d41876 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-390.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-390.png new file mode 100644 index 0000000..3eaef53 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-390.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-768.png b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-768.png new file mode 100644 index 0000000..62bf59a Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/overview-768.png differ diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/result.json b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/result.json new file mode 100644 index 0000000..1b6d258 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/result.json @@ -0,0 +1,1514 @@ +{ + "baseCommit": "c8e5fbeebc26fba92998fc5ddcd28c6c110e452d", + "checks": [ + { + "name": "inventory: 19 -> 10 retained SW/Header Stories, 338 -> 329 total plus only the integrated-improvement Stories", + "status": "FAIL", + "data": { + "before": [ + 338, + 19 + ], + "after": [ + 359, + 20 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--home-menu", + "Home Menu" + ], + [ + "sw-header--home-menu-capture-default", + "Home Menu · 비교 캔버스 · Default" + ], + [ + "sw-header--home-menu-header-composition", + "Home Menu · Header 조합 · 로고 클릭" + ], + [ + "sw-header--home-menu-dynamic-data", + "Home Menu · Props · 데이터 변경" + ], + [ + "sw-header--home-menu-standalone", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--home-menu-property-bar-check", + "Home Menu · 속성Bar 비교 (26:10492)" + ], + [ + "sw-header--home-menu-capture-property-bar", + "Home Menu · 비교 캔버스 · 속성Bar" + ], + [ + "sw-header--home-menu-integration", + "Home Menu · 통합 · Popup · Escape" + ], + [ + "sw-header--home-menu-capture-responsive", + "Home Menu · 비교 캔버스 · 반응형" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ] + ], + "added": [ + "sw-header--home-menu", + "sw-header--home-menu-capture-default", + "sw-header--home-menu-header-composition", + "sw-header--home-menu-dynamic-data", + "sw-header--home-menu-standalone", + "sw-header--home-menu-property-bar-check", + "sw-header--home-menu-capture-property-bar", + "sw-header--home-menu-integration", + "sw-header--home-menu-capture-responsive", + "sw-header--document-open", + "sw-header--hidden-sub-controls", + "sw-footer--full-footer", + "sw-footer--tool-groups", + "sw-footer--figma-variants", + "sw-footer--custom-content", + "sw-footer--responsive", + "sw-footer--parts", + "sw-popup--custom-content", + "sw-popup--multiple-popups", + "sw-viewer--viewer-header", + "sw-viewer--menu-groups", + "sw-viewer--states", + "sw-viewer--dropdowns", + "sw-viewer--settings-panel", + "sw-viewer--content-variants", + "sw-viewer--variable-size", + "sw-viewer--responsive", + "sw-viewer--compare-with-sw-header", + "sw-viewer--logo", + "sw-theme--theme-inheritance" + ] + } + }, + { + "name": "inventory: the nine requested IDs existed before and are absent now", + "status": "PASS" + }, + { + "name": "inventory: retained SW IDs, names, titles, tags and order unchanged", + "status": "FAIL", + "data": [ + "sw-header--composed-controls", + "sw-header--home-menu", + "sw-header--home-menu-capture-default", + "sw-header--home-menu-header-composition", + "sw-header--home-menu-dynamic-data", + "sw-header--home-menu-standalone", + "sw-header--home-menu-property-bar-check", + "sw-header--home-menu-capture-property-bar", + "sw-header--home-menu-integration", + "sw-header--home-menu-capture-responsive", + "sw-header--detail-buttons", + "sw-header--overview", + "sw-header--interactive-states", + "sw-header--window-move-motion", + "sw-header--logo-slot", + "sw-header--document-dropdown", + "sw-header--responsive-more", + "sw-header--k-guide" + ] + }, + { + "name": "inventory: every non-removed index entry identical (docs and other packages included)", + "status": "FAIL" + }, + { + "name": "inventory: Dropdown keeps sw-header--composed-controls / Dropdown / SW/Header", + "status": "PASS" + }, + { + "name": "inventory: comparison keeps its ID and name", + "status": "PASS" + }, + { + "name": "source: the nine Story exports are removed", + "status": "PASS" + }, + { + "name": "source: retained exports (Stories and ComposedDemo) byte-identical", + "status": "FAIL", + "data": [ + "Overview", + "WindowMoveMotion", + "ResponsiveMore", + "KGuide", + "PropertyPanelCompare" + ] + }, + { + "name": "source: other packages, Overview, Dropdown CSF, assets and Storybook config untouched; SW package only within the integrated-improvement files", + "status": "FAIL", + "data": { + "unexpected": [ + ".storybook/preview.tsx", + "packages/org-chart-react/README.md", + "packages/org-chart-react/ai/AGENTS_SNIPPET.md", + "packages/org-chart-react/ai/AI_GUIDE.md", + "packages/org-chart-react/ai/AI_USAGE.md", + "packages/org-chart-react/package.json", + "packages/org-chart/README.md", + "packages/org-chart/ai/AGENTS_SNIPPET.md", + "packages/org-chart/ai/AI_GUIDE.md", + "packages/org-chart/ai/AI_USAGE.md", + "packages/org-chart/ai/COMPONENT_CATALOG.md", + "packages/org-chart/ai/COMPOSITION_PATTERNS.md", + "packages/org-chart/ai/DESIGN_RULES.md", + "packages/org-chart/package.json", + "packages/sw/ai/AGENTS_SNIPPET.md", + "packages/sw/ai/AI_GUIDE.md", + "packages/sw/ai/FOOTER.md", + "packages/sw/ai/VIEWER.md", + "packages/sw/ai/examples/ExampleG-HomeMenu.tsx", + "packages/sw/ai/examples/ExampleH-ViewerMode.tsx", + "packages/sw/ai/examples/ExampleI-Footer.tsx", + "packages/sw/ai/examples/ExampleJ-Theme.tsx", + "packages/sw/src/components/sw-footer/SWFooter.tsx", + "packages/sw/src/components/sw-footer/SWFooterCommandLine.tsx", + "packages/sw/src/components/sw-footer/SWFooterLayoutTabs.tsx", + "packages/sw/src/components/sw-footer/SWFooterParts.tsx", + "packages/sw/src/components/sw-footer/assets/arrow-down-hover.svg", + "packages/sw/src/components/sw-footer/assets/arrow-down.svg", + "packages/sw/src/components/sw-footer/assets/arrow-up-hover.svg", + "packages/sw/src/components/sw-footer/assets/arrow-up.svg", + "packages/sw/src/components/sw-footer/assets/aux-grid-snap.svg", + "packages/sw/src/components/sw-footer/assets/aux-grid.svg", + "packages/sw/src/components/sw-footer/assets/aux-lineweight.svg", + "packages/sw/src/components/sw-footer/assets/aux-object-snap.svg", + "packages/sw/src/components/sw-footer/assets/aux-orthogonal.svg", + "packages/sw/src/components/sw-footer/assets/aux-selection.svg", + "packages/sw/src/components/sw-footer/assets/menu-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/menu-add.svg", + "packages/sw/src/components/sw-footer/assets/side-bg.svg", + "packages/sw/src/components/sw-footer/assets/slot-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/slot-add.svg", + "packages/sw/src/components/sw-footer/assets/tab-add-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-add.svg", + "packages/sw/src/components/sw-footer/assets/tab-close-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-close.svg", + "packages/sw/src/components/sw-footer/assets/tab-delete-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-delete.svg", + "packages/sw/src/components/sw-footer/assets/tab-model-on.svg", + "packages/sw/src/components/sw-footer/assets/tab-model.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-editing-fill.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-editing.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-hover.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-on.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant-ring.svg", + "packages/sw/src/components/sw-footer/assets/tab-slant.svg", + "packages/sw/src/components/sw-footer/assets/tool-arc-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-arc.svg", + "packages/sw/src/components/sw-footer/assets/tool-circle-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-circle.svg", + "packages/sw/src/components/sw-footer/assets/tool-ellipse-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-ellipse.svg", + "packages/sw/src/components/sw-footer/assets/tool-hatch-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-hatch.svg", + "packages/sw/src/components/sw-footer/assets/tool-line-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-line.svg", + "packages/sw/src/components/sw-footer/assets/tool-ncopy-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-ncopy.svg", + "packages/sw/src/components/sw-footer/assets/tool-pline-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-pline.svg", + "packages/sw/src/components/sw-footer/assets/tool-point-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-point.svg", + "packages/sw/src/components/sw-footer/assets/tool-poly-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-poly.svg", + "packages/sw/src/components/sw-footer/assets/tool-rect-on.svg", + "packages/sw/src/components/sw-footer/assets/tool-rect.svg", + "packages/sw/src/components/sw-footer/icons.tsx", + "packages/sw/src/components/sw-footer/index.ts", + "packages/sw/src/components/sw-footer/types.ts", + "packages/sw/src/components/sw-header/components/SWHeaderHome.tsx", + "packages/sw/src/components/sw-home-menu/SWHomeMenu.tsx", + "packages/sw/src/components/sw-home-menu/SWRecentFiles.tsx", + "packages/sw/src/components/sw-home-menu/assets/title-badge.svg", + "packages/sw/src/components/sw-home-menu/index.ts", + "packages/sw/src/components/sw-home-menu/types.ts", + "packages/sw/src/components/sw-select/SWSelect.tsx", + "packages/sw/src/components/sw-slider/SWSlider.tsx", + "packages/sw/src/components/sw-viewer/SWViewerControls.tsx", + "packages/sw/src/components/sw-viewer/SWViewerHeader.tsx", + "packages/sw/src/components/sw-viewer/SWViewerIcon.tsx", + "packages/sw/src/components/sw-viewer/SWViewerMenu.tsx", + "packages/sw/src/components/sw-viewer/SWViewerPanel.tsx", + "packages/sw/src/components/sw-viewer/index.ts", + "packages/sw/src/components/sw-viewer/types.ts", + "packages/sw/src/theme/sw-footer.css", + "packages/sw/src/theme/sw-home-menu.css", + "packages/sw/src/theme/sw-viewer.css", + "packages/ui/README.md", + "packages/ui/ai/AGENTS_SNIPPET.md", + "packages/ui/ai/AI_GUIDE.md", + "packages/ui/ai/AI_USAGE.md", + "packages/ui/ai/COMPONENT_CATALOG.md", + "packages/ui/ai/COMPOSITION_PATTERNS.md", + "packages/ui/ai/DESIGN_RULES.md", + "packages/ui/package.json", + "src/sw/assets/figma-reference/footer/26-10023.png", + "src/sw/assets/figma-reference/footer/26-10048.png", + "src/sw/assets/figma-reference/footer/26-10056.png", + "src/sw/assets/figma-reference/footer/26-10097.png", + "src/sw/assets/figma-reference/footer/26-9096.png", + "src/sw/assets/figma-reference/footer/26-9242.png", + "src/sw/assets/figma-reference/footer/26-9459.png", + "src/sw/assets/figma-reference/footer/26-9466.png", + "src/sw/assets/figma-reference/footer/26-9473.png", + "src/sw/assets/figma-reference/footer/26-9480.png", + "src/sw/assets/figma-reference/footer/26-9487.png", + "src/sw/assets/figma-reference/footer/26-9494.png", + "src/sw/assets/figma-reference/footer/26-9501.png", + "src/sw/assets/figma-reference/footer/26-9508.png", + "src/sw/assets/figma-reference/footer/26-9515.png", + "src/sw/assets/figma-reference/footer/26-9522.png", + "src/sw/assets/figma-reference/footer/26-9529.png", + "src/sw/assets/figma-reference/footer/26-9551.png", + "src/sw/assets/figma-reference/footer/26-9576.png", + "src/sw/assets/figma-reference/footer/26-9601.png", + "src/sw/assets/figma-reference/footer/26-9629.png", + "src/sw/assets/figma-reference/footer/26-9651.png", + "src/sw/assets/figma-reference/footer/26-9673.png", + "src/sw/assets/figma-reference/footer/26-9689.png", + "src/sw/assets/figma-reference/footer/26-9702.png", + "src/sw/assets/figma-reference/footer/26-9739.png", + "src/sw/assets/figma-reference/footer/26-9776.png", + "src/sw/assets/figma-reference/footer/26-9785.png", + "src/sw/assets/figma-reference/footer/26-9794.png", + "src/sw/assets/figma-reference/footer/26-9837.png", + "src/sw/assets/figma-reference/footer/26-9885.png", + "src/sw/assets/figma-reference/footer/26-9914.png", + "src/sw/assets/figma-reference/footer/26-9931.png", + "src/sw/assets/figma-reference/footer/26-9942.png", + "src/sw/assets/figma-reference/footer/26-9971.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9248.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9267.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9298.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9320.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9381.png", + "src/sw/assets/figma-reference/footer/aux-buttons/26-9412.png", + "src/sw/assets/footer-reference/composition-2026-10-20.png", + "src/sw/assets/footer-reference/narrow-2026-10-20.png", + "src/sw/assets/home-menu/bundle-hover.svg", + "src/sw/assets/home-menu/bundle.svg", + "src/sw/assets/home-menu/display-hover.svg", + "src/sw/assets/home-menu/display.svg", + "src/sw/assets/home-menu/export-hover.svg", + "src/sw/assets/home-menu/export.svg", + "src/sw/assets/home-menu/figma-26-10492.png", + "src/sw/assets/home-menu/figma-preview-h1100.png", + "src/sw/assets/home-menu/file-open-monitor-a.svg", + "src/sw/assets/home-menu/file-open-monitor-b.svg", + "src/sw/assets/home-menu/find-open-hover.svg", + "src/sw/assets/home-menu/find-open.svg", + "src/sw/assets/home-menu/help-hover.svg", + "src/sw/assets/home-menu/help.svg", + "src/sw/assets/home-menu/inquiry-hover.svg", + "src/sw/assets/home-menu/inquiry.svg", + "src/sw/assets/home-menu/new-file-hover.svg", + "src/sw/assets/home-menu/new-file.svg", + "src/sw/assets/home-menu/recent-hover.svg", + "src/sw/assets/home-menu/recent.svg", + "src/sw/assets/home-menu/recover-hover.svg", + "src/sw/assets/home-menu/recover.svg", + "src/sw/assets/home-menu/save-as-hover.svg", + "src/sw/assets/home-menu/save-as.svg", + "src/sw/assets/home-menu/save-hover.svg", + "src/sw/assets/home-menu/save.svg", + "src/sw/assets/home-menu/setting-load-hover.svg", + "src/sw/assets/home-menu/setting-load.svg", + "src/sw/assets/home-menu/setting-save-hover.svg", + "src/sw/assets/home-menu/setting-save.svg", + "src/sw/assets/home-menu/sw-info-hover.svg", + "src/sw/assets/home-menu/sw-info.svg", + "src/sw/assets/home-menu/temp-file-hover.svg", + "src/sw/assets/home-menu/temp-file.svg", + "src/sw/sw-header-overview.tsx" + ], + "integrated": 205 + } + }, + { + "name": "sidebar: retained non-verification Stories in index order with their names", + "status": "PASS", + "data": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--home-menu", + "Home Menu" + ], + [ + "sw-header--home-menu-standalone", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ] + ] + }, + { + "name": "sidebar: none of the nine removed menu IDs or names remain", + "status": "PASS", + "data": [ + "Layer Detail · Input", + "Property Panel", + "Additional Hover", + "Property Bar", + "Dynamic Controls", + "Colorize", + "Composition (Visibility · Order)", + "Property Panel · 형상 Slot", + "Property Panel · 필드 13개" + ] + }, + { + "name": "removed URL renders no SW Story", + "status": "PASS" + }, + { + "name": "inventory: moved Popup Story keeps its sw-header-- ID under SW/Popup", + "status": "PASS", + "data": [ + [ + "sw-header--property-panel-compare", + "SW/Popup" + ] + ] + }, + { + "name": "render sw-header--composed-controls", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-default", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-header-composition", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-dynamic-data", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-standalone", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-property-bar-check", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-property-bar", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-integration", + "status": "PASS" + }, + { + "name": "render sw-header--home-menu-capture-responsive", + "status": "PASS" + }, + { + "name": "render sw-header--document-open", + "status": "PASS" + }, + { + "name": "render sw-header--hidden-sub-controls", + "status": "PASS" + }, + { + "name": "render sw-header--detail-buttons", + "status": "PASS" + }, + { + "name": "render sw-header--overview", + "status": "PASS" + }, + { + "name": "render sw-header--interactive-states", + "status": "PASS" + }, + { + "name": "render sw-header--window-move-motion", + "status": "PASS" + }, + { + "name": "render sw-header--logo-slot", + "status": "PASS" + }, + { + "name": "render sw-header--document-dropdown", + "status": "PASS" + }, + { + "name": "render sw-header--responsive-more", + "status": "PASS" + }, + { + "name": "render sw-header--k-guide", + "status": "PASS" + }, + { + "name": "render sw-header--property-panel-compare", + "status": "PASS" + }, + { + "name": "Overview 390: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 768: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1280: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview 1440: one Header 49px, one Stage, no page overflow", + "status": "PASS", + "data": { + "height": 49 + } + }, + { + "name": "Overview: layer Dropdown opens", + "status": "PASS" + }, + { + "name": "Overview: Escape closes Dropdown and restores focus", + "status": "PASS" + }, + { + "name": "Overview: layer Detail callback (former Layer Detail page) and close", + "status": "PASS" + }, + { + "name": "Overview: btn_colorize 24 × 24 calls onColorPick and closes (former Colorize page)", + "status": "PASS", + "data": { + "x": 700, + "y": 324.25, + "width": 24, + "height": 24 + } + }, + { + "name": "Overview: property Bar Enter commits through callback", + "status": "PASS" + }, + { + "name": "Overview: property Bar validation keeps min=0", + "status": "PASS" + }, + { + "name": "Overview: panel opens with the shared Bar value", + "status": "PASS" + }, + { + "name": "Overview: Escape closes panel and returns focus to its trigger", + "status": "PASS" + }, + { + "name": "Dropdown: five fields plus the 상세보기 group (6 controls)", + "status": "PASS" + }, + { + "name": "Dropdown 390: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 390: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 768: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 768: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1280: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 레이어 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 색상 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 선스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 문자스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: 치수스타일 opens, Escape closes, focus returns", + "status": "PASS" + }, + { + "name": "Dropdown 1440: no page overflow", + "status": "PASS" + }, + { + "name": "Dropdown: text style selection reflected in field and status", + "status": "PASS" + }, + { + "name": "Dropdown: line style selection reflected", + "status": "PASS" + }, + { + "name": "Compare 390: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 390: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 390: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 768: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 768: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 768: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1280: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1280: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1280: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare 1440: four states in order at 314 × 256 / 361 / 658 / 754", + "status": "PASS", + "data": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ] + }, + { + "name": "Compare 1440: 2 columns × 2 rows", + "status": "PASS" + }, + { + "name": "Compare 1440: Inner scroll reaches the 754px panel bottom; page does not scroll", + "status": "PASS", + "data": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + { + "name": "Compare: editable Input caret #E60403 (former Layer Detail · Input page)", + "status": "PASS" + }, + { + "name": "Compare: Input Enter commits only in its own panel", + "status": "PASS" + }, + { + "name": "Compare: Input Escape cancels", + "status": "PASS" + }, + { + "name": "Compare: layer Dropdown selection commits via callback", + "status": "PASS" + }, + { + "name": "Compare: Escape closes the Dropdown and returns focus", + "status": "PASS" + }, + { + "name": "Motion: one section 「단계별 진행 (3배 확대)」 with nine stages at zoom 3", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "Motion: rest stage static, timed stages hold three paused animations", + "status": "PASS", + "data": [ + { + "time": "rest", + "animations": 0, + "zoom": "3" + }, + { + "time": "0", + "animations": 3, + "zoom": "3" + }, + { + "time": "204.8780487804878", + "animations": 3, + "zoom": "3" + }, + { + "time": "409.7560975609756", + "animations": 3, + "zoom": "3" + }, + { + "time": "443.9024390243902", + "animations": 3, + "zoom": "3" + }, + { + "time": "682.9268292682926", + "animations": 3, + "zoom": "3" + }, + { + "time": "887.8048780487804", + "animations": 3, + "zoom": "3" + }, + { + "time": "1365.8536585365853", + "animations": 3, + "zoom": "3" + }, + { + "time": "1400", + "animations": 3, + "zoom": "3" + } + ] + }, + { + "name": "no browser console or page errors", + "status": "PASS", + "data": [] + } + ], + "errors": [], + "data": { + "inventory": { + "before": [ + 338, + 19 + ], + "after": [ + 359, + 20 + ], + "sw": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--home-menu", + "Home Menu" + ], + [ + "sw-header--home-menu-capture-default", + "Home Menu · 비교 캔버스 · Default" + ], + [ + "sw-header--home-menu-header-composition", + "Home Menu · Header 조합 · 로고 클릭" + ], + [ + "sw-header--home-menu-dynamic-data", + "Home Menu · Props · 데이터 변경" + ], + [ + "sw-header--home-menu-standalone", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--home-menu-property-bar-check", + "Home Menu · 속성Bar 비교 (26:10492)" + ], + [ + "sw-header--home-menu-capture-property-bar", + "Home Menu · 비교 캔버스 · 속성Bar" + ], + [ + "sw-header--home-menu-integration", + "Home Menu · 통합 · Popup · Escape" + ], + [ + "sw-header--home-menu-capture-responsive", + "Home Menu · 비교 캔버스 · 반응형" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--detail-buttons", + "Detail Buttons (Shared States)" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--window-move-motion", + "Window Move Motion" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ], + [ + "sw-header--k-guide", + "K Guide" + ] + ] + }, + "sidebar": [ + [ + "sw-header--composed-controls", + "Dropdown" + ], + [ + "sw-header--home-menu", + "Home Menu" + ], + [ + "sw-header--home-menu-standalone", + "Home Menu · 단독 사용 · 조합형" + ], + [ + "sw-header--document-open", + "Document Open" + ], + [ + "sw-header--hidden-sub-controls", + "Hidden Sub Controls" + ], + [ + "sw-header--overview", + "Overview" + ], + [ + "sw-header--interactive-states", + "Interactive States" + ], + [ + "sw-header--logo-slot", + "Logo Slot" + ], + [ + "sw-header--document-dropdown", + "Document Dropdown" + ], + [ + "sw-header--responsive-more", + "Responsive More" + ] + ], + "compare390": { + "cells": [ + { + "id": "none", + "x": 16, + "y": 212.5, + "right": 330, + "bottom": 534.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 354, + "y": 212.5, + "right": 668, + "bottom": 639.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 16, + "y": 663.5, + "right": 330, + "bottom": 1387.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 354, + "y": 663.5, + "right": 668, + "bottom": 1483.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare768": { + "cells": [ + { + "id": "none", + "x": 23.046875, + "y": 199.53125, + "right": 337.046875, + "bottom": 521.53125, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 361.046875, + "y": 199.53125, + "right": 675.046875, + "bottom": 626.53125, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 23.046875, + "y": 650.53125, + "right": 337.046875, + "bottom": 1374.53125, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 361.046875, + "y": 650.53125, + "right": 675.046875, + "bottom": 1470.53125, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1280": { + "cells": [ + { + "id": "none", + "x": 38.40625, + "y": 214.890625, + "right": 352.40625, + "bottom": 536.890625, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 376.40625, + "y": 214.890625, + "right": 690.40625, + "bottom": 641.890625, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 38.40625, + "y": 665.890625, + "right": 352.40625, + "bottom": 1389.890625, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 376.40625, + "y": 665.890625, + "right": 690.40625, + "bottom": 1485.890625, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + }, + "compare1440": { + "cells": [ + { + "id": "none", + "x": 120, + "y": 216.5, + "right": 434, + "bottom": 538.5, + "w": 314, + "h": 256 + }, + { + "id": "all", + "x": 458, + "y": 216.5, + "right": 772, + "bottom": 643.5, + "w": 314, + "h": 361 + }, + { + "id": "circle", + "x": 120, + "y": 667.5, + "right": 434, + "bottom": 1391.5, + "w": 314, + "h": 658 + }, + { + "id": "expanded", + "x": 458, + "y": 667.5, + "right": 772, + "bottom": 1487.5, + "w": 314, + "h": 754 + } + ], + "reach": true, + "docFits": true + } + }, + "browser": "155.0.8059.80", + "status": "FAIL" +} diff --git a/docs/sw/sw-dotum-font-qa/storybook-unused-removal/story-inventory-after.json b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/story-inventory-after.json new file mode 100644 index 0000000..841cd00 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/storybook-unused-removal/story-inventory-after.json @@ -0,0 +1,215 @@ +{ + "total": 359, + "sw": [ + { + "id": "sw-header--composed-controls", + "name": "Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--home-menu", + "name": "Home Menu", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--home-menu-capture-default", + "name": "Home Menu · 비교 캔버스 · Default", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-header-composition", + "name": "Home Menu · Header 조합 · 로고 클릭", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-dynamic-data", + "name": "Home Menu · Props · 데이터 변경", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-standalone", + "name": "Home Menu · 단독 사용 · 조합형", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--home-menu-property-bar-check", + "name": "Home Menu · 속성Bar 비교 (26:10492)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-capture-property-bar", + "name": "Home Menu · 비교 캔버스 · 속성Bar", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-integration", + "name": "Home Menu · 통합 · Popup · Escape", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--home-menu-capture-responsive", + "name": "Home Menu · 비교 캔버스 · 반응형", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--document-open", + "name": "Document Open", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--hidden-sub-controls", + "name": "Hidden Sub Controls", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--detail-buttons", + "name": "Detail Buttons (Shared States)", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--overview", + "name": "Overview", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--interactive-states", + "name": "Interactive States", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--window-move-motion", + "name": "Window Move Motion", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + }, + { + "id": "sw-header--logo-slot", + "name": "Logo Slot", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--document-dropdown", + "name": "Document Dropdown", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--responsive-more", + "name": "Responsive More", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest" + ] + }, + { + "id": "sw-header--k-guide", + "name": "K Guide", + "title": "SW/Header", + "tags": [ + "dev", + "test", + "manifest", + "verification" + ] + } + ] +} diff --git a/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance-full.png b/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance-full.png new file mode 100644 index 0000000..a974b73 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance-full.png differ diff --git a/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance.json b/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance.json new file mode 100644 index 0000000..0611336 --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/theme-inheritance/theme-inheritance.json @@ -0,0 +1,860 @@ +{ + "storybook": "http://127.0.0.1:6024", + "results": [ + { + "name": "기본: 단독 SWViewerHeader = 기본 Dotum", + "result": "PASS", + "detail": "15× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "기본: Dropdown = 기본 Dotum", + "result": "PASS", + "detail": "17× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "기본: More = 기본 Dotum", + "result": "PASS", + "detail": "17× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "뷰어 테마: SWViewerHeader 전체 = 검증 글꼴", + "result": "PASS", + "detail": "15× \"Noto Sans KR\", sans-serif" + }, + { + "name": "뷰어 테마: Dropdown = 검증 글꼴", + "result": "PASS", + "detail": "17× \"Noto Sans KR\", sans-serif" + }, + { + "name": "뷰어 테마: More = 검증 글꼴", + "result": "PASS", + "detail": "17× \"Noto Sans KR\", sans-serif" + }, + { + "name": "뷰어 테마: SWViewerPanel(제목·입력·버튼·스위치·힌트) = 검증 글꼴", + "result": "PASS", + "detail": "2 panels · 37× \"Noto Sans KR\", sans-serif" + }, + { + "name": "일반 테마: SWHeader + 열린 레이어 Dropdown = 검증 글꼴 (창 이동 Tooltip 별도)", + "result": "PASS", + "detail": "38× \"Noto Sans KR\", sans-serif" + }, + { + "name": "일반 테마: 창 이동 Tooltip = Inter → 테마 글꼴", + "result": "PASS", + "detail": "Inter, \"Noto Sans KR\", sans-serif" + }, + { + "name": "일반 테마: 레이어 Dropdown이 열린 상태(목록 행 A-WALL 표시)", + "result": "PASS", + "detail": "1 row" + }, + { + "name": "일반 테마: SWFooter = 검증 글꼴", + "result": "PASS", + "detail": "45× \"Noto Sans KR\", sans-serif" + }, + { + "name": "일반 테마: 명령창(SWFooterCommandLine, 중첩 hm-sw-theme) = 검증 글꼴", + "result": "PASS", + "detail": "6× \"Noto Sans KR\", sans-serif" + }, + { + "name": "일반 테마: 명령 등록 안내(Tooltip) = 검증 글꼴", + "result": "PASS", + "detail": "2× \"Noto Sans KR\", sans-serif" + }, + { + "name": "Portal: DOM이 테마 영역 밖에 렌더링됨", + "result": "PASS", + "detail": "" + }, + { + "name": "Portal: SWTheme만 감싸면 기본 글꼴(테마 미전달)", + "result": "PASS", + "detail": "Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "Portal: 같은 theme style의 SWTheme으로 감싸면 테마 적용", + "result": "PASS", + "detail": "\"Noto Sans KR\", sans-serif" + }, + { + "name": "영역 A(검증 글꼴)", + "result": "PASS", + "detail": "1× \"Noto Sans KR\", sans-serif" + }, + { + "name": "영역 B(기본) — 옆 영역 값이 섞이지 않음", + "result": "PASS", + "detail": "1× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "영역 C 바깥(검증 글꼴)", + "result": "PASS", + "detail": "\"Noto Sans KR\", sans-serif" + }, + { + "name": "영역 C 안쪽 SWTheme style(Malgun Gothic)만 안쪽에 적용", + "result": "PASS", + "detail": "1× \"Malgun Gothic\", sans-serif" + }, + { + "name": "대조: 기존 구조 주입 시 More·명령창이 기본 글꼴로 되돌아감(결함 재현)", + "result": "PASS", + "detail": "More 17× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif · 명령창 6× Dotum, 돋움, \"Malgun Gothic\", \"Apple SD Gothic Neo\", sans-serif" + }, + { + "name": "회귀: 기존 SW Story 67개 화면 — 새 상속 구조 = 기존 구조(계산값·위치·픽셀)", + "result": "PASS", + "detail": "67/67" + }, + { + "name": "Console / page error 없음", + "result": "PASS", + "detail": "" + } + ], + "regression": [ + { + "id": "sw-header--home-menu-capture-responsive", + "width": 1920, + "elements": 291, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 1920, + "elements": 122, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1920, + "elements": 2094, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--full-footer", + "width": 1920, + "elements": 327, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 1, + "result": "PASS" + }, + { + "id": "sw-footer--responsive", + "width": 1920, + "elements": 1123, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--viewer-header", + "width": 1920, + "elements": 151, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--responsive", + "width": 1920, + "elements": 447, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 1440, + "elements": 65, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu", + "width": 1440, + "elements": 1309, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-default", + "width": 1440, + "elements": 291, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-header-composition", + "width": 1440, + "elements": 100, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-dynamic-data", + "width": 1440, + "elements": 192, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-standalone", + "width": 1440, + "elements": 55, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-property-bar-check", + "width": 1440, + "elements": 17, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-property-bar", + "width": 1440, + "elements": 17, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-integration", + "width": 1440, + "elements": 100, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-responsive", + "width": 1440, + "elements": 270, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-open", + "width": 1440, + "elements": 1998, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 1440, + "elements": 387, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 1440, + "elements": 103, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 1440, + "elements": 122, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 1440, + "elements": 1584, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--window-move-motion", + "width": 1440, + "elements": 126, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 1440, + "elements": 396, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 1440, + "elements": 2302, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1440, + "elements": 2094, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 1440, + "elements": 99, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--full-footer", + "width": 1440, + "elements": 327, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--tool-groups", + "width": 1440, + "elements": 569, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--figma-variants", + "width": 1440, + "elements": 1771, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--custom-content", + "width": 1440, + "elements": 140, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--responsive", + "width": 1440, + "elements": 1123, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--parts", + "width": 1440, + "elements": 151, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 1440, + "elements": 219, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 1440, + "elements": 228, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 1440, + "elements": 375, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--viewer-header", + "width": 1440, + "elements": 151, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--menu-groups", + "width": 1440, + "elements": 344, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--states", + "width": 1440, + "elements": 107, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--dropdowns", + "width": 1440, + "elements": 77, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--settings-panel", + "width": 1440, + "elements": 216, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--content-variants", + "width": 1440, + "elements": 330, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--variable-size", + "width": 1440, + "elements": 109, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--responsive", + "width": 1440, + "elements": 447, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--compare-with-sw-header", + "width": 1440, + "elements": 347, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--logo", + "width": 1440, + "elements": 459, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-responsive", + "width": 1180, + "elements": 270, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 1180, + "elements": 122, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1180, + "elements": 2094, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--full-footer", + "width": 1180, + "elements": 327, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--responsive", + "width": 1180, + "elements": 1123, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--viewer-header", + "width": 1180, + "elements": 140, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--responsive", + "width": 1180, + "elements": 447, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-responsive", + "width": 900, + "elements": 258, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 900, + "elements": 122, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 900, + "elements": 2094, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--full-footer", + "width": 900, + "elements": 327, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-footer--responsive", + "width": 900, + "elements": 1123, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 13349, + "result": "PASS" + }, + { + "id": "sw-viewer--viewer-header", + "width": 900, + "elements": 79, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--responsive", + "width": 900, + "elements": 447, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--home-menu-capture-responsive", + "width": 560, + "elements": 242, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 560, + "elements": 122, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 560, + "elements": 2094, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 54893, + "maskedNoisePixels": 54893, + "result": "PASS" + }, + { + "id": "sw-footer--full-footer", + "width": 560, + "elements": 327, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 91, + "result": "PASS" + }, + { + "id": "sw-footer--responsive", + "width": 560, + "elements": 1123, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + }, + { + "id": "sw-viewer--viewer-header", + "width": 560, + "elements": 77, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 46, + "maskedNoisePixels": 46, + "result": "PASS" + }, + { + "id": "sw-viewer--responsive", + "width": 560, + "elements": 447, + "changedElements": 0, + "controlChangedElements": 0, + "diffPixels": 0, + "controlRasterPixels": 0, + "maskedNoisePixels": 0, + "result": "PASS" + } + ], + "errors": [] +} diff --git a/docs/sw/sw-dotum-font-qa/theme-inheritance/viewer-themed-more.png b/docs/sw/sw-dotum-font-qa/theme-inheritance/viewer-themed-more.png new file mode 100644 index 0000000..350166d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/theme-inheritance/viewer-themed-more.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/outline-states-2x.png b/docs/sw/sw-dotum-font-qa/viewer/outline-states-2x.png new file mode 100644 index 0000000..98ef298 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/outline-states-2x.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/outline-swheader-3x.png b/docs/sw/sw-dotum-font-qa/viewer/outline-swheader-3x.png new file mode 100644 index 0000000..893d0e4 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/outline-swheader-3x.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-3x.png b/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-3x.png new file mode 100644 index 0000000..6b02f6d Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-3x.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-right-3x.png b/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-right-3x.png new file mode 100644 index 0000000..b7dee37 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/outline-viewer-right-3x.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-1440-loaded.png b/docs/sw/sw-dotum-font-qa/viewer/package-1440-loaded.png new file mode 100644 index 0000000..49397db Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-1440-loaded.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-1440-panels.png b/docs/sw/sw-dotum-font-qa/viewer/package-1440-panels.png new file mode 100644 index 0000000..9d99ee3 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-1440-panels.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-1440-sample-menu.png b/docs/sw/sw-dotum-font-qa/viewer/package-1440-sample-menu.png new file mode 100644 index 0000000..38d0b35 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-1440-sample-menu.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-logo-element.png b/docs/sw/sw-dotum-font-qa/viewer/package-logo-element.png new file mode 100644 index 0000000..7d283de Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-logo-element.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-logo-none.png b/docs/sw/sw-dotum-font-qa/viewer/package-logo-none.png new file mode 100644 index 0000000..ee7bef3 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-logo-none.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-logo-src.png b/docs/sw/sw-dotum-font-qa/viewer/package-logo-src.png new file mode 100644 index 0000000..6bee064 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-logo-src.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1100.png b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1100.png new file mode 100644 index 0000000..4da920c Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1100.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1440.png b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1440.png new file mode 100644 index 0000000..b03ffa5 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-1440.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-responsive-520.png b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-520.png new file mode 100644 index 0000000..ba09e58 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-520.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-responsive-860.png b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-860.png new file mode 100644 index 0000000..632ea27 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-860.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/package-responsive-more-open.png b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-more-open.png new file mode 100644 index 0000000..54a319c Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/package-responsive-more-open.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/report.json b/docs/sw/sw-dotum-font-qa/viewer/report.json new file mode 100644 index 0000000..37c4b5a --- /dev/null +++ b/docs/sw/sw-dotum-font-qa/viewer/report.json @@ -0,0 +1,480 @@ +{ + "storybook": "http://127.0.0.1:6024", + "reference": "-", + "comparison": { + "package": { + "document": [ + { + "x": 25, + "y": 1, + "w": 357, + "h": 50, + "text": "C0060202-001" + } + ], + "object": [ + { + "x": 384, + "y": 1, + "w": 1055, + "h": 50, + "text": "파일 열기샘플Model" + } + ], + "field": [ + { + "x": 602, + "y": 5, + "w": 194, + "h": 42, + "text": "Model17,377L" + }, + { + "x": 800, + "y": 5, + "w": 260, + "h": 42, + "text": "전체 보기2.5D어두운" + } + ], + "button": [ + { + "x": 393, + "y": 9, + "w": 115, + "h": 34, + "text": "파일 열기" + }, + { + "x": 512, + "y": 9, + "w": 82, + "h": 34, + "text": "샘플" + }, + { + "x": 805, + "y": 9, + "w": 115, + "h": 34, + "text": "전체 보기" + }, + { + "x": 1402, + "y": 6, + "w": 32, + "h": 40, + "text": "" + } + ], + "toggle": [ + { + "x": 1074, + "y": 6, + "w": 84, + "h": 40, + "text": "레이어" + }, + { + "x": 1162, + "y": 6, + "w": 70, + "h": 40, + "text": "설정" + }, + { + "x": 1236, + "y": 6, + "w": 70, + "h": 40, + "text": "속성" + } + ], + "tab": [ + { + "x": 607, + "y": 6, + "w": 95, + "h": 40, + "text": "Model17,377" + }, + { + "x": 706, + "y": 6, + "w": 85, + "h": 40, + "text": "Layout237" + } + ], + "switchField": [ + { + "x": 924, + "y": 6, + "w": 52, + "h": 40, + "text": "2.5D" + }, + { + "x": 980, + "y": 6, + "w": 75, + "h": 40, + "text": "어두운 배경" + } + ] + } + }, + "results": [ + { + "name": "menu opens on click", + "result": "PASS", + "detail": "" + }, + { + "name": "menu has 3 entries", + "result": "PASS", + "detail": "" + }, + { + "name": "menu placed under its button", + "result": "PASS", + "detail": "menu 552,365 button 552,361" + }, + { + "name": "trigger shows open state", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowDown moves focus in menu", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape closes menu", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape returns focus to trigger", + "result": "PASS", + "detail": "" + }, + { + "name": "Enter opens with first entry focused", + "result": "PASS", + "detail": "" + }, + { + "name": "Enter selects entry (document changes)", + "result": "PASS", + "detail": "" + }, + { + "name": "onCommand reports menu entry", + "result": "PASS", + "detail": "Command: samples/sample-dxf" + }, + { + "name": "outside click closes menu", + "result": "PASS", + "detail": "" + }, + { + "name": "tabs ArrowRight selects Layout", + "result": "PASS", + "detail": "" + }, + { + "name": "header switch toggles", + "result": "PASS", + "detail": "" + }, + { + "name": "hover face #266651", + "result": "PASS", + "detail": "" + }, + { + "name": "toggle opens panel", + "result": "PASS", + "detail": "" + }, + { + "name": "toggle pressed state + #FFC600", + "result": "PASS", + "detail": "" + }, + { + "name": "panel focused on open", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape closes panel", + "result": "PASS", + "detail": "" + }, + { + "name": "focus returns to toggle", + "result": "PASS", + "detail": "" + }, + { + "name": "corner resize changes size", + "result": "PASS", + "detail": "314x420 → 257x323" + }, + { + "name": "drag moves panel", + "result": "PASS", + "detail": "dx -300 dy 30" + }, + { + "name": "drag stays inside bounds (10px edge)", + "result": "PASS", + "detail": "right gap 10, bottom gap 10" + }, + { + "name": "collapse hides body", + "result": "PASS", + "detail": "" + }, + { + "name": "title double click expands", + "result": "PASS", + "detail": "" + }, + { + "name": "전체 켜기: default kept, green hover / active, back after release", + "result": "PASS", + "detail": "rgb(255, 255, 255) rgb(18, 51, 40) | rgb(38, 102, 81) rgb(255, 255, 255) | rgb(18, 51, 40) rgb(255, 255, 255) | rgb(38, 102, 81) rgb(255, 255, 255) | rgb(255, 255, 255) rgb(18, 51, 40)" + }, + { + "name": "panel content callback", + "result": "PASS", + "detail": "" + }, + { + "name": "close hover = SWPopup hover asset", + "result": "PASS", + "detail": "" + }, + { + "name": "close button closes", + "result": "PASS", + "detail": "" + }, + { + "name": "last touched panel on top", + "result": "PASS", + "detail": "layer z 47, options z 46" + }, + { + "name": "전체 켜기 hover = 라이선스 확인 hover (same token)", + "result": "PASS", + "detail": "rgb(38, 102, 81) rgb(255, 255, 255) / rgb(38, 102, 81) rgb(255, 255, 255)" + }, + { + "name": "modal popup opens with backdrop", + "result": "PASS", + "detail": "" + }, + { + "name": "modal focus stays inside", + "result": "PASS", + "detail": "" + }, + { + "name": "modal Escape closes", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowRight opens submenu with focus", + "result": "PASS", + "detail": "" + }, + { + "name": "submenu opens to the side", + "result": "PASS", + "detail": "parent right 600, sub left 600" + }, + { + "name": "third level opens on hover", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowLeft closes one level", + "result": "PASS", + "detail": "" + }, + { + "name": "checkbox entry toggles via onCommand", + "result": "PASS", + "detail": "Command: file/lineweight=true" + }, + { + "name": "checkbox state reflected", + "result": "PASS", + "detail": "" + }, + { + "name": "disabled entry does nothing", + "result": "PASS", + "detail": "" + }, + { + "name": "menuAlign end + menuWidth", + "result": "PASS", + "detail": "width 220" + }, + { + "name": "context menu opens at pointer", + "result": "PASS", + "detail": "90,729" + }, + { + "name": "context entry reported", + "result": "PASS", + "detail": "" + }, + { + "name": "menu stays inside the viewport", + "result": "PASS", + "detail": "left 4, right 224" + }, + { + "name": "no horizontal overflow at 1440 / 1100 / 860 / 520", + "result": "PASS", + "detail": "[[1440,0,0],[1100,0,0],[860,0,0],[520,0,0]]" + }, + { + "name": "1440: no More", + "result": "PASS", + "detail": "" + }, + { + "name": "1100: More, samples/tabs/switches moved", + "result": "PASS", + "detail": "" + }, + { + "name": "860: panel toggles moved too", + "result": "PASS", + "detail": "" + }, + { + "name": "520: 파일 열기 / 전체 보기 icon only", + "result": "PASS", + "detail": "" + }, + { + "name": "More sections like the reference", + "result": "PASS", + "detail": "샘플 도면 | 기본 도면 · DWG | 평면 및 종단면도 · DWG | 기본 도형 · DXF | 도면 공간 | Model · 17,377개 | Layout · 237개 | 화면 보기 | 2.5D | 어두운 배경 | 패널 | 레이어 | 설정 | 속성" + }, + { + "name": "More face beige 260px", + "result": "PASS", + "detail": "" + }, + { + "name": "More checkbox reports command", + "result": "PASS", + "detail": "Command: layers=true" + }, + { + "name": "More radio selects tab value", + "result": "PASS", + "detail": "" + }, + { + "name": "mode switch shows viewer header", + "result": "PASS", + "detail": "" + }, + { + "name": "brand click returns to normal SWHeader", + "result": "PASS", + "detail": "" + }, + { + "name": "state kept across mode switch (layer panel still open)", + "result": "PASS", + "detail": "" + }, + { + "name": "logo none: no HM / text / icon", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":false,\"width\":24,\"docX\":25,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "logo none: cap shrinks to its edge (no wide gap)", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":false,\"width\":24,\"docX\":25,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "logoSrc shows the image (cap = 24 + logo + 25, min 72)", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":true,\"width\":94,\"docX\":95,\"height\":52,\"fileOpenY\":9,\"logoWidth\":45}" + }, + { + "name": "logo element shown", + "result": "PASS", + "detail": "{\"text\":\"LOGO\",\"img\":true,\"width\":81,\"docX\":82,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "header height and menu row unchanged with / without logo", + "result": "PASS", + "detail": "52/9 52/9 52/9" + }, + { + "name": "text outline 1.3px black on 14px text (label / file name / tab)", + "result": "PASS", + "detail": "rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg" + }, + { + "name": "label outline 1px black on 11px captions / counts", + "result": "PASS", + "detail": "rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg" + }, + { + "name": "icon outline: SVG stroke copy, no CSS filter", + "result": "PASS", + "detail": "{\"filter\":\"none\",\"copyStroke\":\"rgb(0, 0, 0)\",\"copyWidth\":5,\"glyphStroke\":\"rgb(255, 255, 255)\",\"glyphWidth\":2}" + }, + { + "name": "fill / size / weight / spacing kept", + "result": "PASS", + "detail": "rgb(255, 255, 255) 14px 500 normal" + }, + { + "name": "hover changes fill only (outline kept)", + "result": "PASS", + "detail": "" + }, + { + "name": "disabled fades text + outline together", + "result": "PASS", + "detail": "[\"0.6\",true]" + }, + { + "name": "SW/Tool removed from the sidebar", + "result": "PASS", + "detail": "SW/Header, SW/Footer, SW/Popup, SW/Viewer, SW/Theme" + }, + { + "name": "SW/Popup, SW/Header and SW/Viewer remain", + "result": "PASS", + "detail": "" + }, + { + "name": "no page errors", + "result": "PASS", + "detail": "" + } + ], + "errors": [] +} diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-compare-with-sw-header.png b/docs/sw/sw-dotum-font-qa/viewer/story-compare-with-sw-header.png new file mode 100644 index 0000000..68b386f Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-compare-with-sw-header.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-content-variants.png b/docs/sw/sw-dotum-font-qa/viewer/story-content-variants.png new file mode 100644 index 0000000..a3371a1 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-content-variants.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-dropdowns.png b/docs/sw/sw-dotum-font-qa/viewer/story-dropdowns.png new file mode 100644 index 0000000..6edb11a Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-dropdowns.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-logo.png b/docs/sw/sw-dotum-font-qa/viewer/story-logo.png new file mode 100644 index 0000000..2300338 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-logo.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-menu-groups.png b/docs/sw/sw-dotum-font-qa/viewer/story-menu-groups.png new file mode 100644 index 0000000..6b5267f Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-menu-groups.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-responsive.png b/docs/sw/sw-dotum-font-qa/viewer/story-responsive.png new file mode 100644 index 0000000..bcf8327 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-responsive.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-settings-panel.png b/docs/sw/sw-dotum-font-qa/viewer/story-settings-panel.png new file mode 100644 index 0000000..46b08b0 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-settings-panel.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-states.png b/docs/sw/sw-dotum-font-qa/viewer/story-states.png new file mode 100644 index 0000000..086049f Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-states.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-variable-size.png b/docs/sw/sw-dotum-font-qa/viewer/story-variable-size.png new file mode 100644 index 0000000..bb5f3a2 Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-variable-size.png differ diff --git a/docs/sw/sw-dotum-font-qa/viewer/story-viewer-header.png b/docs/sw/sw-dotum-font-qa/viewer/story-viewer-header.png new file mode 100644 index 0000000..5693c4b Binary files /dev/null and b/docs/sw/sw-dotum-font-qa/viewer/story-viewer-header.png differ diff --git a/docs/sw/sw-first-pass-cleanup-review-2026-10-19.md b/docs/sw/sw-first-pass-cleanup-review-2026-10-19.md new file mode 100644 index 0000000..665586c --- /dev/null +++ b/docs/sw/sw-first-pass-cleanup-review-2026-10-19.md @@ -0,0 +1,218 @@ +# SW 1차 Storybook·컴포넌트·문서 정리 보고 (2026-10-19) + +이번 정리는 디자인·동작·공개 API·Story ID를 그대로 두고 관리 구조만 정리했습니다. 삭제, 이름 변경, 분류 이동, 통합은 하지 않았습니다. 그런 작업은 [§8 2차 검토 목록](#8-2차-검토-목록)에 사용자 결정 대상으로 남겼습니다. + +- 시작: Branch `feature/sw-package`, HEAD `0029cef60c46d3b7e7ffb2795e31357958ab3b81`, 작업 트리 clean +- 범위: `packages/sw`, `src/sw`, `docs/sw` (다른 패키지·루트 설정은 변경하지 않음) + +## 1. 현재 SW 프로젝트 구조 + +| 경로 | 역할 | +|---|---| +| `packages/sw/src/index.ts` | 패키지 진입점(`sw.css` import, 공개 export) | +| `packages/sw/src/components/sw-header/SWHeader.tsx` | Header 조립·반응형·More·구성(`controls`/`hiddenControls`/`menuOrder`)·속성Bar/속성창 열림 (461줄) | +| `packages/sw/src/components/sw-header/components/` | 하위 컴포넌트 19개 파일 (아래 §3) | +| `packages/sw/src/components/sw-header/types.ts` | `SWHeaderProps`와 데이터 타입 | +| `packages/sw/src/components/sw-theme/SWTheme.tsx` | 하위 컴포넌트 단독 사용 시 토큰 범위 | +| `packages/sw/src/theme/sw.css` | 전체 스타일·토큰 (1842줄) | +| `packages/sw/src/assets/` | Figma SVG/PNG 50개 | +| `packages/sw/tests/` | 브라우저 검증 스크립트 5개 | +| `src/sw/sw-header.stories.tsx` | Storybook `SW / Header` 33개 Story (약 1860줄) | +| `src/sw/sw-stories.css`, `src/sw/assets/` | Story 전용 배치 CSS, 임시 로고, Figma 비교 PNG 3개 | +| `docs/sw/` | 사용 가이드, 디자인 명세, 검증 보고 15개, 증거 폴더 5개 | + +## 2. Storybook 전체 목록 및 분류 + +모두 `SW / Header` 아래에 있습니다. 주소는 `iframe.html?id=`입니다. 분류 기준은 기본 화면 / 상태 / 기능 예제 / Figma 비교 / QA·검증 / 중복 검토입니다. "테스트 사용"은 `packages/sw/tests`가 그 ID를 직접 연다는 뜻입니다. 이 Story들은 이름을 바꾸면 테스트도 고쳐야 합니다. 추가로 `detail-buttons` 검증은 33개 ID 전체를 기준 목록과 비교합니다. + +| # | Story ID | 메뉴 이름 | 분류 | 목적 · 주요 컴포넌트 | Figma | 테스트 사용 | 1차 의견 | +|---|---|---|---|---|---|---|---| +| S1 | `sw-header--detail-buttons` | Detail Buttons (Shared States) | Figma 비교 · QA | 상세 버튼 5종 공통 상태, `SWHeaderMenuDetail` | 26:10789 / 26:10792 | ○ | 유지, QA 분류 검토 | +| S2 | `sw-header--overview` | Overview | 기본 화면 | 1920 Header + 선택 상태 | 26:8944 | | 유지(대표) | +| S3 | `sw-header--default` | Default | 기본 화면(Args) | `SWHeader` 1920 프레임 | 26:8944 | ○ | 중복 검토(S2·S4) | +| S4 | `sw-header--controls` | Controls | 기능 예제(Args) | 프레임 없는 `SWHeader` + Controls 패널 | — | ○ | 중복 검토(S3) | +| S5 | `sw-header--interactive-states` | Interactive States | 상태 | Default/Hover/Selected/Disabled, 창 버튼 Callback | 26:10655 | | 유지 | +| S6 | `sw-header--responsive` | Responsive | 기능 예제 | 18개 폭 반응형 | 26:8944 | | 유지, S15와 인접 배치 검토 | +| S7 | `sw-header--window-move-motion` | Window Move Motion | 상태(Motion) | 창 이동 GIF 모션 1400ms | 26:10220 | | 유지 | +| S8 | `sw-header--composed-controls` | Composed Controls | 기능 예제 | 공개 하위 컴포넌트 재사용, 그룹 필드 Hover | — | | 유지 | +| S9 | `sw-header--logo-slot` | Logo Slot | 기능 예제 | `logoSrc` / `logo` / 미전달 | 26:8944 | | 유지 | +| S10 | `sw-header--document-dropdown` | Document Dropdown | 상태 + 기능 | 문서 목록 섹션 18개 | 26:10662 | | 유지, 섹션 분할 검토 | +| S11 | `sw-header--layer-dropdown` | Layer Dropdown | 상태 + 기능 | 레이어 목록 섹션 13개 | 26:10940 | | 유지 | +| S12 | `sw-header--color-dropdown` | Color Dropdown | 상태 + 기능 | 색상 목록·RGB 입력 | 26:10986 / 26:11036 | ○ | 유지 | +| S13 | `sw-header--line-style-dropdown` | Line Style Dropdown | 상태 + 기능 | 3열 선스타일 목록 | 26:11104 | | 유지 | +| S14 | `sw-header--text-dimension-style-dropdown` | Text · Dimension Style Dropdown | 상태 + 기능 | 문자·치수스타일 목록 | 26:11181 / 26:11215 | ○ | 유지 | +| S15 | `sw-header--responsive-more` | Responsive More | 기능 예제 | More 대표 필드 전환 | — | | 유지, S6과 통합 검토 | +| S16 | `sw-header--text-stroke` | Text Stroke | Figma 비교 · QA | 검정 외곽선 확대 비교 | 26:8944 | | 유지, QA 분류 검토 | +| S17 | `sw-header--layer-detail-input` | Layer Detail · Input | 상태 | 레이어 상세 버튼, `SWHeaderInput` | 26:10767 / 26:11656 | ○ | 이름 변경 검토(Input 중심) | +| S18 | `sw-header--dynamic-data` | Dynamic Data | 기능 예제 | 목록 추가·삭제·순서 | — | | 유지 | +| S19 | `sw-header--property-panel` | Property Panel | 기능 예제 | Header 연결 속성창, 폭 전환 | 26:11822 | ○ | 유지(대표) | +| S20 | `sw-header--property-panel-variants` | Property Panel Variants | 중복 검토 | 단독 패널 + 같은 조작 버튼 | 26:11822 | | 통합 검토(S27~S31) | +| S21 | `sw-header--k-guide` | K Guide | 상태(Motion) | K 버튼 가이드 반복 | 26:11698 / 26:11669 | | 유지 | +| S22 | `sw-header--additional-hover` | Additional Hover | QA · 중복 검토 | 상세 Hover·Selected·색상 기준 필수 선택 | — | ○ | 통합 검토(S1·S12) | +| S23 | `sw-header--property-bar` | Property Bar | 기능 예제 | 속성Bar 동적 편집 | 26:10492 | ○ | 유지 | +| S24 | `sw-header--dynamic-controls` | Dynamic Controls | 기능 예제 · 중복 검토 | `controls` allowlist | — | | 통합 검토(S26) | +| S25 | `sw-header--colorize` | Colorize | Figma 비교 | btn_colorize Default/Hover | 26:11302 / 26:11305 | ○ | 통합 검토(S12) | +| S26 | `sw-header--composition` | Composition (Visibility · Order) | 기능 예제 | `hiddenControls`, `menuOrder` | 26:8944 | | 유지 | +| S27 | `sw-header--property-panel-none` | Property Panel · 선택 없음 | 상태 | 26:11886 314×256 | 26:11886 | ○ | 유지 또는 S31로 통합 검토 | +| S28 | `sw-header--property-panel-all` | Property Panel · 전체 선택 | 상태 | 26:11823 314×361 | 26:11823 | ○ | 위와 같음 | +| S29 | `sw-header--property-panel-circle` | Property Panel · 원 1개 | 상태 | 26:11932 314×658 | 26:11932 | ○ | 위와 같음 | +| S30 | `sw-header--property-panel-expanded` | Property Panel · 모두 펼침 | 상태 | 26:12035 314×754 | 26:12035 | ○ | 위와 같음 | +| S31 | `sw-header--property-panel-compare` | Property Panel · 4개 비교 | Figma 비교 | 4상태 실측 비교 | 위 4개 | ○ | 유지 | +| S32 | `sw-header--property-shape-slot` | Property Panel · 형상 Slot | 기능 예제 | `shapeContent` | 26:11932 | | 유지 | +| S33 | `sw-header--property-fields` | Property Panel · 필드 13개 | Figma 비교 + 기능 | 필드 Default/Hover 표본 + 실제 조작 | 26:12388 ~ 26:12649 | ○ | 유지 | + +### 사용 편의성 조사 결과 + +- **한 메뉴에 모두 있음:** 33개가 `SW / Header` 한 단계에 섞여 있습니다. 사용자용 예제(S2, S8, S9, S19, S23, S26)와 검증 화면(S1, S16, S22, S31)이 같은 목록에 나옵니다. +- **비슷한 Story가 흩어짐:** 속성창 관련 Story가 9개(S19, S20, S27~S33)이고 메뉴 순서상 S21~S26 사이에 끊겨 있습니다. 반응형(S6, S15)과 구성(S24, S26)도 떨어져 있습니다. +- **같은 디자인이 반복됨:** S3, S4는 S2와 같은 Header이고, S20은 S27~S30과 같은 4상태입니다. S22의 상세 Hover는 S1, 색상 기준은 S12에도 있습니다. S25 Colorize는 S12 안에서도 보입니다. +- **이름만으로 알기 어려움:** `Additional Hover`, `Dynamic Controls`, `Property Panel Variants`, `Layer Detail · Input`. +- **Default/Hover 확인:** 대부분 "Hover (고정)" 섹션이 있어 편합니다. 다만 섹션이 많은 Story(S10 18개, S11 13개)는 스크롤이 깁니다. +- **실험용 후보:** 명확한 실험 Story는 없습니다. S20, S22는 구현 시점의 검증 용도가 강합니다. +- **설명 형식:** Story 설명은 대부분 "Figma 노드 → 동작 → 데이터 소유" 순서입니다. 다만 S3, S4, S27~S30은 Story 머리말 설명이 없습니다(Args·개별 상태 Story). + +## 3. 컴포넌트 구조와 재사용 관계 + +| 파일 | 줄 | 역할 | 사용하는 내부 모듈 | +|---|---|---|---| +| `SWHeader.tsx` | 461 | Header 조립 | 아래 대부분 | +| `SWHeaderField.tsx` / `SWHeaderFields.tsx` | 52 / 79 | 필드 버튼 공통 표면, 5개 필드 | Field, LayerIcons | +| `SWHeaderDropdown.tsx` | 156 | `useSWHeaderDropdown`(열기·키보드·바깥 클릭), `SWHeaderMenuDetail`(상세 버튼 공통), `SWHeaderColorChip` | — | +| `SWHeaderLayerMenu.tsx` | 264 | 레이어 필드 + 목록, **`SWHeaderLayerRows`(공유)** | Dropdown, Fields, LayerIcons | +| `SWHeaderColorMenu.tsx` | 211 | 색상 필드 + 목록, **`SWHeaderColorPanelBody`·`useSWHeaderColorMode`(공유)** | Dropdown, Fields, Input | +| `SWHeaderLineStyleMenu.tsx` | 192 | 선스타일 필드 + 목록, **`SWHeaderLineStyleColumns`·`SWHeaderLinePreview`(공유)** | Dropdown, Fields, Input | +| `SWHeaderStyleListMenus.tsx` | 150 | 문자·치수스타일 목록 | Dropdown, Fields | +| `SWHeaderInput.tsx` | 163 | 편집 Input, `parseSWHeaderColor`, `parseSWHeaderNumber` | — | +| `SWHeaderPropertyPanel.tsx` | 327 | 속성창, `useSWHeaderOverlay`(속성창·K 가이드 위치) | Input, LineStyleMenu, PropertyFields | +| `SWHeaderPropertyFields.tsx` | 221 | 속성창 레이어·선스타일·색상 필드 Dropdown | Layer/Color/LineStyle 공유 본문, Dropdown, Input | +| `SWHeaderPropertyBar.tsx` | 53 | 속성Bar | Input | +| `SWHeaderMore.tsx`, `SWHeaderKGuide.tsx`, `SWHeaderActions.tsx` | 118 / 77 / 26 | More, K 가이드, 인쇄·팝업 가이드 | KGuide → PropertyPanel(overlay) | +| `SWHeaderDocumentTitle.tsx`, `SWHeaderHome.tsx`, `SWHeaderWindowControls.tsx`, `SWHeaderProperties.tsx`, `SWHeaderLayerIcons.tsx` | 219 / 39 / 43 / 30 / 87 | 문서·홈·창 제어·상세보기 토글·레이어 아이콘 | — | + +점검 결과: + +- **사용하지 않는 Import/로컬:** 없음. `tsc --noUnusedLocals --noUnusedParameters`를 패키지와 앱 양쪽에서 확인했습니다. +- **사용하지 않는 CSS class:** 없음. `sw.css`의 174개 class가 모두 TSX에서 쓰이거나 `--${variant}` 형태로 동적으로 만들어집니다. +- **사용하지 않는 Token:** 없음. 108개 모두 `var()`로 참조됩니다. +- **같은 Selector가 반복됨:** 44건입니다. 대부분은 의도된 구조입니다. 같은 class를 `@container` 반응형, `prefers-reduced-motion`, keyframes 단계, 추가 수정 덮어쓰기에서 다시 선언합니다(예: `.hm-sw-header__document` 7회). 한곳으로 합치는 것은 광범위한 CSS 구조 변경이므로 R-C2로 남깁니다. +- **공통화가 덜 된 곳:** + - `SWHeaderLayerMenu`가 `useSWHeaderDropdown`과 거의 같은 열기·바깥 클릭·위치 계산을 따로 구현합니다. 2차원 화살표 키 이동 때문입니다. + - 속성Bar와 속성창이 같은 `parse` 규칙을 각자 갖고 있습니다. 속성창에만 `decimals`와 선스타일 목록 검사가 있어 동작이 다르므로, 합치면 속성Bar 동작이 바뀝니다. + - `useSWHeaderOverlay`는 폭 값 314/208로 사용처를 구분합니다. +- **공개 export 중 패키지 밖에서 쓰지 않는 Props 타입:** `SWHeaderMoreProps`, `SWHeaderMenuDetailProps` 등은 같은 파일 안에서만 쓰입니다. 공개 API이므로 그대로 둡니다. + +### 자산 + +- 50개 중 48개가 코드나 CSS에서 쓰입니다. +- 미참조 2개: `color-pick.svg`는 `colorize-default.svg`와 바이트가 같은 중복이고, `dropdown-arrow.svg`도 쓰이지 않습니다. 둘 다 삭제하지 않았습니다(R-A1, R-A2). +- `src/sw/assets/figma-reference/header-26-8944.png`는 Text Stroke Story에서 이미지 블록을 뺀 뒤 참조가 없습니다. 원본 보존 지시에 따라 남겼습니다(R-A3). +- Text Stroke 상태: `sw.css`에 `-webkit-text-stroke` 선언이 없고 검정 `text-shadow`만 남아 있습니다. +- SVG 캔버스 배경 제거: 2026-10-19 후속 수정 상태 그대로이며, 이번에 변경하지 않았습니다. + +## 4. 문서 목록 및 분류 + +| 문서 | 구분 | 상태 | +|---|---|---| +| `packages/sw/README.md` | 개요 + API 요약 | 날짜별 절이 쌓여 있음 → 상단에 현재 기준 색인 추가 | +| `docs/sw/sw-header-usage.md` (629줄) | 사용 가이드 + API + Storybook 안내 | 날짜별 절이 누적됨 → 색인 추가, 사실 오류 수정 | +| `docs/sw/sw-header-design-spec.md` (690줄대) | 디자인 명세 | Text Stroke 표 오류 수정, §18 속성 필드 추가, 색인 추가 | +| `sw-header-*-verification-2026-10-16.md` 11개 | 검증 보고(과거 기록) | 변경 없음 | +| `sw-header-firefox-range-close-…-2026-10-19.md`, `sw-header-followup-four-…-2026-10-19.md`, `sw-property-fields-verification-2026-10-19.md` | 검증 보고(현재) | 변경 없음 | +| `docs/sw/{detail-button,firefox-range,followup-four,property-close,property-fields}-qa/` | 증거 자료(PNG·JSON·log) | 변경 없음, 삭제 없음 | +| 이 문서 | 정리 보고 · 2차 검토표 | 신규 | + +- 링크 검사: SW 문서 17개의 상대 링크와 앵커를 모두 확인했습니다. 이번 수정 전후 모두 깨진 링크가 없습니다. +- 문서가 겹치는 구조: README·사용 가이드·디자인 명세에 같은 주제(속성창, Text Stroke, 상세 버튼)가 날짜별로 여러 번 나옵니다. "최신 기준" 안내가 각 문서 상단에 4~6개 쌓여 있어, 어느 설명이 현재인지 찾기 어렵습니다. 1차에서는 색인만 추가했고, 재구성은 R-D1~R-D3입니다. + +## 5. 1차에서 실제 수정한 내용 + +| 파일 | 수정 | 영향 | +|---|---|---| +| `src/sw/sw-header.stories.tsx` | Text Stroke Story 설명: 이미 제거된 자기 색 Stroke(0.3/0.4px)를 표시한다는 오래된 문구 수정 | 문구만 | +| 〃 | Color Dropdown 섹션 제목·설명의 "최신 예외 정책"을 날짜 기준으로 바꿈. "추출 버튼은 기존 정책 유지"를 실제 상태(btn_colorize Hover 26:11305)로 수정 | 문구만 | +| 〃 | Line Style Dropdown 섹션 설명의 "최신 요청"을 날짜 기준으로 바꿈 | 문구만 | +| 〃 | Story 전용 `hexToRgbText`를 지우고 공개 `parseSWHeaderColor`를 재사용 | 같은 결과(6자리 hex) | +| 〃 | `FIELD_FIXTURE`가 `PROPERTY_FIXTURE`를 다시 쓰던 것을 파생 방식으로 변경(다양함 행 + Figma 색상 예시만 덮어씀) | 표시 동일, 필드 테스트 77/77 재확인 | +| `packages/sw/src/theme/sw.css` | "Latest request" 주석 3개를 날짜 기준 주석으로 바꿈 | 주석만 | +| `packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx` | 같은 주석 1개를 날짜 기준으로 바꾸고 칩·추출 버튼 Hover 상태를 정확히 적음 | 주석만 | +| `docs/sw/sw-header-design-spec.md` | §6.1 표·토큰 표에서 제거된 `-webkit-text-stroke-width`·`--hm-sw-header-text-stroke-width`·`--hm-sw-header-solid-stroke-width`를 현재 상태로 수정. §18 속성 필드 13개 추가. 상단 색인 추가 | 문서 | +| `docs/sw/sw-header-usage.md` | Text Stroke 문단의 자기 색 Stroke·제거된 변수 설명 수정. §12에 현재 33개 안내 추가. 상단 색인 추가 | 문서 | +| `packages/sw/README.md` | Text Stroke·독립 버튼 Hover의 오래된 문구에 현재 상태 보충. 2026-10-19 속성 필드·게이지 절 추가. 상단 색인 추가 | 문서 | +| `docs/sw/sw-first-pass-cleanup-review-2026-10-19.md` | 이 보고서 | 신규 | + +Story ID, 메뉴 이름, Story 수(33), 공개 export, Props, 컴포넌트 렌더링, CSS 규칙, 자산은 바꾸지 않았습니다. + +## 6. 변경하지 않고 보류한 내용 + +- Story 삭제·이름 변경·분류(`SW/Header/...` 하위 그룹) 이동·통합 +- 과거 검증 보고서 본문(당시 기록이므로 오래된 Stroke 설명이 있어도 그대로 둠) +- 사용 가이드·명세의 날짜별 절 재구성 +- 미참조 자산 2개와 비교 PNG 1개의 삭제·이동 +- CSS 중복 Selector 합치기, Dropdown 위치 계산 공통화, parse 공통화 +- 섹션이 없는 Story(S3, S4, S27~S30)의 머리말 형식 통일(내용 추가가 필요해 2차로 넘김) + +## 7. SAFE / REVIEW REQUIRED + +**KEEP:** 위 컴포넌트 전부, 사용 중인 자산 48개, 33개 Story, 검증 보고 14개, 증거 폴더 5개, 테스트 스크립트 5개. + +**SAFE (이번에 적용함):** §5 표의 항목. 모두 문구·주석·Story 내부 데이터 정의만 바꿨고, 실제 참조를 확인했습니다. + +**REVIEW REQUIRED (손대지 않음):** 아래 §8의 R 번호 항목. + +## 8. 2차 검토 목록 + +번호나 파일명을 지정해 주시면 2차에서 그 항목만 진행합니다. "판단"은 사용자 결정이 필요한 종류입니다. + +| 번호 | 구분 | 현재 이름/경로 | 현재 역할 | 권장 정리 | 판단 | 영향도 | +|---|---|---|---|---|---|---| +| R-S1 | Storybook | 33개 전체 (`SW / Header`) | 한 단계 메뉴 | `SW/Header/기본`, `/Dropdown`, `/속성창`, `/구성·반응형`, `/QA` 하위 그룹. Story ID가 바뀌므로 테스트 스크립트·baseline 갱신이 필요 | 분류 변경 검토 | 중간 | +| R-S2 | Storybook | S3 `sw-header--default`, S4 `sw-header--controls` | Args 예제 | 하나로 통합(Controls 패널이 있는 1920 프레임). 테스트가 두 ID를 사용 | 통합 검토 | 낮음 | +| R-S3 | Storybook | S20 `sw-header--property-panel-variants` | 단독 4상태 + 조작 버튼 | S27~S31과 겹침. 삭제하거나 S31에 조작 버튼 합치기 | 통합 / 삭제 검토 | 낮음 | +| R-S4 | Storybook | S22 `sw-header--additional-hover` | 추가 수정 검증 | 상세 Hover는 S1, 색상 기준 필수 선택은 S12로 옮기기. 테스트 사용 | 통합 검토 | 낮음 | +| R-S5 | Storybook | S25 `sw-header--colorize` | btn_colorize 비교 | S12 Color Dropdown의 섹션으로 합치기. 테스트 사용 | 통합 검토 | 낮음 | +| R-S6 | Storybook | S24 `sw-header--dynamic-controls`, S26 `sw-header--composition` | 구성 API 2종 | 한 Story에 `controls` / `hiddenControls`·`menuOrder` 섹션으로 정리 | 통합 검토 | 낮음 | +| R-S7 | Storybook | S6 `sw-header--responsive`, S15 `sw-header--responsive-more` | 반응형 | 이웃 배치 또는 통합 | 분류 변경 검토 | 낮음 | +| R-S8 | Storybook | S17 `Layer Detail · Input` | 상세 버튼 + Input | `Editable Input` 등 이름 변경. 상세 버튼 부분은 S1과 겹침. 테스트 사용 | 이름 변경 검토 | 낮음 | +| R-S9 | Storybook | S1 `Detail Buttons`, S16 `Text Stroke`, S31 `4개 비교` | 검증 화면 | QA 그룹으로 이동(R-S1과 함께) | 분류 변경 검토 | 낮음 | +| R-S10 | Storybook | S10 `Document Dropdown`(18개 섹션), S11 `Layer Dropdown`(13개 섹션) | 상태 전체 | 상태 섹션과 Callback·예외 섹션으로 나누기 | 통합 / 분할 검토 | 낮음 | +| R-S11 | Storybook | S3, S4, S27~S30 | 머리말 없음 | 다른 Story와 같은 "Figma 노드 · 동작 · 데이터" 머리말 추가 | 이름·설명 검토 | 낮음 | +| R-C1 | Component | `packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx` | 레이어 Dropdown 동작 | 열기·바깥 클릭·위치 계산을 `useSWHeaderDropdown`으로 합치고 2차원 키 이동만 남기기 | 통합 검토 | 중간 | +| R-C2 | Component(CSS) | `packages/sw/src/theme/sw.css` | 전체 스타일 | 같은 Selector가 여러 곳에서 덮어쓰는 영역(문서·창·More·Motion) 정리, 날짜별 추가 절을 컴포넌트 절로 재배치 | 구조 변경 검토 | 중간 | +| R-C3 | Component | `SWHeaderPropertyBar.tsx` / `SWHeaderPropertyPanel.tsx` | 같은 parse 규칙 2벌 | 공통 parse로 합치기. 속성Bar도 `decimals`를 따르게 되는 동작 변경 | 통합 검토 | 낮음 | +| R-C4 | Component | `SWHeaderPropertyPanel.tsx` `useSWHeaderOverlay` | 속성창·K 위치 | 폭 314/208로 사용처를 판별하던 방식을 명시적 옵션으로 바꾸기 | 구조 변경 검토 | 낮음 | +| R-C5 | Component | `SWHeader.tsx` (461줄) | Header 조립 | 구성·반응형 계산 분리 검토(렌더링 구조 변경) | 구조 변경 검토 | 중간 | +| R-A1 | Asset | `packages/sw/src/assets/color-pick.svg` | 미참조, `colorize-default.svg`와 같은 파일 | 삭제 | 삭제 검토 | 낮음 | +| R-A2 | Asset | `packages/sw/src/assets/dropdown-arrow.svg` | 미참조 | 삭제 또는 사용처 확인 | 삭제 검토 | 낮음 | +| R-A3 | Asset | `src/sw/assets/figma-reference/header-26-8944.png` | 미참조 Figma 원본 | 보존 위치를 `docs/sw` 증거로 옮기거나 유지 | 유지 권장 / 이동 검토 | 낮음 | +| R-D1 | Document | `docs/sw/sw-header-usage.md` | 사용 가이드 | 날짜별 절을 기능별 장(설치·Props·Dropdown·속성창·구성·Storybook)으로 재구성, 날짜 기록은 변경 이력 절로 | 통합 검토 | 낮음 | +| R-D2 | Document | `docs/sw/sw-header-design-spec.md` | 디자인 명세 | 같은 방식으로 재구성, 상단 안내 6개를 색인 하나로 | 통합 검토 | 낮음 | +| R-D3 | Document | `packages/sw/README.md` | 개요 | 날짜별 절을 요약 한 페이지 + 문서 링크로 줄이기 | 통합 검토 | 낮음 | +| R-D4 | Document | `docs/sw/sw-header-*-verification-2026-10-16.md` 11개 | 과거 검증 | `docs/sw/verification/` 하위로 이동(링크 갱신 필요) | 분류 변경 검토 | 낮음 | +| R-D5 | Document | `docs/sw/*-qa/` 5개 | 증거 | `docs/sw/evidence/` 하위로 이동(테스트 기본 출력 경로 갱신 필요) | 분류 변경 검토 | 낮음 | + +### 2차 우선순위 제안 + +1. R-S1 메뉴 분류. 사용자가 가장 자주 보는 부분이며, R-S9도 같이 해결됩니다. +2. R-S2 ~ R-S6 중복 Story 통합. 테스트 ID 갱신이 함께 필요합니다. +3. R-D1 ~ R-D3 문서 재구성. +4. R-A1, R-A2 미참조 자산 삭제. +5. R-C1 ~ R-C5 코드 구조. 디자인 회귀 검증을 다시 해야 하므로 마지막에 둡니다. + +## 9. 기존 PASS 결과 영향 여부 + +| 기존 결과 | 이번 영향 | 처리 | +|---|---|---| +| 구성 시나리오 77/77, 기본 Header 10개 폭 비교 | 코드·CSS 규칙 변경 없음 | 기존 PASS 재사용(재실행 안 함) | +| Header 브라우저 검증 271건 | 같은 이유 | 기존 PASS 재사용 | +| Chrome/Firefox 게이지바 | 같은 이유 | 기존 PASS 재사용 | +| 속성 필드 77/77 | Story fixture를 바꿨으므로 영향 있음 | 이번에 재실행 | +| detail-buttons verify(33개 Story ID·상세 버튼 상태) | Story 파일을 수정함 | 이번에 재실행 | +| Typecheck / Build / Storybook Build | 주석·Story 수정 | 이번에 재실행 | + +이번 실행 결과는 커밋 메시지와 최종 보고에 적습니다. + +## 10. 미검증 사항 + +- Firefox에서 Storybook을 다시 보지 않았습니다(CSS 규칙 변경 없음). +- 구성 시나리오 77개, 10개 폭 비교, Header 271건은 다시 실행하지 않았고 기존 PASS를 재사용합니다. +- 문서 재구성 후의 가독성은 2차 결정 사항이라 평가하지 않았습니다. diff --git a/docs/sw/sw-footer-figma-mapping-2026-10-20.md b/docs/sw/sw-footer-figma-mapping-2026-10-20.md new file mode 100644 index 0000000..f9ab7e4 --- /dev/null +++ b/docs/sw/sw-footer-figma-mapping-2026-10-20.md @@ -0,0 +1,88 @@ +# SW Footer — Figma 35개 노드 매핑·구현 기록 (2026-10-20) + +- Figma: 이지빔-SW `rj6wpsfk24lOWvWiVRAANP`. 35개 노드 모두 Figma MCP(`get_metadata`, `get_design_context`, `get_screenshot`)로 읽었고, 글자 stroke·변형 레이어·opacity는 Plugin API(`use_figma` 읽기 전용)로 확인했습니다. Figma 파일은 수정하지 않았습니다. +- 추가 기준(사용자 제공, 2026-10-20): 실제 SW 화면 `src/sw/assets/footer-reference/composition-2026-10-20.png`(1915 × 1030), 좁은 화면 `narrow-2026-10-20.png`(952 × 183). 바 안 명령창·좌표·보조기능 켜짐·좁은 폭 동작은 이 화면을 따르고, Figma와 다르면 Figma가 우선입니다. +- 구현: `packages/sw/src/components/sw-footer/`, `packages/sw/src/theme/sw-footer.css`, 자산 `packages/sw/src/components/sw-footer/assets/`(Figma SVG 48개). +- Storybook: `SW/Footer` — Figma 렌더 비교 이미지는 `src/sw/assets/figma-reference/footer/.png`(35개). + +## 1. 노드 → 구현 → Story + +35개 노드는 34개 Component Set/부품과 1개 전체 화면입니다. 같은 UI의 상태 변화는 별도 컴포넌트가 아니라 Props·CSS 상태로 구현했습니다. + +| # | Node | 이름 | 분류 | 구현 (컴포넌트 · Props) | Figma 상태 → 구현 | Story | +|---|---|---|---|---|---|---| +| 1 | 26:9776 | btn_add_layout | Layout 탭 | `SWFooterLayoutTabs onAdd` | Default / Variant2(Hover) → CSS hover | Figma Variant · Layout 탭 | +| 2 | 26:9785 | btn_delete | Layout 탭 | 둥근 탭 ×(`onRemove`) | Default / Variant2(Hover, 노랑 ×) | 〃 | +| 3 | 26:9931 | btn_close2 | Layout 탭 | 사선 탭 ×(`onRemove`) | Default / Variant2(Hover) | 〃 | +| 4 | 26:9794 | layout01 | Layout 탭 | 마지막 탭 `shape="slant"` | default · hover · on · on hover · Variant5(이름 편집) · Variant6(편집 + hover) → `value`, `editingId`, hover | 〃 | +| 5 | 26:9837 | layout02 | Layout 탭 | `shape="rounded"` | 같은 6상태 | 〃 | +| 6 | 26:9885 | layout03 | Layout 탭 | `shape="rounded"` | default · hover · on · on hover | 〃 | +| 7 | 26:9914 | model | Layout 탭 | `modelLabel`, `value === SW_FOOTER_MODEL` | Default · hover · on | 〃 | +| 8 | 26:9942 | 예시) 탭 상태변화 | Layout 탭 | `SWFooterLayoutTabs layouts value onAdd` | Model / Layout 01 / 02 / 03 선택 | 〃, 전체 Footer | +| 9–18 | 26:9459, 26:9466, 26:9473, 26:9480, 26:9487, 26:9494, 26:9501, 26:9508, 26:9515, 26:9522 | text_도형 … text_구조배근 | 분류 탭 | `SWFooterMenu` 항목(`SWFooter categories`) | Default(#D4CBBD) · Variant2(Hover) · Variant3(현재, Pocket) | Figma Variant · 분류 탭 | +| 19–27 | 26:9529, 26:9551, 26:9576, 26:9601, 26:9629, 26:9651, 26:9673, 26:9689, 26:9702 | line · Pline · Arc · circle · ellipse · rect · poly · point · hatch | 명령 | `SWFooterToolButton`(`SWFooterTool` + `swFooterToolIcons.*`) | Default · Variant2(Hover) · Variant3(선택) → hover, `activeToolId`/`pressed` | Figma Variant · 명령 | +| 28 | 26:9739 | Ncopy | 명령 | 〃 (`swFooterToolIcons.ncopy`, Story 수정 분류) | 같은 3상태 | 〃 | +| 29 | 26:9971 | btn_add_menu | 빈 칸 | `SWFooterAddSlot` / `SWFooter onSlotAdd` | Default · hover(주황 점선 링) | Figma Variant · 빈 칸 | +| 30 | 26:9242 | 가이드 영상 보기 | 빈 칸 가이드 | `SWFooterAddSlot guide` / `SWFooter slotGuide` | Default · Variant2(가이드 표시) → hover·focus·`guideOpen` | 〃, 전체 Footer | +| 31 | 26:9096 | guide_바로가기 등록 | 빈 칸 가이드 | `SWFooterGuide media` | Variant5·6·4·9·8·9 = 가이드 영상 프레임 → `media`(프로그램 제공), Story는 6프레임 순환 | 〃 | +| 32 | 26:10023 | ico_arrow | 명령창·▲ | `SWFooterCommandLine` 펼치기, `SWFooter` ▲ 칸 | Default ↑ · hover · on ↓ · Variant4(on hover) → `expanded` / ▲ 패널 열림 | Figma Variant · 명령창, 화면 폭 | +| 33 | 26:10048 | command (접힘) | 명령창 | `SWFooterCommandLine` | 71px, 마지막 3줄 | Figma Variant · 명령창 | +| 34 | 26:10056 | command (펼침) | 명령창 | `SWFooterCommandLine expanded` | 270px | 〃 | +| 35 | 26:10097 | 레이아웃 분리 | 전체 | `SWFooter`(+ `SWFooterLayoutTabs`) | 하단 72px 전체 | 전체 Footer · 실제 조합(Figma 기본 구성 섹션), Figma Variant · Footer 전체 | + +보조 참고(35개 목록 밖, 2026-10-20 상태 수정 때 확인): 26:10104의 보조기능 버튼은 Component Set btn_객체스냅 26:9248 · btn_선택효과 26:9267 · btn_직각교차 26:9298 · btn_격자스냅 26:9320 · btn_격자배경 26:9381 · btn_선가중치 26:9412(Default / Variant2 / Variant3)의 인스턴스입니다. 기준 이미지 `src/sw/assets/figma-reference/footer/aux-buttons/`, Story = Figma 디자인별 Variant · 보조기능 버튼 섹션(2026-10-20까지는 Hover / Active / Selected / Disabled Story). + +26:10097 안의 보조기능 버튼(btn_객체스냅 …, 26:10104)·측면 버튼(26:10189 / 26:10192)·구분선·bg_vacant·menu_bg도 같은 노드에서 읽어 `SWFooterAuxGroup`·`SWFooterSideButton`·`SWFooterMenu` 면으로 구현했습니다. + +## 2. Storybook `SW/Footer` + +2026-10-20 정리: `기본 Footer`(`sw-footer--default`)와 `Hover / Active / Selected / Disabled`(`sw-footer--states`) Story를 삭제했습니다. 두 Story의 화면은 `전체 Footer · 실제 조합`의 섹션(Figma 기본 구성 · 상태)과 숨김 `Figma 디자인별 Variant`의 보조기능 버튼 섹션으로 옮겼습니다. 같은 날 2차 정리(사용자 요청)로 `전체 Footer · 실제 조합`의 `전체 Footer — Figma 기본 구성`·`상태`·`참고: 실제 화면` 섹션과 `화면 폭 변화`의 `참고: 실제 좁은 화면`·`Figma 기본 구성 (명령창 없음)` 섹션을 삭제했습니다(Story ID 유지, 기준 이미지 파일은 보존). Figma 기본 구성 비교는 숨김 `Figma 디자인별 Variant`의 Footer 전체 노드(26:10097)에 남아 있습니다. + +| Story | 내용 | +|---|---| +| 전체 Footer · 실제 조합 | 실제 Footer 조합(SWHeader + 도면 + 좌표 + 바 안 명령창 + 명령 10개 + 분류 12개 + Layout 탭, 모든 Callback 동작, 각 부품의 Hover · Active · Selected · Disabled) | +| 도구 그룹별 표시 | 도형(9) · 수정(NCopy) · 빈 분류, 보조기능·측면 버튼 없는 구성 | +| Figma 디자인별 Variant (35 노드, verification) | 노드마다 Figma 렌더 ↔ 구현 상태, 보조기능 버튼 6종 Figma ↔ 구현 4상태 | +| 도구 및 메뉴 변경 예제 | 사용자 분류·lucide 아이콘·slotCount 10·빈 칸으로 명령 추가·분류 추가·문구 변경·trailing·잠긴 Layout | +| 화면 폭 변화 | 실제 조합 1920 / 1440 / 1280 / 950 / 860 / 760(▲ 확장 목록 포함) | +| 개별 부품 (조합용) | `SWFooterAuxGroup`(3·2열), `SWFooterMenu` + `SWFooterToolButton`, `SWFooterCommandLine` | + +## 3. Figma·실제 화면과 구현의 차이 + +| 항목 | Figma / 실제 화면 | 구현 | 이유 | +|---|---|---|---| +| 글꼴 | Dotum | Noto Sans KR(SW 공통) | SW Header와 같은 확정 대체. 글자 폭·굵기 차이로 분류 탭 위치가 끝에서 최대 12px 차이 | +| 글자 stroke | 검정 1.3 / 1px + 자기 색 0.3 / 0.4px | 검정 외곽선만(Header 토큰) | Header 2026-10-16 수정과 동일 | +| 분류 탭 자간 | 앞 4개 4%, 나머지 10% | 모두 10% | 데이터 기반 탭 하나의 규칙. 10%일 때 Figma 상자 폭(45/61/43/84)에 가장 가까움 | +| Layout 01 vs 02 Hover | layout01 Hover = 주황 면 + 검정 글자, layout02 Hover = 어두운 베이지 + 주황 글자 | 모양별로 Figma 그대로 | Figma 두 컴포넌트가 다르게 그려짐 → 검토 필요 | +| Model 선택 | Figma On = 갈색 / 실제 화면 = 주황 | Figma(갈색) | Figma 우선 | +| Layout 01 단독 | 26:10097에는 Model 없이 Layout 01만 | `modelLabel={false}` 지원, 마지막 탭은 항상 사선 | 두 구성 모두 표현 | +| Variant5 / 6 의미 | 이름 없음(검정 면 + 빨강 글자) | 이름 편집 상태로 해석(Header 입력 편집 `#0F0D0A`·`#E60403`과 같은 값) | 해석 — 검토 필요 | +| 보조기능 Selected | Figma Variant2 = Variant3: 주황 그라데이션 테두리 + 아이콘·글자 `#FF5C00` | Figma 그대로(2026-10-20 수정: 아이콘을 `currentColor` 인라인 SVG로 바꿔 아이콘까지 주황) | — | +| 보조기능 Hover | 버튼 세트에 Hover 없음 | 노랑 테두리만(SW Header Figma Hover 토큰), 아이콘·글자 기본색 | 사용자 확정 2026-10-20 | +| 보조기능 Default 테두리 | Figma 갈색 그라데이션 | 그라데이션(2026-10-20 수정 전에는 단색 `#886D35`) | Figma 일치 | +| Hover(측면 버튼), Disabled | Figma 없음 | 글자 `#FF5C00`, 40% | AI 구성 값 — 디자인 확인 필요 | +| 좁은 폭 | Figma 없음 / 실제 화면 | 빈 칸 축소 → ▲ 패널, 분류 ◀ ▶, 보조기능 아이콘만(1279px 이하), 명령창 최소 280, 바 안 명령창 구성의 칸 영역 = 남는 폭 × 0.57 | 전환 폭·최소 폭·비율은 AI 구성 값(비율은 두 실제 화면 재현) | +| 명령창 줄 수 | Figma 3줄(줄 14px) / 실제 화면 접힘 5줄 | Figma 3줄 | Figma 우선 | +| 가이드 영상 | Figma는 6프레임 스토리보드(래스터) | `media`로 프로그램이 제공, Story만 프레임 순환 | 영상 자산은 프로그램 소유 | +| WIPEOUT · 객체스냅추적 아이콘 | 실제 화면에만 있음 | Story에서 lucide 아이콘(프로그램 제공 방식) | Figma 자산 없음 | + +## 4. 검증 (2026-10-20, 이 작업에서 실행한 것만) + +| 항목 | 결과 | +|---|---| +| 35개 노드 읽기·매핑 | PASS (§1) | +| `npx tsc -p packages/sw/tsconfig.json --noEmit` | PASS | +| `npm run build:sw` (dist·d.ts, CSS 자산 data URI 인라인) | PASS | +| 루트 `npx tsc -b` (Storybook·Story 코드, `@hm-design/sw` 패키지 Import) | PASS | +| `npm run check:ai-docs` | PASS | +| Storybook 렌더링(8개 Story, 실행 중인 6024) | PASS — Story별 Footer 수·콘솔 오류 확인 | +| Figma ↔ 구현 1:1 비교(기본 Footer, 35 노드 Story) | PASS — 위치 측정: 보조기능 (76, 2), 명령 칸 396·y 1, 명령어 전체보기 1552, 분류 탭 Figma 대비 ≤ 12px | +| 동작(실제 조합 Story) | PASS — 명령 선택, 분류 ←/→, 빈 칸 가이드 위치(가운데·4px 위)·클릭, 보조기능 토글, Layout 선택·F2 이름 변경·Delete·추가, 명령창 Enter·펼치기, ▲ 패널 열기·선택 후 닫힘·Escape 복귀 | +| 화면 폭 | PASS — 실제 조합 1920 → 12칸(명령창 629), 1440 → 명령 7 + ▲, 1280 → 5 + ▲, 950 → 4 + ▲·보조기능 아이콘만·분류 ◀ ▶. Figma 구성 1920 → 17칸, 1280 → 11, 1024 → 10, 820 → 6 + ▲ | +| ▲ 패널 줄바꿈(2026-10-20 수정) | PASS — 패널 `justify-content: flex-end` → `flex-start`. 데이터 순서대로 각 줄 왼쪽 첫 칸부터 채움: 1440(3개 1줄), 1280(5개 1줄 가득), 950(5 + WIPEOUT 1), 860(4 + 3), 760(2 × 4 + 1, 5줄), Figma 820(3개). 칸 68 × 47, 패널은 명령 칸 오른쪽 끝 정렬 유지 | +| 분류 전환 시 영역 유지(2026-10-20 수정) | PASS — 같은 폭에서 명령 10 / 1 / 0개 분류를 전환해도 칸 영역·명령창·명령어 전체보기·Layout 탭·보조기능 좌표와 폭 동일(8개 폭 모두). 수정 전에는 바 안 명령창 구성의 칸 수가 "명령 수 + 2"라 817 → 205 → 137px로 변함 | +| Header·Popup 영향 | 수정 없음(기존 파일 변경 없음, Footer CSS는 `hm-sw-footer*`와 새 토큰만) | +| 독립 소비 프로젝트(Tarball) 설치·빌드 | 미검증 | +| `npm run build-storybook` (정적 빌드) | 미검증 | +| Firefox·Safari | 미검증 (Chromium Storybook만) | diff --git a/docs/sw/sw-footer-popup-viewer-refinement-2026-10-20.md b/docs/sw/sw-footer-popup-viewer-refinement-2026-10-20.md new file mode 100644 index 0000000..a77658d --- /dev/null +++ b/docs/sw/sw-footer-popup-viewer-refinement-2026-10-20.md @@ -0,0 +1,121 @@ +# SW Footer · Popup · Viewer 디자인 및 Storybook 정리 (2026-10-20) + +범위: `feature/sw-package`, 기준 HEAD `2b0e1a2`. SW 패키지(`packages/sw`)와 SW Story(`src/sw`)만 변경했습니다. Web(UI)·OrgChart·CAD 렌더링·SW 기본 폰트 정책은 변경하지 않았습니다. Commit·Push 전(승인 대기). 같은 날 2차(Header·Footer·SWSelect)·3차(Footer 탭·Popup 컨트롤) 수정과 최종 통합 검증을 §8~§12에 이어 적었습니다. + +## 1. Footer Story 정리 + +| Story (ID) | 처리 | +|---|---| +| `기본 Footer` (`sw-footer--default`) | 삭제. 화면(Figma 데이터만 넣은 `` 1920 + Figma 26:10097 하단 렌더)은 `전체 Footer · 실제 조합`의 "전체 Footer — Figma 기본 구성" 섹션으로 이동 | +| `Hover / Active / Selected / Disabled` (`sw-footer--states`) | 삭제. 상태 셀(명령·빈 칸·분류·보조기능·측면 버튼의 Default / Hover·Active / Selected / Selected+Hover / Disabled)은 `전체 Footer · 실제 조합`의 "상태" 섹션으로, 보조기능 6종 Figma 비교(`aux-buttons/*.png`)는 숨김 `Figma 디자인별 Variant`로 이동. "하나만 선택" 데모(`AuxToggleDemo`)만 제거(보조기능 토글은 실제 조합에서 동작) | +| `전체 Footer · 실제 조합` (`sw-footer--full-footer`) | 메인. 섹션: 실제 Footer 조합(동작) → 전체 Footer(Figma 기본 구성) → 상태 → 실제 화면 참고. ID·이름 유지 | +| 나머지 (`tool-groups`, `figma-variants`, `custom-content`, `responsive`, `parts`) | 유지 | + +- 삭제 Story만 쓰던 코드: `AuxToggleDemo`, Story CSS `.sw-footer-story-aux-demo` 제거. `FigmaFooter`·`StateCell`·`AUX_SETS`·`aux-buttons` 이미지는 이동한 섹션이 계속 사용합니다(Figma 기준 이미지 보존). +- Footer 컴포넌트 코드는 변경하지 않았습니다(Hover·Active·Selected·Disabled, 칸 영역 고정, ▲ 왼쪽부터 배치, 반응형, 공개 API 그대로). +- 참조 갱신: `docs/sw/sw-footer-figma-mapping-2026-10-20.md` §1·§2, `packages/sw/tests/theme-inheritance.browser.mjs`(폭별 검사 대상 `footer--default` → `footer--full-footer`), `storybook-inventory.mjs`(`retiredFooterIds`), `storybook-simplification.browser.mjs`(삭제 ID 검사 추가). 과거 증거 `docs/sw/storybook-simplification-qa/sidebar.json`은 당시 기록이라 수정하지 않았습니다. + +## 2. Popup 안 SW Dropdown (레이어·색상) — **3차에서 철회, §10 참고** + +> 2026-10-20 3차 사용자 확정: SWHeader 레이어·색상 Dropdown은 Header 전용입니다. 아래 1차 변경(필드 typography 규칙)은 제거했고, Popup의 레이어·색상은 속성창 컨트롤 `SWPopupPropertyRow`로 바꿨습니다. + + +- 원인: `.hm-sw-property`(Popup 프레임)가 `color: #000`(`--hm-sw-property-label`)·`line-height: 16px`·`letter-spacing: .02em`을 지정하고, Header 필드(`button.hm-sw-header__field`)는 SW 버튼 초기화(`color/font/letter-spacing: inherit`)로 이를 상속했습니다. Header 안에서는 `.hm-sw-header`의 `#F6F4F2`를 상속해서 문제가 없었고, Popup 안에서는 검정 글자 + 검정 외곽선(text-shadow)이 되어 글자가 뭉개졌습니다. 목록 패널은 이미 자기 색을 지정하고 있었습니다. +- 수정(`sw.css`): `:is(.hm-sw-header__field, .hm-sw-header__layer, .hm-sw-header__menu)`가 Header 글자색(`--hm-sw-header-text-color`)·글꼴 크기·400·`line-height/letter-spacing: normal`을 직접 지정. Header 안의 계산값은 이전과 같고(같은 값을 상속하던 것을 직접 지정), Hover·Selected·Expanded 규칙은 특이도가 더 높아 그대로 적용됩니다. +- 별도 컴포넌트·Story 전용 CSS 없음. `SWHeaderLayerMenu`·`SWHeaderColorMenu` 그대로 재사용, Popup 프레임·제목·닫기·고정 Overlay 동작 변경 없음. +- `레이어 속성 + 추가 콘텐츠`(SWHeaderPropertyPanel + children)의 레이어·색상은 속성창 자체 `picker` 디자인(Figma 속성창)이며 Header Dropdown이 아닙니다. 변경하지 않았습니다. + +## 3. 투명도 게이지바 — `SWSlider` + +| | 스타일 A `appearance="panel"`(기본) | 스타일 B `appearance="property"` | +|---|---|---| +| 출처 | 지금까지 SW Popup에서 쓰던 게이지바(`@hm-design/ui` Slider 실측) = `SWViewerSlider`와 같은 모양 | 속성창 4개 상태 비교의 게이지바(`SWHeaderPropertyPanel` slider) | +| 모양 | 6px 트랙 `#E0DACE`, Range `#266651`, 18px 흰 Thumb + 2px `#266651` | 6px 베이지 트랙 + 빨강 채움(Thumb 중심까지), Figma Thumb 14px + 그림자 | +| 토큰 | `--hm-sw-slider-panel-track` / `-range` / `-thumb` (기존 값만 사용) | `--hm-sw-property-range-fill` / `-fill-edge` / `-track` / `-highlight` (기존) | + +- API: `value`(필수), `min`(0)·`max`(100)·`step`(1), `onValueChange(value)`, `onValueCommit(value)`(native `change`), `appearance`, `disabled`(40%), `input` 속성. 값·이벤트·키보드는 두 모양이 같습니다. +- 우선순위: ① `appearance` Prop → ② 기본 `"panel"`. 테마 연동은 토큰 범위(SWTheme `style`·Runtime 토큰 Override로 두 모양의 색 변경). 테마 전체의 기본 모양을 바꾸는 설정은 만들지 않았습니다. +- 중복 제거: 속성창 게이지바 CSS를 `:is(속성창 range, .hm-sw-slider[data-appearance="property"])`로 공유(속성창 86 × 16 그대로). `SWViewerSlider`는 `SWSlider appearance="panel"`을 렌더링하고 뷰어 토큰(`--hm-sw-viewer-panel-switch-on`, `--hm-sw-viewer-panel-background`)을 Slider 토큰에 연결합니다(모양·뷰어 테마 Override 동일, 내부 CSS 변수 `--hm-sw-viewer-slider-percent`는 제거). +- 기존 호환: 새 Export만 추가(`SWSlider`, `SWSliderProps`, `SWSliderAppearance`). `SWViewerSliderProps`·속성창 Props 변경 없음. Popup Story의 HM UI Slider 예제는 콘텐츠 자유 예시로 유지. +- Storybook: `SW/Popup → Custom Content`에 "투명도 게이지바 스타일" 섹션(A·B 비교 Popup, `appearance` 선택 Popup + Disabled). + +## 4. Popup B (`SW/Popup → Multiple Popups`) + +- 불일치 원인은 2절과 같습니다(레이어 필드 글자가 검정으로 뭉개짐). 2절 수정으로 해결. +- Popup B의 레이어 Dropdown이 고정값이라 선택해도 바뀌지 않던 것을 Popup A처럼 호스트 상태 + Callback(`b.layer=…`)으로 연결했습니다. +- 프레임(314, 면 `#E4DBC9`, 테두리 `#A67D03`, 제목 `#FFC600` 700, 제목줄 배경)·z-index(40, 목록 고정 Overlay 30)·Escape 스택은 A·C와 같습니다. 375px에서 페이지 가로 넘침 없음. +- `SWPopup`은 외형 고정 Non-modal 프레임이며 드래그·크기 조절·접기 기능이 없습니다(그 기능은 뷰어 `SWViewerPanel`). Popup B에 해당 기능을 추가하지 않았습니다. + +## 5. Viewer 가변 크기 Popup 제목 배경 + +- 원인: 뷰어 패널은 Figma 제목 아트(``, 308px)를 오른쪽 정렬하고 왼쪽 20px을 `clip-path`로 숨긴 뒤, 남는 왼쪽을 `::before`(폭 `100% − 292px`)로 채웁니다. 호스트 전역 `img { max-width: 100% }`(Tailwind preflight, Storybook·소비 프로젝트)가 312px 미만 패널에서 아트를 패널 폭으로 줄였고, 그 결과 숨긴 20px이 패널 안으로 들어왔는데 `::before` 폭은 0이라 제목 앞 약 17px에 제목줄 녹색 배경이 드러났습니다. +- 수정(`sw-viewer.css`): 뷰어 패널 제목 아트에 `max-width: none`. Story 전용 보정 없음. 250 × auto: 아트 308px, -43px부터 표시(틈 0). 같은 문제가 `Popup Content Variants`의 300px 패널(약 10px)에도 있었고 같이 해결됩니다. 314px 이상 패널은 계산값 변화 없음. +- 최소 폭 250·자동 높이·접기/펼치기·드래그는 그대로입니다. + +## 6. 검증 + +결과는 [footer-popup-viewer-refinement-qa/](./footer-popup-viewer-refinement-qa/) 참고. (아래 표는 2026-10-20 실제 실행 결과) + +| 항목 | 결과 | +|---|---| +| `npm run typecheck`(전체 workspace, 패키지 build 포함) | PASS | +| `npm run build:sw` · `npm run build-storybook` | PASS | +| `npm run check:ai-docs` · `packages/sw/tests/ai-docs.check.mjs` | PASS · 37/37 | +| `footer-popup-viewer-refinement.browser.mjs`(신규) | **26/26 PASS**: Footer 삭제 ID·섹션·상태·칸 위치 고정·▲, Popup 필드 = Header 필드(색·면·테두리·높이·글자·외곽선·Hover·목록), SWSlider A/B·공통 값·Commit·선택·Disabled, 속성창 게이지 86 × 16, Popup B 프레임·선택·375px, Viewer 250 × auto 아트·접기·드래그, 300px 패널, SWViewerSlider 토큰 | +| `storybook-simplification.browser.mjs` | 9/9 PASS(삭제 Footer ID 검사 추가) | +| `theme-inheritance.browser.mjs` | 23/23 PASS(폭별 검사 대상 `footer--full-footer`) | +| `viewer.browser.mjs` | 70/70 PASS | +| `integrated-improvement.browser.mjs` | 61/62. FAIL 1 `resize: collapsed Open returns once…`(Header 반응형 Open 히스테리시스) — 이번 Dropdown 규칙을 뺀 빌드에서도 같은 trace로 실패해 **이번 변경과 무관**. 10-19 기록에서는 PASS였으므로 그 이후 변경에서 생긴 기존 문제로 별도 확인 필요 | +| `storybook-unused-removal.browser.mjs` | 93개 중 FAIL 5 — 10-20 간소화 보고와 같은 **기존** 스냅샷 비교 실패 | +| `range-cross-browser`, `property-panel-comparison` | 실행 불가(**기존**): 10-19 삭제된 Story(`sw-header--property-panel` 등)를 엶 | +| `viewer-regression.browser.mjs`(기준선 대비 픽셀) | 미실행 — 기준선 Storybook 빌드 필요. SWViewerSlider는 신규 검사(토큰·높이)와 viewer.browser 70/70으로 대신함 | +| Firefox 렌더링 | 미검증(Chrome만) | + +## 7. 승인 필요 + +- `SWSlider` 신규 공개 API 이름·기본값(`appearance="panel"`)·`onValueCommit` 의미. +- 토큰 `--hm-sw-slider-panel-track/-range/-thumb` 추가(값은 기존 `#E0DACE`·`#266651`·`#FFFFFF`). 일반 모드 A 트랙은 HM UI Slider 실측 `#E0DACE`, 뷰어는 기존대로 `#E4DBC9`(뷰어 패널 면) — 의도된 차이 유지. +- 테마 전체 기본 `appearance` 설정은 만들지 않음(필요 시 별도 결정). +- `SWPopup`은 화면 폭 322px 미만에서 314px보다 좁아지면 제목 아트가 줄어듭니다(기존 동작, 이번 범위 밖). + +## 8. 2차 — Header Open 히스테리시스 수정안 A (`SWHeader.tsx`, `sw.css`) + +- 원인(별도 조사 세션, 첫 실패 Commit `170a5c2`): 넓어질 때 Print/K(640)·Color(900)·속성 블록(1080)이 고정 Breakpoint로 복귀하며 남은 공간을 음수로 만들고, 그때마다 Open이 먼저 More로 밀려남. +- 수정: ① 넓어지는 중 Breakpoint로 막 돌아온 부분은 측정 공간이 없으면 More에 hold(측정 공간이 생기면 복귀). 기본 레이아웃의 Print/K는 창 영역에 있어 hold 동안 창 영역만 640 미만 상태(`data-actions-held`). ② 넓어지는 중 복귀한 Open은 다른 부분 때문에 다시 밀리지 않음(후보가 없을 때만). ③ 좁아질 때는 Open 우선 이동 유지, 접힌 동안 더 좁아지면 복귀 기준 폭도 낮춤. ④ Open 복귀는 More 스택을 기다리지 않음(파일명 폭에서 가져감). ⑤ 마지막 항목 복귀 시 More 버튼이 사라지는 몫은 More를 잠시 빼고 실측. ⑥ 같은 폭에서 한 번 복귀한 항목은 다시 hold하지 않음(무한 업데이트 방지 — 중간 검증에서 `sw-header--responsive-more` React #185를 발견해 수정). +- Trace(테스트 조건 그대로 `[data-width="520"]` 프레임 520→1080): 수정 전 `[[520,0],[560,0],[600,1],[640,0],[680,0],[720,1],[760,1],[820,1],[900,0],[1080,0]]` → 수정 후 `[[520,0],[560,0],[600,1],[640,1],[680,1],[720,1],[760,1],[820,1],[900,1],[1080,1]]`(held: 640·680 Print/K, 900·1080 Color). 1920에서 모두 복귀, 1800으로 줄이면 Open 먼저 이동, 다시 넓히면 600에서 1회 복귀. + +## 9. 2차 — Footer·SWSelect + +- 토큰 `--hm-sw-footer-gra-border-orange`(Figma gra-border-orange, 기존 `--hm-sw-footer-aux-pressed-border` 값과 동일하며 그 토큰이 이를 참조). 전체보기 버튼 Hover·Pressed = 두 줄 `#FF5C00` + 주황 그라데이션 테두리. 분류 행 + Hover = 주황 + (`menu-add-hover.svg`). Layout + Hover = 그라데이션 면 + +. Model 선택·Hover, Layout(선택 아님) Hover = 그라데이션 면. +- Story 내부 5개 삭제: 전체 Footer — Figma 기본 구성 / 상태 / 참고: 실제 화면, 화면 폭 변화의 참고: 실제 좁은 화면 / Figma 기본 구성(명령창 없음). 기준 이미지 파일(`assets/footer-reference/*.png`)은 매핑 문서 기준이라 보존, Story import만 제거. +- `SWSelect`(신규): native select, 28px · 좌우 8 · 1px `#948871` · radius 4 · `#F1ECE1` · 12px 검정. Popup 도면 설정 단위(이전 HM UI Select)와 Viewer 축척 지정 단위(이전 Story 전용 CSS `.sw-viewer-story-select`, 제거)에 적용 — Default·Hover·Focus 계산값 차이 0. +- 미사용 자산(참조 0, Figma 원본 상태라 보존): `tab-model-on.svg`, `tab-slant-hover.svg`, `tab-add-hover.svg`. + +## 10. 3차 — Footer 탭·Popup 컨트롤 + +- Footer 두 번째 분류 탭 배경 갈라짐: 원인은 탭 위치가 아니라 `bg_vacant`(마지막 명령 뒤 어두운 면)가 분류 행 아래까지 내려와 있던 것. 선택 탭의 Pocket은 위가 열린 모양이라 뒤가 비치고, `수정`(명령 1개)의 Pocket이 68px 칸 경계를 가로질러 왼쪽은 그룹 면·오른쪽은 vacant 면으로 갈라짐. vacant를 명령 칸 높이(46px)까지만 그려 모든 탭의 Pocket이 같은 그룹 면을 보임(도형·수정·편집·문자 검증). **영향:** 명령이 적은 분류(편집 등)의 Pocket 면이 이전의 어두운 vacant에서 그룹 면으로 바뀜 — 디자인 확인 권장. +- Model·Layout 텍스트: Model 선택·Hover와 Layout Hover의 글자를 Default와 같게(`#161410`, 12px, 400, 외곽선 없음, 위치·크기 불변). 이전 2차의 흰 글자·외곽선 규칙 대체. 선택된 Layout(갈색 면, 흰 글자 + 외곽선)과 이름 편집 상태는 그대로. +- Popup의 Header 전용 Dropdown 제거: 원인은 1차에서 Popup 안 `SWHeaderLayerMenu`·`SWHeaderColorMenu`를 Header처럼 보이게 한 `:is(.hm-sw-header__field, …__layer, …__menu)` typography 규칙(제거). Popup 전용 기준은 속성창 picker(`SWHeaderPropertyPickerField`, Figma 26:12250 / 26:12170)이며, 이를 SWPopup 안에서 쓰도록 공개 행 `SWPopupPropertyRow`(속성창 `PropertyEditor` 그대로)를 추가. 도면 설정·Popup B·AI Example E에 적용. 속성창 행과 계산값 동일, Popup 안 `.hm-sw-header__field` 0개, Header 필드는 변경 없음. + +## 11. 최종 검증 (2026-10-20 15:00, Storybook static 재빌드 기준) + +| 항목 | 결과 | +|---|---| +| `npm run typecheck`(workspace 전체) · `build-storybook` · `build:sw` | PASS | +| `check:ai-docs` · `packages/sw/tests/ai-docs.check.mjs` | PASS · 37/37 | +| `footer-popup-viewer-refinement.browser.mjs` | **47/47 PASS** (증거 [footer-popup-viewer-refinement-qa/](./footer-popup-viewer-refinement-qa/)) | +| `storybook-simplification` | 9/9 PASS | +| `integrated-improvement` (options) / (popup) | 61/61 / 26/26 PASS. 기본 섹션의 `tool`은 10-19 삭제된 `sw-tool--tool-buttons`를 열어 중단되던 **기준선 문제** → 기본 섹션에서 제외(이름으로는 계속 실행 가능) | +| `theme-inheritance` · `viewer.browser` | 23/23 · 70/70 PASS | +| `integrated-consumer`(npm pack → React 19 + Vite + Tailwind 4 새 프로젝트, tsc + vite build) + 브라우저 | build PASS, 46/46 PASS | +| `home-menu-integration` | 22/23, FAIL 1(`without homeMenu: logo click…`) = **기준선**(47972c5에서도 동일) | +| `storybook-unused-removal` | 93 중 FAIL 5 = **기준선**(10-19 inventory·source 스냅샷 비교). 중간 7건 중 추가 2건은 위 무한 업데이트였고 수정 후 5건으로 복귀 | +| `range-cross-browser`, `property-panel-comparison`, `followup-four`, `property-fields` | 실행 불가 = **기준선**(10-19 삭제 Story를 엶) | +| 실제 소비 프로젝트 `D:디자인시스템HMDesignSwTest-viewer`(Submodule `68fbcf6` + Workspace) | 사용 중인 SW API 14개 모두 현재 패키지에 존재(소스 호환). 해당 폴더에 미커밋 작업 20개·detached HEAD가 있어 Submodule 갱신·실행 검증은 하지 않음 — **미검증, 승인 필요** | +| Firefox, `viewer-regression`(기준선 픽셀 비교) | 미실행 | + +## 12. 남은 항목 · 승인 필요 + +- SW 기본 글꼴: 현재 `--hm-sw-header-font-family: "Noto Sans KR", …`(`sw.css` 1곳), AI 문서는 "Dotum 기본 적용 승인 대기". 사용자 기준(SW = 돋움)과 다름. 바꾸면 SW 전체 글자 폭이 달라져 Header More 측정·Footer 칸·Popup 행 폭에 영향 → 별도 승인 후 토큰 1곳 변경 + 문서 4곳 + 회귀 검증 계획. +- 그라데이션 중복: Home Menu `--hm-sw-home-menu-item-hover-border`는 같은 색의 반올림 값(8.5/37.9/71.9/92.8%). 다른 컴포넌트의 승인 값이라 통합하지 않음(검토 필요). +- 디자인 확인: 전체보기 Hover 테두리, 분류 + Hover, Model 기본(선택 아님) 베이지 유지, 명령이 적은 분류의 Pocket 면 변화. diff --git a/docs/sw/sw-header-additional-verification-2026-10-16.md b/docs/sw/sw-header-additional-verification-2026-10-16.md new file mode 100644 index 0000000..b8e2fa3 --- /dev/null +++ b/docs/sw/sw-header-additional-verification-2026-10-16.md @@ -0,0 +1,109 @@ +# SW Header 추가 수정 검증 — 2026-10-16 + +현재 요청 A–H의 결과입니다. 기존 통합 작업/과거 PASS 기록을 덮어쓰지 않습니다. CAD 프로그램 통합이나 전체 HMDesign 프로젝트 승인 판정이 아닙니다. + +1. **최종 판정: PASS — 요청한 추가 기능과 실행 검증 범위.** PASS-A~I의 기능·빌드·브라우저 조건을 확인했습니다. Guard 원본 NOT VERIFIED와 남은 디자인 차이는 21~22번에 별도로 기록합니다. 이 보고가 미실행 영역을 PASS로 바꾸지 않습니다. + +2. **시작 Git 상태.** 절대 경로 `D:\디자인시스템\HMDesign-SW`, Branch `feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c`. 기존 상태는 `M package.json`, `M package-lock.json`, `?? packages/sw/`, `?? src/sw/`, `?? docs/sw/`였습니다. 사용자 지정 Worktree/Branch를 사용했고 기존 변경을 보존했습니다. 시작 시 패키지·Story·문서 복사본과 SHA-256을 QA 경로에 남겼습니다. + +3. **재사용.** 기존 Dropdown 8종·id 기반 데이터·Color/Number parser·SWHeaderInput·선 패턴·문자/치수 SVG·레이어 상태 아이콘·문서 목록·More 대표 필드·로고 슬롯·창 제어를 사용했습니다. 다른 패키지 소스는 수정하지 않았습니다. + +4. **상세 5개 Hover: PASS.** 배경 .15→.25, radius 24→25, Mouse Leave 복원, Hover Callback 없음, 기존 클릭 1회/닫기, focus-visible/disabled 보존. 치수 상세는 실제 Hover 26:10799(기본 아이콘·글자 100%)이며 Variant3를 혼합하지 않았습니다. 다른 4개는 원본 Hover 아이콘·글자 35%입니다. + +5. **5개 버튼 크기: PASS.** 실제 브라우저 측정은 레이어 113×24 / 색상 99×24 / 선스타일 128×24 / 문자스타일 142×24 / 치수스타일 142×24px로 각 Figma 기준과 일치합니다. Noto Sans KR에서도 텍스트가 버튼 안에 잘리지 않는 것을 확인했습니다. + +6. **ByLayer/ByBlock Hover: PASS.** 82.5×28px, 글자 #FF5C00, 검정 text-shadow 유지. 선택된 버튼에 Hover해도 #62533D 선택 배경과 On Inset Shadow가 남습니다. Mouse Leave에서 전경색 #D4CBBD로 돌아옵니다. + +7. **필수 선택: PASS.** 초기 ByLayer, 재클릭 유지·중복 Callback 없음, 다른 모드로 전환, Controlled ByLayer/ByBlock/null 변경, 팔레트/사용자 색상 선택 후 정확히 하나 표시를 확인했습니다. null의 직접 색상 API 의미와 색상값은 유지하고 모드 표시만 마지막 유효 모드를 기억합니다. + +8. **레이어 목록 Hover/Selected: PASS.** 갈색 배경·주황 이름을 동일 적용합니다. 다른 행 Hover와 Mouse Leave에서 선택을 유지하고, 실제 선택 Callback을 받은 호스트 데이터 변경으로 선택 강조가 이동합니다. 기존 전구/눈꽃/자물쇠 매핑은 그대로입니다. 제공되지 않은 별도 레이어 상세 편집 창은 만들지 않았습니다. + +9. **선/문자/치수 Hover/Selected: PASS.** #62533D / #FF5C00, 선과 치수 미리보기도 동일 강조입니다. CENTER 22·7·22·7 및 HIDDEN 33·33의 원래 패턴, 문자 미리보기와 치수 원본 SVG를 유지했습니다. 상단 필드/문서 선택 정책은 변경하지 않았습니다. + +10. **속성창 4개 상태: PASS.** SWHeaderPropertyPanel 하나가 외부 selection/properties/groups/expandedGroupIds에 따라 바뀝니다. Story fixture 측정: 선택 없음 314×256 / 전체 선택 314×361 / 원 1개 314×658 / 모두 펼침 314×754px. 객체 개수·수치·예시 텍스트는 패키지에 고정하지 않았습니다. Dim 없는 non-modal 도구창입니다. + +11. **동적 입력/Callback: PASS.** Text/Number/Select/Color/Slider/Computed, id/group/order, validation, unit/annotation, ReadOnly/Disabled, 외부 값 변경, 항목 추가/삭제, 선택 객체 교체, 옵션 삭제를 지원합니다. Enter/Blur 확정·Escape 취소·변경 없는 중복 보고 방지를 확인했습니다. 삭제된 항목이나 이전 선택의 draft는 폐기합니다. 펼침이 속성값을 바꾸지 않으며, 원형 그래픽의 추가 일반 항목도 위치 영역과 겹치지 않습니다. CAD 계산/객체 변경은 호스트 책임입니다. + +12. **내부 아이콘: PASS.** Default→Hover→Active→다시 Default 및 호스트 Callback을 확인했습니다. 29×27.13px wrapper, 원본 SVG/Gradient/Active 금색 테두리 사용. Figma SVG export root가 29×28로 반올림되어 root 크기는 변경하지 않았습니다. 기존 CAD 액션 계약은 없어 toolActive/onToolActiveChange/toolLabel을 통해 호스트에 상태만 통지합니다. + +13. **닫기 버튼: PASS.** 원본 44×30 SVG의 Default/빨강 Hover·흰 X·클릭 닫기를 확인했습니다. Escape와 속성창 버튼 재클릭도 닫으며, Desktop은 원래 속성창 버튼, Mobile은 More로 Focus를 돌립니다. Header 종료 Callback과 분리했습니다. + +14. **K 가이드: PASS.** 기존 40×38 K 버튼 하나를 재사용합니다. 아래 208×149 가이드, 원본 이미지/마스크, 녹색 배경·금색 경계·문구, 511ms 표시 전환, 버튼→팝업 이동 시 Hover 유지, Hover 종료 닫기를 확인했습니다. 기존 640px Breakpoint 아래에서는 기존 More 항목에 같은 가이드를 연결합니다. + +15. **K 이미지 반복: PASS.** 단일 원본 이미지의 CSS transform을 연속 보간해 Pan/Zoom합니다. 400ms 지연/1022ms 전환 → 100ms 지연/1022ms 전환 → 150ms 지연/511ms 전환, 마지막 화면 400ms 유지 후 511ms 복귀로 반복합니다. 브라우저 시간 샘플에서 4개 상태·다음 반복과 15개 이상의 중간 transform을 확인했습니다. 재진입 초기화·타이머 정리·Reduced Motion 첫 프레임 정지·More Escape 후 재열기 시 잔상 없음도 확인했습니다. + +16. **Text Stroke Width: PASS.** 요청한 일반 선언과 `--hm-sw-header-text-stroke-width` 변수는 제거했습니다. 일반 자기 색 Stroke 중복 선언도 없습니다. 검정 text-shadow·상세 pill의 별도 solid-stroke-width·SVG/Border/선 Stroke는 유지했습니다. + +17. **반응형/접근성: PASS(실행 범위).** 1920/1440/1080/900/768/640/390px에서 Header 49px, Header 가로 넘침 0, 속성창/K 가이드 viewport 경계, 내부 스크롤을 확인했습니다. 기존 Breakpoint는 그대로입니다. 실제 label/control id·접근성 이름·dialog 연결·키보드 Enter/Escape·Focus 복귀·ReadOnly/Disabled를 확인했습니다. 직접 Windows 입력기/보조기기 검증은 22번을 따릅니다. + +18. **기존 Story/회귀: PASS.** 기존 17개 export를 유지하고 Property Panel / Property Panel Variants / K Guide / Additional Hover 4개를 추가하여 빌드 index 21개입니다. 모든 Story 렌더와 적용되는 Header 높이를 확인했습니다. 추가로 문서 1개·New/Open·색상 입력 검증·사용자 색상 2개 및 Callback·선 스케일/패턴·레이어 3개 Toggle·대표 More 이동을 확인했습니다. 기존 모든 상호작용의 가능한 조합을 전수 검사했다는 뜻은 아닙니다. + +19. **빌드/검증: PASS.** 실제 package.json의 `npm.cmd run typecheck:sw`, `build:sw`, Root `typecheck`, Root `build`, `build-storybook` 최종 실행이 모두 exit 0입니다. 통합 브라우저 189/189, 보완 브라우저/소스 보존 45/45, 사용자 색상·More 최종 경계 별도 PASS, pageerror 0. SW 출력은 styles.css 약 82.48kB / index.js 약 674.64kB이며 원본 PNG가 data URI로 포함됩니다. Root의 기존 유형 Tailwind `bg-[var(...)]` 최적화 경고와 500kB chunk 경고, Storybook 번들 크기/시간 안내는 남습니다. 별도 lint 명령은 package.json에 없고 실행하지 않았습니다. + +20. **변경 파일.** 시작 baseline 대비 기존 17개 수정 + 새 구현/자산 17개 추가, 이 검증 보고서 1개 추가 = 소스/문서 35개입니다. 기존 root package.json/lock 변경은 이번 작업에서 수정하지 않았습니다. 아래 목록은 생성 dist를 제외합니다. + +```text +MOD packages/sw/README.md +MOD packages/sw/src/assets.d.ts +ADD packages/sw/src/assets/k-guide-mask-default.svg +ADD packages/sw/src/assets/k-guide-mask-fit.svg +ADD packages/sw/src/assets/k-guide-mask-pan.svg +ADD packages/sw/src/assets/k-guide.png +ADD packages/sw/src/assets/layer-detail-hover.svg +ADD packages/sw/src/assets/property-circle.svg +ADD packages/sw/src/assets/property-close-hover.svg +ADD packages/sw/src/assets/property-close.svg +ADD packages/sw/src/assets/property-expand.svg +ADD packages/sw/src/assets/property-footer.svg +ADD packages/sw/src/assets/property-title-single.svg +ADD packages/sw/src/assets/property-title.svg +ADD packages/sw/src/assets/property-tool-active.svg +ADD packages/sw/src/assets/property-tool-hover.svg +ADD packages/sw/src/assets/property-tool.svg +MOD packages/sw/src/components/sw-header/index.ts +MOD packages/sw/src/components/sw-header/SWHeader.tsx +MOD packages/sw/src/components/sw-header/types.ts +MOD packages/sw/src/components/sw-header/components/SWHeaderActions.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderInput.tsx +ADD packages/sw/src/components/sw-header/components/SWHeaderKGuide.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderMore.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderProperties.tsx +ADD packages/sw/src/components/sw-header/components/SWHeaderPropertyPanel.tsx +MOD packages/sw/src/theme/sw.css +MOD src/sw/sw-header.stories.tsx +MOD src/sw/sw-stories.css +MOD docs/sw/sw-header-design-spec.md +MOD docs/sw/sw-header-usage.md +ADD docs/sw/sw-header-additional-verification-2026-10-16.md +``` + +21. **Figma와 남은 차이.** 기존 SW의 Noto Sans KR(400/500/700)을 유지해 Dotum 원본과 글자 폭/획/베이스라인은 다릅니다. 폰트 준비 완료 후 선스타일 전체 폭 473.1875px, 첫 열 187.1875px로 Figma 468/182보다 +5.1875px입니다(기존 content 폭 정책 보존). 5개 상세 버튼과 4개 속성창의 외곽 크기는 기준과 일치합니다. 투명도 thumb는 호스트 min/max/value에 비례하므로 Figma 예시의 장식 위치와 다를 수 있으며 임의 수치 변환을 넣지 않았습니다. 내부 도구 SVG root의 28px export 반올림도 12번과 같습니다. 반복 복귀 전환은 Figma 원본에 없어 요청에 따라 추가한 구현값입니다. + +22. **NOT VERIFIED.** Guard 원본 status/staticStatus는 NOT VERIFIED, FAIL 0 / 미검증 issue 28입니다. 독립 SW CSS import 해석(ENTRY-002), Story 호스트 native button(REUSE-004), SW token 연결/동적 class/style 해석(TOKEN-001/002)이 남습니다. styleEvidence는 STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED이며 원본 JSON은 변경하지 않았습니다. 실제 브라우저 결과는 별도 증거입니다. HM UI와 독립된 SW 패키지여서 native label/select/range를 사용한 근거는 명세에 기록했습니다. 모든 픽셀/모든 애니메이션 프레임의 자동 이미지 diff, Figma 프로토타입 직접 재생 시각 동기 비교, 실제 Windows 한글 IME, screen reader·색 대비 전수 감사, 실제 CAD·파일/OS 창 동작·운영 배포는 미검증입니다. + +23. **종료 Git 상태.** Branch/HEAD는 시작과 같은 `feature/sw-package` / `9407c8567f57301659e591c03451cca1b828733c`. 상태 범주는 기존과 동일한 root 2개 M 및 SW 3개 폴더 Untracked입니다. git diff --check 통과. Stage/Commit/Push/PR/Merge/Publish/배포를 수행하지 않았습니다. 기존 문서/홈/창 제어/레이어 아이콘/필드 소스, 기존 자산 30개, 과거 검증 로그 5개, 창 이동 1400ms CSS 블록은 baseline과 바이트 단위로 동일합니다. 사용자 검토/승인을 기다립니다. + +## 증거 위치 + +QA root: `C:\Users\user\.codex\visualizations\2026\10\16\01a14374-df22-7311-831d-2d3a4c522f95\sw-header` + +- `baseline/`, `baseline-sha256.json`, `git-start.txt`: 시작 보존본. +- `figma/`: 직접 확인한 Figma 디자인 context. +- `verify.mjs` / `browser-results.json`: 통합 189개. +- `followup.mjs` / `followup-results.json`: 보완 45개 및 원본 보존. +- `palette-results.json`, `final-edge-results.json`, `line-font-ready.json`: 사용자 색상/More/폰트 준비 후 폭. +- `final-panel-none/all/circle/expanded.png`, `verified-k-guide.png`: 실제 React 렌더. +- `guard.json`: 원본 Guard 판정(덮어쓰지 않음). +- `sw-typecheck-final.log`, `sw-build-final.log`, `root-typecheck-final.log`, `root-build-final.log`, `storybook-build-final.log`: 최종 명령 로그. +- `changed-files.json`: baseline 대비 파일 목록(보고서 추가 전 수집). + +## 시간 기록 (Asia/Seoul) + +- Started At: 2026-10-16 15:45:05 KST +- Completed At: 2026-10-16 16:17:40 KST +- Actual Duration: 32분 35초 +- Estimated Duration: 약 90~130분 +- Variance: 예상보다 57분 25초~97분 25초 짧음 diff --git a/docs/sw/sw-header-composition-shape-verification-2026-10-16.md b/docs/sw/sw-header-composition-shape-verification-2026-10-16.md new file mode 100644 index 0000000..2cd7bf5 --- /dev/null +++ b/docs/sw/sw-header-composition-shape-verification-2026-10-16.md @@ -0,0 +1,55 @@ +# SW Header 3차 — 구성요소 표시·메뉴 순서·속성창 4상태·형상 Slot 검증 + +이번 요청의 구현·실행 범위 기록입니다. 이전 검증 문서는 수정하지 않았습니다. Commit/Push/PR/배포는 하지 않았습니다. + +## 1. 판정 + +**PASS(요청 범위의 실행 검증)** — PASS-A~J. 미검증 항목은 7절에 분리했습니다. + +## 2. Git + +- 시작·종료 동일: `D:\디자인시스템\HMDesign-SW`, `feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c`. +- 상태: `M package.json`, `M package-lock.json`(작업 전부터 존재, 이번에 수정하지 않음), `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`(SW 작업 전체가 아직 미커밋). + +## 3. 구현 요약 + +| 요구 | 구현 | +|---|---| +| 로고 외 개별 제거 | `SWHeader.hiddenControls` (`SWHeaderHideableControlId` = 기존 `SWHeaderControlId` + `home`/`windowMove`/`minimize`/`close`) | +| 로고 필수 | 로고는 대상 id가 아님. `home` 제거 시 `SWHeaderHome interactive={false}` 정적 로고 | +| 유사 메뉴 순서 | `SWHeader.menuOrder` (5개 메뉴끼리만 자리 교환, 지정 우선·누락은 기본 순서·중복/미지 id 무시) | +| More 연동 | 기존 Breakpoint·대표 슬롯 재사용. 객체 영역 요소 제거 시 스크립트가 More/대표 결정, 빈 More 미생성 | +| 속성창 4상태 | 기존 `SWHeaderPropertyPanel` + 데이터. 개별 Story 4개 + 비교 Story 1개 | +| 형상 Slot | `shapeContent` (undefined=Figma 원형, null/false=빈 영역, ReactNode, Render Prop) | + +재사용: 기존 `controls` 필터·More·대표 슬롯 로직, `SWHeaderCommitPresence`(제거 시 draft Callback 방지), SWHeaderInput, Property 타입·Fixture, 하위 공개 컴포넌트(선택적 show Props만 추가, 기본 true). + +## 4. 실행 검증 (Playwright Chromium + Storybook dev 6024, dist 재빌드 후) + +- **기본 디자인 보존:** 변경 전/후 `Default`(1920 Frame)·`Controls`(viewport) Story의 Header 하위 98개 요소 위치·크기·display·visibility·color·background를 1920/1800/1440/1180/1080/900/768/640/520/390px에서 비교 — **차이 0**. +- **구성 11종 × 7폭(1920~390) = 77건 PASS:** 기본 전체, 구성 A/B/C, 파일 목록·레이어·색상·스타일 그룹 제거, 여러 메뉴 제거, 순서 변경, 숨김+순서 변경. 각 건에서 Header 49px, 로고 32×17 표시, 제거 요소 DOM 부재, DOM 메뉴 순서 = 기대 순서, Header 밖 노출/가로 스크롤 없음, More 열었을 때 빈 목록 없음, 제거 요소가 More에 없음. + - 최초 실행 3건 FAIL(여러 메뉴 제거 @900/768/640): 최소화 제거로 짧아진 창 영역 밖으로 투명한 창 이동 Tooltip이 넘침 → `data-reduced` 창 영역 clip + 24px 이동 영역 Tooltip 좌측 표시로 수정 후 재실행 0 FAIL. +- **동작 25건 PASS:** 열린 Dropdown 숨김 시 제거, 재표시 값 유지·닫힘, 순서 반전 렌더링·Callback 없음·값 유지, 재정렬 후 Dropdown 열기·Escape Focus 복귀·Tab 순서, 중복/알 수 없는 id 처리, More→문자스타일 대표 슬롯, 대표 메뉴 제거 시 레이어 복귀, 레이어 제거 시 색상이 대표, More 제외/재표시 접근, 속성창 숨김 시 Popup 닫힘·Callback 없음, 정적 로고(클릭 Callback 없음)·홈 재표시 Callback, 로고만 구성(More·창 영역 없음), 콘솔 오류 0. + - 1건 기록: "색상 숨김 Callback 없음" 검사에서 `onColorMenuOpenChange(false)`가 기록됨. 체크박스 클릭이 Dropdown 바깥 클릭이 되어 **숨기기 전에** 기존 바깥 클릭 닫힘 계약이 실행된 것이며, 숨김 자체가 만든 Callback이 아님(코드상 제거는 내부 상태만 정리). +- **속성창 24건 PASS:** 개별 Story 실측 314×256 / 314×361 / 314×658 / 314×754(Figma와 일치), 내용 잘림 없음. Enter 확정·Escape 취소·잘못된 숫자 거부. 기본 형상 영역 208×208 @(39,26), 그룹 260px. 비교 Story 4개 동시 렌더·실측 표시, 1440/768/390px 줄바꿈·페이지 가로 스크롤 없음. 형상 Slot 기본/비움/외부 컴포넌트/교체/Render Prop context, 비움·교체 시 패널 높이·라벨 위치 동일, 형상 그룹 항목 추가·삭제 반영. Header 내 속성창 열기·닫기 및 `onPropertyPanelOpenChange`·`onPropertyPanelToggle` 보존. + - 자동 검사 1건(외부 지름·반지름 변경)은 측정이 재렌더 전에 실행된 타이밍 문제였고, Browser pane에서 재확인해 입력값 10.0000 / 5.0000 반영을 확인. +- **Header 내 속성창 경계:** 1920/1440/1080/900/768/640/390px에서 패널이 Viewport 안(좁은 폭은 기존 More 경유). +- **Story 회귀:** 기존 24개 + 신규 7개 = 31개 전부 렌더, page/console 오류 0. + +## 5. 빌드 (순차, exit 0) + +`npm run typecheck:sw` → `build:sw` → `typecheck`(root, workspaces) → `build`(root) → `build-storybook`(31개 SW Story 포함). 경고는 기존 Tailwind `bg-[var(...)]` CSS 최적화 경고와 chunk 크기 경고뿐이며 신규 경고 없음. + +## 6. Figma와 남은 차이 + +- 형상 라벨 x 위치 1~2px(원주 113 vs 111.5, 지름 100 vs 102, 반지름 154 vs 152.5, 면적 100 vs 98.5)와 지름 y 110 vs 108은 기존 구현값을 유지(이번 범위에서 변경 안 함). +- 로고만 구성에서 녹색 객체 영역 배경은 Header 표면으로 유지(구현 판단). +- 부분 제거 시 상세보기 블록·창 영역 폭은 Figma에 없는 구현값(auto). +- `26:11338` 색상 돋보기 Overlay는 요청대로 미구현(호스트 연동 대상). + +## 7. NOT VERIFIED + +- 실제 CAD 호스트 앱 연동, 실제 형상 렌더러 연동. +- 스크린리더 등 보조기기, Firefox/Safari, 터치 기기. +- 창 이동 Tooltip의 1080px 이상 Hover 애니메이션 중 축소된 창 영역에서의 잘림 정도(시각 확인 안 함). +- Figma 픽셀 오버레이 비교(크기·위치 수치 비교만 수행). diff --git a/docs/sw/sw-header-design-five-fixes-verification-2026-10-16.md b/docs/sw/sw-header-design-five-fixes-verification-2026-10-16.md new file mode 100644 index 0000000..75988ae --- /dev/null +++ b/docs/sw/sw-header-design-five-fixes-verification-2026-10-16.md @@ -0,0 +1,213 @@ +# SW Header 추가 디자인 5건 — 최종 검증 기록 (2026-10-16) + +## 1. 판정 + +**PASS — 이번 요청의 수정 및 아래 명시된 Chrome 실행 검증 범위.** 전체 HMDesign, CAD 호스트 연동, 모든 브라우저 또는 Figma 전체 픽셀 일치에 대한 승인은 아니다. Guard의 `NOT VERIFIED`는 별도로 유지한다. + +작업 범위는 기존 SW 패키지와 기존 Storybook 예제(BOTH)다. 신규 업무 화면·Navigation·Story는 추가하지 않았다. Commit / Push / PR / Merge / Publish / 배포는 하지 않았다. + +## 2. 시작 Branch / HEAD / Git Status + +- 경로: `D:\디자인시스템\HMDesign-SW` +- Branch: `feature/sw-package` +- HEAD: `9407c8567f57301659e591c03451cca1b828733c` +- origin: `https://gitea.hmac.kr/b25027/HMDesign.git` +- 기존 상태: `M package.json`, `M package-lock.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`. +- 이번 요청에 명시된 작업 경로·브랜치·Commit/Push 금지가 일반 main/공식 작업 폴더 지침보다 우선한다. 원격 동기화나 Git 이력 변경은 하지 않았다. + +## 3. 이전 작업 이어서 완료한 내용과 보존 근거 + +기존 구현을 유지하고 5건의 원인에 필요한 부분만 수정했다. 시작 상태의 `packages/sw`, `src/sw`, `docs/sw`, root manifest/lock을 별도 QA baseline에 복사하고 소스·문서 SHA-256을 기록했다. + +- 기존 `hiddenControls`, `menuOrder`, More 및 대표 슬롯, 속성Bar, 속성창 데이터·입력·Callback·형상 Slot 구현을 재사용했다. +- 기존 `docs/sw` 문서 10개(명세·사용법·검증 기록 포함), 기존 SVG/이미지, `package.json`, `package-lock.json`은 시작 baseline과 바이트가 같다. +- `SWHeader.tsx`, PropertyPanel/PropertyBar, ColorMenu, KGuide, WindowControls, 공개 export 등 나머지 소스는 수정하지 않았다. 공개 Props의 이름·타입·Callback 시그니처도 그대로다(`types.ts`는 설명 주석만 수정). +- 이전 Motion·Colorize·ByLayer/ByBlock·Text Stroke 정책은 소스 보존 근거다. 이번에 Motion 전체 프레임이나 CAD 동작을 새로 검증한 것으로 표현하지 않는다. +- 다른 디자인 시스템 패키지 소스, DWG/DXF Viewer, 기존 `_local` 파일은 수정하지 않았다. 빌드 산출물은 각 기존 빌드 명령으로 재생성했다. + +## 4. 추가 수정 5건 결과 + +- **A PASS:** 선스타일 메뉴와 Dropdown의 실제 접촉 구간 1px만 검정색으로 수정. +- **B PASS:** 치수스타일 고정 Story 두 개만 오른쪽 끝을 필드와 일치시킴. 동적 위치 계산은 수정하지 않음. +- **C PASS:** 속성창 헤더의 원본 대각선·그림자를 가리던 레이어 순서 복원, 도구 버튼 위치와 제목 자간 보정. 네 상태의 디자인 차이 유지. +- **D PASS:** Figma Hover `26:10799`를 재확인하고 치수 전용 Hover 규칙을 명시. 호스트 상세 Callback 없는 경우에도 Hover 가능하게 수정. +- **E PASS:** Callback 부재와 Disabled를 분리. 일반 레이어 상세 Hover 및 명시적 Disabled 예제를 구분하고 기존 Callback 유지. + +## 5. 선스타일 연결 영역 검정색 + +원인은 `.hm-sw-header__line-menu::before`의 노란 Gradient ring이 필드와 접하는 상단에도 그려지는 것이었다. 기존 ring은 유지하고 기존 `::after`를 접촉 구간에만 배치했다. 색은 실제 선언된 `--hm-sw-header-layer-menu-border-color`(`#000`)를 재사용한다. + +공통 Dropdown의 `panelStyle.left`에서 접촉 시작점을 구하고 필드의 실제 폭을 ResizeObserver로 추적한다. More에서 필드가 축소되어도 284px을 강제로 칠하지 않는다. 공통 Dropdown Position/Align은 수정하지 않았다. + +브라우저 결과: + +- Expanded 접촉 구간의 PNG RGB 실측: `0,0,0`. +- 상단의 접촉하지 않는 좌우 부분·좌우/하단 테두리: 기존 노란색 유지. +- 접촉 구간 아래 전체 Dropdown PNG 비교: 변경 픽셀 **0**. 선 Preview, 항목 정렬, Hover/Selected 행도 그대로다. +- Default → Hover → Mouse Leave의 필드 색상·ring 복귀와 Selected 행 강조를 확인했다. 제목/값의 기존 노란색을 유지한다. +- 1920/1440/1280/768/390px에서 검정 구간이 실제 필드 폭 밖으로 나가지 않음을 확인했다. + +## 6. 치수스타일 고정 Story 위치 + +대상은 `치수스타일 Expanded (Figma 26:11242)`와 `치수스타일 행·상세 버튼 Hover (고정)`뿐이다. + +원인은 1920px 고정 Header를 좁은 Story scroller에서 렌더링할 때 공통 경계 보정이 실제 화면 폭을 기준으로 목록을 왼쪽으로 옮기는 것이었다. 두 `MenuFrame`에만 `fixedDimension`을 지정하고 Story CSS로 `left:auto; right:0`을 적용했다. 고정 상태의 ring도 동일한 필드 기준으로 맞췄다. + +- 1440px 화면의 수정 전 두 예제: 필드 오른쪽 `1641px`, Dropdown 오른쪽 `1439px` — **202px 어긋남**. +- 수정 후 두 예제: 필드/Dropdown 오른쪽 모두 `1641px` — **차이 0px**. +- Figma 필드 폭 164px, 목록 폭 164px, 필드 하단에서 목록 시작이라는 상대 위치를 유지한다. +- 1920px specimen을 가로 스크롤한 뒤에도 필드와 목록 오른쪽 끝이 일치함을 확인했다. 화면 폭에 맞춰 고정 Header 자체를 축소하지 않았다. + +## 7. 동적 Dropdown 위치 불변 + +`useSWHeaderDropdown` 및 Text/Dimension의 공통 Position/Align을 수정하지 않았다. `선택 Callback`의 동적 치수 Dropdown 수정 전후 실측: + +- 1440px 화면: 필드 `x=1156, width=164`, Dropdown `x=1156, width=164`, 오른쪽 모두 `1320` — 전후 동일. +- 2000px 화면: 필드/Dropdown `x=1037, width=164`, 오른쪽 `1201` — 전후 동일. +- 고정 Story 전용 CSS는 동적 예제에 적용되지 않는다. + +## 8. 속성창 네 상태 헤더 Figma 비교 + +[Figma 속성창 원본](https://www.figma.com/design/rj6wpsfk24lOWvWiVRAANP/이지빔-SW?node-id=26-11822&m=dev)을 get_design_context(스크린샷 포함)와 읽기 전용 Plugin API로 직접 확인했다. 원본 디자인은 수정하지 않았다. + +- `26:11886` 선택 없음: **314×256px**, 녹색 Gradient Union, 추가 도구 아이콘 있음. +- `26:11823` 전체 11: **314×361px**, 녹색 Gradient Union, 추가 도구 아이콘 있음. +- `26:11932` 원 1개: **314×658px**, 갈색 Union(`#211D13`), 추가 도구 아이콘 없음. +- `26:12035` 모두 펼침: **314×754px**, 원 1개와 같은 갈색 헤더, 추가 도구 아이콘 없음. +- **닫기 버튼은 Figma 네 상태 모두 있다.** 단일 원 상태의 닫기 기능을 제거하지 않았다. + +원본 Union SVG를 새로 내려받아 기존 파일과 SHA-256을 비교했으며 동일했다. 디자인 차이는 잘못된 자산이 아니라 닫기 버튼 배경이 Union 오른쪽 대각선을 덮는 paint order였다. Union을 해당 배경 위에 배치하고 제목·도구 버튼은 그 위에 유지했다. Union은 `pointer-events:none`이어서 닫기 버튼을 차단하지 않는다. + +공통 실측(패널 좌상단 기준): + +- 헤더 내부 영역 `(1,1)`, **312×30px**. 외곽 금색 1px·radius 4px 및 본문 경계/그림자 보존. +- 제목 `x=8, y=8`, 14px, 기존 Noto Sans KR·700 유지, Figma 자간 **0.56px(0.04em)** 적용. +- 추가 도구 버튼 `(241,2)`, **29×27.125px**(Figma 27.129px의 브라우저 반올림). SVG root 29×28은 보존. +- 닫기 `(269,1)`, **44×30px**. 원본 Default/Hover 자산과 클릭 기능 유지. +- 본문/전체 높이 네 상태 모두 시작 baseline과 동일. + +네 패널 PNG를 직접 검토했다. 제목과 도구 클릭, 상단 X/키보드 Escape 닫기, Focus 복귀, Enter 확정·Escape 취소 및 Property Callback을 Chrome에서 확인했다. 형상 Slot·4개 상태 비교 Story도 유지했다. + +## 9. 치수스타일 상세 Hover + +Figma `26:10796` Default와 `26:10799` Hover를 직접 확인했다. `26:10802` Variant3는 혼합하지 않는다. + +- Default: **142×24px**, 배경 `rgba(197,177,158,.15)`, radius 24px. +- Hover: 배경 `rgba(197,177,158,.25)`, radius 25px, **기본 아이콘·문자 opacity 1**. +- Mouse Leave: Default 배경·radius 복귀. +- Callback이 있는 동적 예제는 시작 시점에도 위 Hover 값과 일치했다. 이를 다른 상세 버튼/Variant3와 같게 바꾸지 않았다. 치수 전용 규칙을 명시하고, Callback 없는 Dynamic Data에서 자동 disabled가 되던 경로를 제거했다. +- Callback 없는 경우 Hover는 동작하지만 CAD 상세 기능을 만들어 실행하지 않는다. Callback이 있는 클릭은 기존 `onDimensionStyleDetail` **1회** 후 닫힘을 확인했다. +- 색상/선/문자 상세 버튼의 기존 규칙은 수정하지 않았다. + +## 10. 레이어 상세 Hover 및 Disabled 원인 + +실제 원인은 `disabled={!onDetail}`였다. Hover CSS는 존재했지만 `:hover:not(:disabled)`에서 제외됐다. pointer-events나 상위 컨테이너가 원인은 아니었다. + +- 일반 상태는 Callback 없어도 활성 Hover. 기본 크기 **113×24px** 유지(3배 Story 실측 339×72). +- Default .15/radius 24 → Hover .25/radius 25 → Mouse Leave Default 복귀. +- Hover 아이콘·글자 35%는 Figma `26:10771`대로 유지. +- 기존 메뉴의 명시적 `disabled` 계약은 유지한다. Story의 Disabled specimen은 이제 호스트가 실제 `fieldset disabled`를 명시한다. Callback 부재를 Disabled 예시로 사용하지 않는다. +- Callback 연결 예제에서 `onLayerDetail` 1회 후 목록 닫힘 확인. 연결되지 않은 CAD 기능·상세창은 추가하지 않았다. + +## 11. 기본 디자인 10개 폭 비교 + +수정 전/후 Default(1920px Frame)와 Controls(viewport)의 Header 및 하위 DOM 총 **99개(루트 1 + 하위 98)**를 비교했다. + +- 폭: **1920,1800,1440,1180,1080,900,768,640,520,390px**. +- 2개 Story × 10폭 = **20건**, 위치·크기·display·visibility·color·background 차이 **0**. +- 후속 좁은 화면 보정은 열린 선스타일 Dropdown의 접촉선 폭만 변경한다. 닫힌 기본 Header에는 적용되지 않으며 해당 5개 폭을 별도 재검증했다. + +## 12. 메뉴 구성 및 기능 검증 + +**11개 구성 × 7폭(1920/1440/1080/900/768/640/390) = 77건 PASS.** 기본 전체, A/B/C, 파일·레이어·색상·스타일 그룹·여러 메뉴 제거, 순서 변경, 숨김+순서 변경. + +각 구성의 로고 32×17 유지, Header 49px, DOM 메뉴 순서, 가로 overflow 없음, More 목록이 비지 않음, 숨긴 메뉴가 More에 남지 않음을 확인했다. + +추가 실행: More→문자스타일 대표 슬롯, 대표 제거→레이어 복귀, 메뉴 숨김/재표시, Dropdown 바깥 클릭, 속성창 열기·닫기/Focus 복귀, 상세 Callback, 형상 Slot 기본/비움/외부 컴포넌트/교체/Render Prop, 형상 속성 추가·삭제/외부 값 반영. 4개 패널 비교는 1440/1280/768/390px에서 가로 페이지 overflow 없이 표시됐다. + +Outside Click과 React 타이밍 구분: + +- Checkbox를 실제 포인터로 클릭하면 기존 Dropdown의 바깥 pointerdown이 먼저 닫힘 Callback을 발생시킨다. 별도로 checkbox의 DOM click만 호출해 숨길 때는 합성 닫힘 Callback이 없음을 확인했다. 실제 기능 오류로 분류하지 않는다. +- 형상 지름·반지름 외부 변경은 React 렌더링 완료 조건을 기다린 뒤 `10.0000 / 5.0000`을 확인했다. 재렌더 이전 즉시 읽기를 성공/실패 근거로 쓰지 않았다. +- 테스트의 잘못된 Story ID와 다른 예제 로그 선택을 수정했다. 해당 실패는 제품 코드 오류가 아니며 수정된 검사와 오류를 분리한 재실행 결과를 보존한다. + +## 13. Storybook 전체 렌더링 + +기존 **31개 Story** 유지. 실제 Chrome에서 31/31 렌더링 및 보이는 이미지 로딩 확인. 잘못된 Story ID에서 발생한 오류를 분리하기 위한 독립 재실행에서 **page error 0 / console error 0 / HTTP error 0**. + +Story를 새로 추가하거나 기존 대표 Story를 교체하지 않았다. + +## 14. SW / Root Typecheck 및 Build + +최종 소스 기준 다음 명령 모두 **exit 0**: + +- `npm.cmd run typecheck:sw` +- `npm.cmd run build:sw` +- `npm.cmd run typecheck` (Root·workspaces) +- `npm.cmd run build` +- `npm.cmd run build-storybook` + +실제 소스가 다시 변경된 연결선 보정 이후 영향을 받는 검증을 재실행했다. 조건이 바뀌지 않은 77개 구성·기본 Geometry 검사는 반복하지 않았다. CSS 최적화의 기존 Tailwind arbitrary value 경고와 chunk 크기 경고는 남아 있다. 빌드 실패는 없다. + +## 15. 이번 변경 파일 + +시작 baseline 대비 수정 **7개**, 새 보고서 **1개**: + +1. `packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx` — Callback 없는 레이어 상세 자동 Disabled 제거. +2. `packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx` — 접촉선 시작점·실제 필드 폭 전달/추적. +3. `packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx` — 치수 상세 Callback 없는 Hover 허용. +4. `packages/sw/src/components/sw-header/types.ts` — 위 Callback의 설명 주석만 정정. +5. `packages/sw/src/theme/sw.css` — 접촉선, 치수 전용 Hover, 속성창 paint order/도구 위치/제목 자간. +6. `src/sw/sw-header.stories.tsx` — 고정 치수 두 예제 범위 지정, 레이어의 명시적 Disabled 예제. +7. `src/sw/sw-stories.css` — 위 고정 Story와 Disabled specimen 컨테이너 스타일. +8. 이 검증 문서. + +미커밋 SW 폴더 전체를 이번에 새로 작성한 것으로 집계하지 않는다. root manifest/lock의 기존 변경도 이번 변경 파일에 포함하지 않는다. 시작 baseline 대비 실제 diff를 읽고 수정 범위를 검토했다. + +## 16. 남은 디자인 차이 + +- 기존 정책의 **Noto Sans KR**(Figma Dotum 대신)·400/500/700을 유지했다. 제목을 포함한 글리프 모양·문자 폭은 Figma와 완전 동일하지 않다. +- 기존 선스타일 열의 Noto 내용 폭, 형상 라벨 위치 등의 과거 문서상 차이는 이번 범위 밖으로 유지한다. 본문·형상 위치를 임의 변경하지 않았다. +- Figma 픽셀 전체 일치로 주장하지 않는다. 이번에 PNG의 변경 픽셀 0을 확인한 범위는 선스타일 접촉선 이외 Dropdown 보존 비교다. + +## 17. NOT VERIFIED 및 Guard + +Guard는 Storybook PARTIAL로 변경 파일을 검사하고, 마지막 연결선 소스 변경 후 해당 두 파일만 PARTIAL 재검사했다. **FAIL 0**, 원본 `status/staticStatus/runtimeStatus`는 **NOT VERIFIED**다. 이를 브라우저 PASS로 덮어쓰지 않았다. + +원인: Guard가 독립 `@hm-design/sw/styles.css` 및 SW 패키지 구현 graph를 HM UI 소비 화면과 같이 해석하지 못하는 ENTRY/SCOPE 항목, Storybook 예제의 native controls·동적 class/style·token 근거 항목. SW build와 실제 컴포넌트 렌더링은 별도 실행 증거다. + +CSS 원본 근거도 그대로 유지: **STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED**. 내부 SW CSS를 모두 검사해 승인한 결과가 아니며 `checks=[]`인 정적 scope 한계가 있다. 이번 수정의 색·크기·상태는 위 개별 Figma/브라우저 검증으로만 판단한다. + +이번 미검증: 실제 CAD 호스트/형상 렌더러, Firefox/Safari, 터치, 스크린리더, 전체 화면 픽셀 overlay, 기존 K/창 이동 Motion 전체 프레임 재검사. 과거 검증 기록은 보존한다. + +## 18. 종료 Branch / HEAD / Git Status + +- Branch: `feature/sw-package` +- HEAD: `9407c8567f57301659e591c03451cca1b828733c` (시작과 동일). +- 상태: `M package.json`, `M package-lock.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`. +- Staged Diff 없음. 기존 파일 삭제/초기화 없음. Commit / Push / PR / Merge / Publish / 배포 없음. + +## 실행 근거 및 재현 + +QA Root: `C:\Users\user\.codex\visualizations\2026\10\16\01a143c9-30e2-7c42-aa06-c658d456a984\sw-header`. + +- `baseline/`, `baseline-sha256.json`, `git-start.txt`: 복구·변경 전 근거. +- `before/capture.json`, `after/capture.json`: 10폭 Geometry 및 네 패널 실측. +- `before/probe.json`, `after/probe.json`: 고정/동적 치수 위치와 Hover. +- `verification.json`: 최초 통합 검사(테스트 수정 전 실패 기록 포함). +- `verification-followup.json`, `verification-A.json`, `verification-E.json`: 연결선·레이어의 영향 범위 재검사. +- `verification-all SW.json`: 실제 31개 Story의 독립 오류 검사. +- `edges-results.json`: 닫힌 선스타일 상태, 5개 폭 접촉선, 고정 Story 스크롤 검증(8 PASS / 0 FAIL). +- `build-results-final.json`, Typecheck/Build `.log`: 최종 5개 명령 exit 0. +- `guard.json`, `guard-final-affected.json`: 덮어쓰지 않은 원본 NOT VERIFIED. +- `panel-{none,all,circle,expanded}-final.png`, `line-seam-final.png`, `dimension-detail-hover.png`, `layer-detail-hover.png`, `fixed-dimension-scrolled.png`: Chrome 캡처. + +재현 스크립트 `capture.mjs`, `probe.mjs`, `verify.mjs`, `edges.mjs`, `builds.mjs`는 QA Root에 있다. 이번 작업에서는 로컬 Storybook `127.0.0.1:6043`과 기존 Playwright/Chrome을 사용했다. 재현 시 같은 소스·dist 및 서버 포트를 확인한다. + +## 시간 기록 (Asia/Seoul) + +- Started At: 2026-10-16 17:17:10 KST +- Completed At: 2026-10-16 17:40:21 KST +- Actual Duration: 23분 11초 +- Estimated Duration: 약 30~50분 (분석 5~10 / 수정 15~25 / 통합 검증 10~15분) +- Variance: 최초 예상 범위보다 6분 49초~26분 49초 짧음 diff --git a/docs/sw/sw-header-design-spec.md b/docs/sw/sw-header-design-spec.md new file mode 100644 index 0000000..3970b6e --- /dev/null +++ b/docs/sw/sw-header-design-spec.md @@ -0,0 +1,708 @@ +# SW Header 디자인 명세 + +> **현재 기준 색인(2026-10-19 1차 정리):** 아래 날짜별 안내 중 최신 항목이 같은 주제의 이전 본문보다 우선합니다. 주제별 최신 근거는 속성 필드 13개 [§18](#18-속성창-입력선택-필드-2026-10-19), 게이지·속성Bar·도구 아이콘 [후속 4건 기록](./sw-header-followup-four-design-fixes-verification-2026-10-19.md), Firefox 게이지·닫기 버튼 [기록](./sw-header-firefox-range-close-verification-2026-10-19.md), 상세 버튼 공통화 [기록](./sw-header-detail-buttons-verification-2026-10-16.md), 구성·메뉴 순서·형상 Slot [3차 기준](#3차-기준--구성요소-표시메뉴-순서속성창-상태형상-slot-2026-10-16)입니다. Text Stroke는 검정 외곽선만 적용하며 자기 색 Stroke는 없습니다([§6.1](#61-text-stroke-2026-10-16)). 문서·Storybook 전체 현황과 2차 검토 목록은 [1차 정리 보고](./sw-first-pass-cleanup-review-2026-10-19.md)를 봅니다. + +> **후속 디자인 수정 4건(2026-10-19):** 속성Bar는 Figma 1222px 고정 폭 대신 마지막 필드에서 끝나는 콘텐츠 폭(공간 부족 시 내부 스크롤)을 사용합니다. 속성창 도구 아이콘 SVG의 Figma 캔버스 배경을 제거했고, 레이어·색상·문자·치수스타일 필드는 자기 Dropdown이 열린 동안 Hover를 적용하지 않으며, 게이지는 빨강 채움 + 베이지 Track입니다. 아래 26:10492의 "최대 1222" 설명보다 우선합니다. [검증 기록](./sw-header-followup-four-design-fixes-verification-2026-10-19.md). + +> **상세 버튼 공통화 기준(2026-10-16, 이번 요청):** 상세 5개는 기존 `SWHeaderMenuDetail`을 공유하며 **현재 문자스타일 상세**를 우선합니다. Default는 배경 `rgba(197,177,158,.15)`·radius 24·글자 35%·아이콘 SVG 20%, Hover는 배경 .25·radius 25·글자 35%·아이콘 SVG 35%입니다. Disabled는 Default 외형과 클릭 차단을 사용합니다. Callback이 없어도 Hover되며 클릭은 무동작입니다. 치수 상세의 글자 100% Hover와 Callback 부재에 따른 비활성 설명은 이 기준으로 대체합니다. 기존 폭 113/99/128/142/142px·높이 24px, 제거된 Text Stroke 선언을 유지합니다. 과거 검증 문서는 당시 기록으로 보존합니다. [이번 검증 기록](./sw-header-detail-buttons-verification-2026-10-16.md). + +> **3차 기준(2026-10-16):** 문서 끝 [3차 기준](#3차-기준--구성요소-표시메뉴-순서속성창-상태형상-slot-2026-10-16)이 구성요소 표시·메뉴 순서·속성창 상태·형상 Slot에 우선합니다. [3차 검증 기록](./sw-header-composition-shape-verification-2026-10-16.md). + +> **후속 5개 요구사항(2026-10-16):** 이 문서 끝의 후속 기준이 속성Bar·메뉴 구성·Colorize·Text Stroke 비교 정리에 우선합니다. 이전 `solid-stroke-width` 보존 설명은 역사적 기록이며 최신 구현에는 적용하지 않습니다. [새 검증 기록](./sw-header-followup-five-verification-2026-10-16.md). + +> **현재 추가 기준:** 이 문서의 과거 Hover 없음·선택 글자만 노랑·일반 자기 색 Stroke 내용보다 아래 [추가 수정 기준](#추가-수정-기준--속성창k-가이드-2026-10-16)이 우선합니다. 과거 검증 기록은 당시 결과로 보존합니다. + +> 상태: `@hm-design/sw` 0.1.0 구현 기준(2026-10-16). 코드: `packages/sw/src/components/sw-header/`, CSS: `packages/sw/src/theme/sw.css`, Story: `SW / Header`. +> 값 표기: **확인** = Figma MCP(`get_metadata`·`get_design_context`) 또는 사용자 확정 CSS에서 직접 확인, **구현값** = Figma에 없어 구현에서 정한 값, **추정** = 확인 근거 없음. + +## 1. 개요 + +SW Header는 여러 설치형 SW에서 공통으로 쓰는 49px 헤더입니다(Figma 기준 화면은 이지빔 SW). 로고 / 파일명 / 객체 수정 영역 / 창 영역의 4개 면으로 구성됩니다. `@hm-design/ui`와 독립된 `@hm-design/sw` 패키지에서 관리하며, SW 전용 토큰(`--hm-sw-header-*`)만 사용합니다. + +우선순위: ① 사용자 확정 CSS·선택·반응형 정책 → ② Figma 원본 → ③ 기존 DWG/DXF 뷰어 구현(`D:\디자인시스템\테스트\dwg-dxf-viewer-hm`) → ④ HMDesign 공통 규칙(패키지·타입·Storybook·접근성). + +## 2. Figma 원본 + +| 항목 | 값 | +|---|---| +| File | `rj6wpsfk24lOWvWiVRAANP` (이지빔 SW) | +| Node | `26:8944` `header_green` (instance) | +| 크기 | 1920 × 49 (내부 면 높이 48) — 확인 | +| 접근 | Figma MCP로 metadata·design context·screenshot 확인(2026-10-16) | + +## 3. 레이어 구성 + +표시 레이어(확인). 같은 내용의 `header` frame이 두 번 겹쳐 있으며(`26:10337`, `26:10372`), 두 번째 frame에만 `Rectangle 6671`(x0, 310 × 48, 파일명 면과 같은 gradient)이 홈 뒤에 깔립니다. 구현은 한 번만 렌더링하고 Rectangle 6671은 홈 영역 0–65px의 배경으로 재현합니다. + +| Figma 레이어 | x / y | W × H | 구현 컴포넌트 | +|---|---|---|---| +| `header/btn_home` | 0 / 0 | 80 × 48 | `SWHeaderHome` | +| `header/document_tit` | 65 / 0 | 310 × 48 | `SWHeaderDocumentTitle` (문서 Dropdown 포함, §5.1) | +| `Rectangle 7428` (객체 수정 면) | 377 / 0 | 1301 × 48 | `.hm-sw-header__object-area` | +| `Frame 427319899` 그리기모드 | 377 / 5 | 90 × 38 | `.hm-sw-header__mode` | +| `header/menu/레이어` | 467 / 5 | 234 × 38 | `SWHeaderLayerControl` (`layers` 전달 시 `SWHeaderLayerMenu`, 레이어 Dropdown §5.2) | +| `header/menu/색상` | 705 / 5 | 192 × 38 | `SWHeaderColorControl` | +| `header/menu/선스타일` | 901 / 5 | 284 × 38 | `SWHeaderLineStyle` | +| `header/menu/문자스타일` | 1189 / 5 | 164 × 38 | `SWHeaderTextStyle` | +| `header/menu/치수스타일` | 1357 / 5 | 164 × 38 | `SWHeaderDimensionStyle` | +| `Frame 427319953` 상세보기 | 1521 / 6 | 157 × 38 | `SWHeaderProperties` | +| `Rectangle 6669` 창 영역 | 1680 / 0 | 240 × 48 | `.hm-sw-header__window` | +| `Group 2913` 인쇄·가이드 pill | 1683 / 3 | 85 × 42 | `SWHeaderActions` | +| `창이동 motion` | 1768 / 0 | 88 × 48 | `SWHeaderWindowControls` | +| `header/btn_최소최대화`, `btn_종료` | 1856 / 0 | 32 × 48 각 | `SWHeaderWindowControls` | + +숨김 레이어(확인, 구현 제외): `Ellipse`, `Component 761`, `Component 762`, `창이동`(65 × 48), `Component 724/mouse`. + +Figma `get_design_context`에는 드롭다운 행(`HeaderDropdownBrownRow`), `ByLayer/ByBlock`, `Colorize`, 상세 pill(`레이어 상세` 등), GIF 가이드 카드도 포함되어 있으나 헤더에 표시되지 않는 하위 메뉴·팝업 구성요소입니다. 최초 범위(헤더 1개)에서는 구현하지 않았습니다. 이 중 레이어 Dropdown(`HeaderDropdownBrownRow`, `레이어 상세` pill)은 2026-10-16 추가 요청으로 구현했습니다(§5.2). 색상·선스타일·문자스타일·치수스타일 Dropdown과 ByLayer/ByBlock·Colorize·상세 pill·Input은 같은 날 후속 요청으로 구현했습니다(§5.3–§5.5). 각 `… 상세` 팝업의 내부 화면은 Figma 전달 전이라 범위 밖입니다. + +## 4. 전체 레이아웃 + +`flex` 한 줄, 면 사이 2px. 1920px에서 Figma 좌표와 동일합니다(브라우저 측정, §15). + +``` +[홈 80(-17 겹침)] [파일명 310] 2 [객체 수정 1301: 그리기모드 90 | 레이어 234 · 색상 192 · 선 284 · 문자 164 · 치수 164 (gap 4) | 상세보기 157] 2 [창 240: pill 85 · 창 이동 88 · 최소화 32 · 종료 32] +``` + +- 홈은 80px 박스(overflow clip)이고 오른쪽 15px이 파일명 면 위에 겹칩니다. 파일명 글자는 x=70에서 시작하며 홈 박스의 투명 부분으로 보입니다. +- 객체 수정 면 안의 그리기모드 셀과 상세보기 블록은 Figma처럼 면의 바깥 테두리 위치(377 / 1678)에 맞춥니다(1px 음수 margin). +- 내부 필드 높이 38, 위 5px(테두리 1 + padding 4). + +## 5. 컴포넌트별 내부 + +| 영역 | 구성(확인) | +|---|---| +| 홈 | 배경 SVG 92 × 72(위치 −8, −12, 그림자 포함 영역) + 로고 영역 32 × 17(위치 12, 16, Figma `bi_egbim` frame). 로고 이미지는 §9.1 | +| 파일명 | 글자 왼쪽 5px, 화살표 7 × 4(`#47AF91`, 오른쪽 12px), 글자–화살표 15px. 클릭 시 문서 Dropdown(§5.1) | +| 레이어 | 아이콘 3개(20 × 20, gap 0) · gap 8 · 라벨/값 | +| 색상 | 칩 60 × 20(검정 바탕, 안쪽 58 × 18 흰 1px 테두리, 기본 `#FFE500`) · gap 12 · 라벨/값 | +| 선스타일 | 선 미리보기 10 × 4 × 5(gap 2, 흰 바탕·검정 1px) · gap 12 · 선스타일 / 가중치(38) / 스케일(38), gap 12, 가운데 정렬 | +| 문자스타일 | 글꼴명 16px 700 · gap 12 · 라벨/값 | +| 치수스타일 | 치수 아이콘 60 × 15 · gap 12 · 라벨/값 | +| 상세보기 | 위 19px: `상세보기` 12px / 아래 19px: `속성Bar` · 구분선 1 × 12(검정, `1px 0 2px rgba(255,255,255,.25)`) · `속성창` | +| 인쇄·가이드 | pill 85 × 42(`rgba(0,0,0,.8)`, 1px `#092920`, radius 4, inset `0 2px 2px rgba(0,0,0,.25)`), 버튼 40 × 38 두 개 gap 1. 인쇄 버튼은 파일명 gradient·1px `#08251C`·radius 2 | +| 창 이동 | 2px 줄무늬 4px 간격(`#1C6A51` 32%, x3–85, y6, 높이 37) + 아이콘 32 × 30(위 13) | +| 최소화 | 10 × 2 막대 `#ADB0AF` 가운데 | +| 종료 | SVG 32 × 48 | + +### 5.1 문서 Dropdown (Figma `header/document_tit` 26:10662) + +Figma의 `hover` Variant는 목록이 펼쳐진 모습을 정의합니다. 구현은 **클릭으로 열고 닫으며** 마우스 Hover만으로는 열지 않습니다. 파일명 Hover는 글자만 `#FFC600`으로 바꾸며 노란 테두리는 표시하지 않습니다(§11.1). + +| 항목 | Figma(확인) | 구현 | +|---|---|---| +| 열린 파일명 | 글자 `#FFC600`, 화살표 노란색 위쪽(`Polygon 353`) | 같음. 화살표는 CSS 삼각형을 180° 회전 | +| 위치 | 파일명(310 × 48) 바로 아래, `right: 0` | 헤더 아래로 겹치는 Overlay(헤더 49px 유지). 1920에서 바깥 박스 x 63–375(Figma와 같음). 좁은 폭에서도 화면 안에 있도록 왼쪽 기준 정렬 + `max-width: 100cqw − 71px` | +| 크기 | 항목 310 + 테두리 1px × 2, 예시 4개 = 목록 128 + 하단 40 | 바깥 312 × 170(4개). 목록 최대 320px 후 내부 세로 스크롤 | +| 배경 · 테두리 | `#103127`, 1px `#041611`, 하단 radius 4, `0 2px 4px rgba(0,0,0,.25)` | 같음 | +| 안쪽 그림자 | 목록·하단 영역 각각 `inset 0 4px 8px rgba(0,0,0,.4)` | 같음 | +| 문서 항목 | 310 × 32, padding 8, gap 8, 아이콘 29 × 12(`icon_dualmonitor`), 14px `#F0F7F5` | 같음(글자 700, 말줄임). Hover: Figma `header/document_tit/list`(26:10680) 그대로 검정 40% 배경 오버레이(`#103127` 위 합성), 글자·아이콘 변화 없음 | +| 하단 | 높이 40, padding 8, 위 구분선 `rgba(194,217,210,.2)` | 같음 | +| New / Open | `+ New` 54 × 24, `Open` 47 × 24, 배경 `rgba(182,208,201,.2)`, radius 2, padding 5 / 6, 14px 검정 70%, 양 끝 정렬 | 같은 값. Noto Sans KR로 55.4 / 50px(글자를 자르지 않음). Hover: Figma 26:10762 / 26:10805 그대로 배경 `rgba(182,208,201,.3)`, 글자 검정 100%. 크기·padding·radius 변화 없음 | + +- 데이터 없음: `documents=[]`이면 목록 없이 하단만 표시합니다. `documents`를 전달하지 않으면 Dropdown 없이 기존 파일명 버튼입니다(하위 호환). +- 패키지에는 문서명·파일 형식을 넣지 않습니다(Figma 예시 `Drawing1.grm`은 Storybook 테스트 데이터로도 쓰지 않음). 아이콘은 기본값으로 Figma `icon_dualmonitor`를 쓰고 항목별(`icon`)·전체(`documentIcon`)로 바꿀 수 있습니다. +- 동작: 클릭/Enter/Space로 열고 닫기, ↓로 열면서 첫 항목 Focus, ↓↑ 이동, Escape·바깥 클릭으로 닫기(Focus는 파일명으로 복귀), Tab으로 목록 밖으로 나가면 닫기(Focus 갇힘 없음). 파일명 버튼은 `aria-expanded` / `aria-controls`로 목록(`role="group"`, `aria-label="문서 목록"`)과 연결됩니다. +#### 5.1.1 현재 문서 · 문서 닫기 (사용자 추가 요구, Figma에 없음) + +2026-10-16 사용자 최종 지시. 위 Figma 확인 항목과 구분해 기록합니다. + +| 항목 | 정책 | +|---|---| +| 목록 순서 | `documents` 배열 순서를 그대로 표시합니다. 현재 문서를 앞으로 옮기지 않으며, 다른 문서를 선택해도 순서·위치가 바뀌지 않습니다. | +| 현재 문서(`activeDocumentId`) | 문서명 글자만 `#FFC600`. 나머지 문서는 `#F0F7F5`. 테두리·배경·아이콘 변화 없음(다색 아이콘은 레이어 상태 아이콘과 같은 이유로 유지). 버튼에 `aria-current="true"` | +| Hover와 선택 | Hover는 배경(검정 40%, Figma 26:10680), 선택은 글자색이라 동시에 적용돼도 구분됩니다. | +| X(문서 닫기) | `onDocumentClose`를 주면 **모든 행** 오른쪽 끝(24 × 24, 오른쪽 4px)에 X가 있습니다. 평상시 숨김(opacity 0, 자리는 항상 확보)이며, **마우스를 올린 행** 또는 **키보드 Focus가 있는 행**에만 표시됩니다(선택 여부와 무관). Dropdown이 아니라 그 문서를 닫는 버튼이며 이름은 `문서 닫기`, 툴팁은 `<문서명> 닫기` | +| X 모양 | 8 × 8 선 아이콘, `rgba(240,247,245,.7)`. X 자체 Hover: 배경 `rgba(182,208,201,.2)`, 아이콘 `#F0F7F5`(구현값). 노란 테두리 없음 | +| 배치 | 행 높이 32px 유지. 문서명은 X 자리 앞에서 말줄임(1920에서 문서명 오른쪽 끝 338 < X 시작 346). X 표시·숨김으로 아이콘·문서명이 움직이지 않음 | +| 동작 | X는 선택 버튼과 형제 버튼이라 `onDocumentSelect`가 함께 호출되지 않습니다. X 후 Dropdown은 열린 채로 두고 Focus는 목록 첫 항목으로 옮깁니다(행이 사라져도 Focus 유실 없음). 실제 문서 닫기·목록 갱신·다음 선택 문서 결정은 호스트가 합니다. | + +- 접근성 확인 필요: Figma New / Open 글자색(검정 70%)은 어두운 배경에서 대비가 낮습니다. Figma대로 구현했으며 변경 여부는 디자인 결정 사항입니다. + +### 5.2 레이어 Dropdown (Figma `header/menu/레이어` 26:10940, 2026-10-16) + +Figma 기준 5개 Node: ① `header/menu/레이어` 26:10940(default 26:10941 / hover 26:10952 / Variant3 = 펼침 26:10963) ② `icon_전구` 26:10810 ③ `icon_눈꽃` 26:10855 ④ `icon_자물쇠` 26:10912(각 20 × 20, Variant 4개) ⑤ `header/dropdown/brown/row` 26:10687(Default 26:10688 / Hover 26:10695). 모두 Figma MCP `get_design_context`·screenshot으로 확인했습니다. + +`layers`를 전달하면 레이어 필드가 Dropdown 버튼이 됩니다(`SWHeaderLayerMenu`). 전달하지 않으면 기존 필드 버튼(`onLayerOpen`)과 DOM·외형이 같습니다(하위 호환). 필드 Hover는 기존 노란 Gradient Border + 글자 `#FFC600`이며 **클릭으로만 열립니다**. + +| 항목 | Figma(확인) | 구현 | +|---|---|---| +| 필드 | 234 × 38, radius 3, 기존 gradient·그림자, 아이콘 3개 + `레이어` 라벨/값 | 기존 필드 그대로. 1920에서 x 467(브라우저 466.7) | +| 펼친 필드(Variant3) | 테두리 `#081813`, 위쪽만 radius 3, 라벨·값 `#FFC600` | 같음(`data-expanded`, `aria-expanded`) | +| 펼침 외곽선 | `#A67D03`(=노란 테두리 토큰) 1px, 236 × 320, 위치 −1 / −1, radius 4 | 기존 `--hm-sw-header-hover-border-gradient`로 필드+목록 바깥 1px 링. 크기 변화 없음 | +| 목록 위치 | 필드 바로 아래, 같은 왼쪽 | 필드 아래 Overlay(`top: 100%`), 헤더 49px·다른 필드 위치 불변 | +| 목록 | 234 × 280(행 30 × 8 + 하단 40), `#27241D`, 검정 1px(inside), 하단 radius 3, `0 4px 8px rgba(16,48,38,.25)` | 같음. 테두리는 overlay라 행이 234 × 30 그대로 | +| 행 | 234 × 30, padding 12, 아이콘 20 × 3(gap 0) · 8 · 견본 16 · 8 · 이름(14, `#F6F4F2`) | 같음(이름 Noto Sans KR 14 / 700 / 0.04em, 말줄임). 1920 측정: 아이콘 x+12, 견본 x+80, 이름 x+104(+1 padding) | +| 색상 견본 | 16 × 16 검정 radius 2, 안쪽 1px 위치 흰색 + 1px `#C9C9C9` radius 1 | 같음. 안쪽 색은 `layer.color`(기본 `#FFFFFF`) | +| 행 Hover | 배경 `#62533D`, 글자 `#FF5C00` | 같음. 이 목록 전용(다른 컨트롤의 노란 Hover와 별개) | +| 아이콘 Hover | 전구: 검정 25% 배경 radius 2 / 눈꽃·자물쇠: Hover SVG(같은 아이콘 + 검정 25% 타일) | 같음. 눈꽃·자물쇠는 Figma Hover SVG를 그대로 겹쳐 표시 | +| Off → Off Hover | Smart Animate, ease-out 300ms | `transition: 300ms ease-out`(Off만). On Hover는 즉시. Reduced Motion 시 전환 없음 | +| 하단 | 높이 40, padding 8 / 12, 1px `rgba(197,177,158,.15)`(inside), 오른쪽 정렬 | 같음 | +| 레이어 상세 | pill radius 24, padding 5 / 10, gap 4, 배경 `rgba(197,177,158,.15)`, 아이콘 14(`ico_layer`), 글자 14 흰색 opacity .35 | 같음. 글자 폭 Noto 69.3px(Figma Dotum 75px), 버튼 107.3 × 24 | +| 목록 높이 상한 | 예시 8행 | **구현값** 240px(8행). 넘치면 목록만 세로 스크롤, 하단 고정 | + +#### 5.2.1 아이콘 On/Off와 데이터 의미 + +| 아이콘 | 컬러(Default/Variant2) | 회색(Variant3/Variant4) | 데이터 | +|---|---|---|---| +| 전구 | `visible !== false` | `visible === false` | `onLayerVisibilityChange(layer, nextVisible)` | +| 눈꽃 | `frozen !== true` | `frozen === true` | `onLayerFreezeChange(layer, nextFrozen)` | +| 자물쇠 | `locked !== true` | `locked === true` | `onLayerLockChange(layer, nextLocked)` | + +- **확정 매핑(2026-10-16 사용자 확정)**: 전구 컬러 `visible=true` / 회색 `visible=false`, 눈꽃 컬러 `frozen=false`(동결 해제) / 회색 `frozen=true`(동결), 자물쇠 컬러 `locked=false`(잠금 해제) / 회색 `locked=true`(잠금). 클릭하면 해당 boolean의 반전값을 Callback으로 전달합니다(전구 `!visible`, 눈꽃 `!frozen`, 자물쇠 `!locked`). Figma 원본 SVG와 Default/Hover 디자인은 그대로입니다. 구현 위치는 `layerIconOn()`(`SWHeaderLayerIcons.tsx`) 한 곳입니다. +- `aria-pressed`는 아이콘 색이 아닌 데이터 의미(표시됨 / 동결됨 / 잠김)를 따릅니다. 이름은 `<레이어명> 표시|동결|잠금`. +- 아이콘은 데이터만 반영합니다. 클릭 시 Callback으로 다음 값을 알리고, 실제 변경·도면 반영은 호스트가 `layers`를 갱신해 수행합니다. Hover는 CSS이며 데이터를 바꾸지 않습니다. +- Callback이 없는 아이콘은 버튼이 아닌 상태 표시(`role="img"`, `<이름> 표시 켜짐/꺼짐`)이며 Hover·클릭 반응이 없습니다. +- 필드의 아이콘 3개는 현재 레이어(`activeLayerId`) 상태를 표시합니다(필드 안 아이콘은 장식, 버튼 아님). 현재 레이어가 없으면 모두 컬러(기존과 같음). + +#### 5.2.2 선택 · 이벤트 · 키보드 + +| 동작 | 결과 | +|---|---| +| 필드 클릭 / Enter / Space | 열기·닫기(`onLayerOpen`도 매 클릭 호출, `onLayerMenuOpenChange`) | +| 행 선택(견본·이름 버튼) | `onLayerSelect` 1회 → 목록 닫힘, Focus는 필드로 복귀(문서 Dropdown과 같음) | +| 전구 / 눈꽃 / 자물쇠 | 해당 Callback 1회, `onLayerSelect` 호출 없음, 목록 유지, Focus는 아이콘에 유지 | +| 레이어 상세 | `onLayerDetail` 1회 후 목록 닫힘. Callback이 없으면 Figma 외형 그대로 `disabled`(추가 흐림 없음), 임의 팝업 없음 | +| 바깥 pointerdown · Escape · Tab으로 벗어남 | 닫힘(Escape는 필드로 Focus 복귀). 다른 메뉴(문서·더보기)를 누르면 바깥 클릭으로 닫혀 Overlay가 겹치지 않음 | +| ↓ (닫힘) | 열고 현재 레이어(없으면 첫 행) 이름 버튼에 Focus | +| ↓ ↑ (열림) | 행 이동, 같은 열(전구·눈꽃·자물쇠·이름) 유지, 하단 버튼 포함 순환 | +| ← → | 행 안에서 아이콘·이름 사이 이동 | + +- 행은 `
  • ` 안에 아이콘 버튼 3개와 선택 버튼 1개를 형제로 둡니다(중첩 버튼 없음). 따라서 아이콘 클릭이 행 선택으로 전파되지 않습니다. +- 현재 레이어(**사용자 규칙 확장, Figma 없음**): 문서 Dropdown과 같이 목록 순서를 유지하고 이름만 `#FFC600`(Hover 중에도 유지, 배경만 갈색). 버튼에 `aria-current="true"`. +- `disabled` 레이어는 선택·아이콘 버튼 모두 비활성(기존 `opacity .4`), 행 Hover 없음. +- 데이터 없음: `layers=[]`이면 목록 없이 하단(레이어 상세)만 표시하고 필드는 `layer.name`을 표시합니다. + +#### 5.2.3 반응형 + +목록은 234px를 유지하고 필드 왼쪽에 맞춰 엽니다. 헤더(또는 화면) 오른쪽을 넘으면 넘는 만큼 왼쪽으로 이동하고(1px 여백), 이때 노란 외곽선은 목록만 감쌉니다(`data-shifted`). 520 미만의 필드 아이콘 숨김·레이어명 말줄임 등 기존 단계는 그대로입니다. 측정 결과는 [레이어 Dropdown 검증 기록](./sw-header-layer-dropdown-verification-2026-10-16.md)에 있습니다. + +### 5.3 색상 · 선스타일 · 문자스타일 · 치수스타일 Dropdown (2026-10-16) + +Figma 8개 노드(모두 MCP `get_design_context` + Plugin API로 확인): ① `header/menu/색상` 26:10986(Default 26:10987 / hover 26:10996 / 펼침 26:11005) ② `header/menu/색상_addUserColor` 26:11036(26:11037 / 26:11046 / 26:11055) ③ `ByLayer` 26:12666(Default 26:12667 / hover 26:12669 / on 26:12671) ④ `ByBlock` 26:12659(26:12660 / 26:12662 / 26:12664) ⑤ `header/menu/선스타일` 26:11104(26:11105 / 26:11124 / 26:11143) ⑥ `header/menu/문자스타일` 26:11181(26:11182 / 26:11191 / 26:11200) ⑦ `header/menu/치수스타일` 26:11215(26:11216 / 26:11229 / 26:11242) ⑧ `header/dropdown/brown/row` 26:10702(Default 26:10703 / Hover 26:10706). 보조: 행 Variant(26:10713 / 26:10748 / 26:10755 / 26:10718 / 26:10729), `input` 26:11656, `header/menu/색상/input` 26:11308, `btn_상세/*` 26:10774 / 26:10781 / 26:10788 / 26:10795, `btn_colorize` 26:11302. + +데이터 Props(`colors`, `lineTypes`/`lineWeights`, `textStyles`, `dimensionStyles`)를 주면 각 필드가 Dropdown 버튼이 됩니다(`SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu`). 주지 않으면 기존 필드 버튼과 외형·동작이 같습니다(하위 호환). 동작 계약은 레이어 Dropdown(§5.2.2)과 같습니다: 클릭/Enter/Space로 열고 닫기(Hover로 열지 않음), ↓로 열며 현재 항목(없으면 첫 항목) Focus, ↓↑ 이동, Escape·바깥 pointerdown·Tab 이탈로 닫기, 한 번에 하나만 열림, 헤더 49px·다른 필드 위치 불변, 목록은 헤더 밖으로 넘치면 안쪽으로 이동. + +| 항목 | Figma(확인) | 구현 | +|---|---|---| +| 펼친 필드(Variant3) | 테두리 `#081813`, 위쪽만 radius 3, 라벨·값 `#FFC600`, 선/글꼴/치수 미리보기 `#FFC600` | 같음(`data-expanded`). 노란 링: 색상·문자·치수는 필드+목록 1px(194 × 198 / 166 × 140), 선스타일은 필드 링 286 × 39 + drop_wrap 링 | +| 공통 면 | `#27241D`, 검정 1px(inside), 하단 radius 3 | 같음(레이어 Dropdown 토큰 재사용, 테두리는 overlay) | +| 색상 목록 | 192 × 158(사용자 색상 2개 192 × 182), top 38, padding-top 10, gap 10, 가운데 정렬 | 같음. 브라우저 측정 ByLayer 그룹 (12.5, 10) 167 × 30, 팔레트 (12, 50) 168 × 22, 도구 (15, 82) 162 × 26, 하단 y 118 × 40 | +| ByLayer / ByBlock | 각 82.5 × 28, 검정 167 × 30 타일(p 1, radius 4). Default `rgba(98,83,61,.3)` + inner shadow(ByLayer `2px -2px 4px` · `-5px 2px 4px`, ByBlock `-2px -2px 4px` · `6px 2px 4px`, `rgba(0,0,0,.6)`), on `#62533D` + `1px 2px 2px rgba(217,207,187,.25)` · `-1px -2px 2px rgba(0,0,0,.4)`, 글자 `#D4CBBD` | 같음. inner shadow는 Figma처럼 글자 위 overlay. `aria-pressed`, 상호 배타 표시는 `colorMode` | +| 색상 칩 | 22 × 22: 검정 20 radius 2 + 18 견본, 1px `#C9C9C9`, radius 1. 기본 7색 `space-between`, 사용자 색상 gap 2 | 같음. 사용자 색상은 줄바꿈, 팔레트+4행(118px) 초과 시 팔레트만 세로 스크롤(구현값). 현재 색과 같은 칩 `aria-pressed`(시각 표시 없음, Figma 없음) | +| 색상 추출 | 24 × 24, `#C5B19E → #5F554C`, 1px 검정 40%, radius 3, drop-shadow `0 2px 2px rgba(0,0,0,.4)`, 아이콘 18(`colorize`) | 같음(`color-pick.svg` = Figma 원본). `onColorPick` 후 닫힘. 실제 추출은 호스트 | +| 색상 입력 | 130 × 26, 칩(p 2) + 값(px 8, 빨강 `#E60403`). hover 1px `rgba(197,177,158,.2)`, 편집 시 값 영역 검정 + 왼쪽 구분선 | 같음(`SWHeaderInput` 사용). `r,g,b`(0–255) 또는 `#rrggbb` 검증, 잘못된 값 복원. "컬러칩 클릭"(색 선택 팝업)은 Figma에 "추후 디자인 진행예정" → 미구현 | +| 선스타일 목록 | drop_wrap 468 × 192(x −92, y 37, 1px `#A67D03` inside), drop 466 × 190, 열 182 / 142 / 142(구분선 `rgba(197,177,158,.15)`) | 같은 구조. **차이**: 선 종류 열은 Noto Sans KR에서 "Continuous"(약 88px)가 잘리지 않도록 최소 182 · 최대 240px로 늘어나 1920에서 473.2 × 192(x −94) | +| 선 종류 행(26:10702) | 182 × 30, padding 12, gap 8, 미리보기 70 × 2(`#F6F4F2` + 검정 1px outside), Hover `#62533D` · 선·글자 `#FF5C00` | 같음(1920 측정 미리보기 x+12, y 14). CENTER 22·7·22·7, HIDDEN 33·33(`swHeaderLinePatterns`), 패턴은 데이터 `pattern` | +| 가중치 · 스케일 | 142 × 30 행, ByDefault 값 오른쪽, User·스케일은 빨간 수정 가능 글자(input) | 같음. User(`editable`)와 스케일은 `SWHeaderInput`(가중치 0 이상, 스케일 0 초과) | +| 문자스타일 목록 | 164, 행 30(글꼴 16 + 이름 14, gap 12), 하단 40(px 10, 테두리 .25, 왼쪽 정렬) | 같음. **차이**: 글꼴 칸 38px(Dotum) → Noto "Arial" 42px라 최대 56px까지 내용 폭. Figma Variant3의 상세 버튼은 hover Variant(.25)로 배치되어 있으나 Hover 정책상 Default(.15)로 표시 | +| 치수스타일 목록 | 164, 행 30(미리보기 60 × 15 + 이름, gap 12), 하단 40(px 10, 테두리 .25, 오른쪽 정렬) | 같음. 행 미리보기는 Figma 행 자산 `menu-dimension-row.svg`(`#F6F4F2`)와 Hover `menu-dimension-row-hover.svg`(`#FF5C00`, foreground fill 1곳만 다름) | +| 하단 상세 버튼 | `btn_상세/색상·선스타일·문자스타일·치수스타일`: 아이콘 14, gap 4, padding 5 / 10, `rgba(197,177,158,.15)`, radius 24, 글자 35% | 레이어 상세와 같은 스타일. Callback 없으면 Figma 외형 그대로 비활성. 상세 팝업은 미구현 | + +- 선택: 색상·선스타일은 여러 속성을 연속 변경하도록 선택 후에도 열린 상태를 유지하고(구현 결정), 문자·치수스타일은 행 선택 후 닫힙니다. 각 열은 자기 속성의 Callback만 호출합니다(선 종류 → `onLineTypeSelect`만, 가중치·스케일 유지). +- 현재 항목(`active*Id`, 미지정 시 이름 일치)은 레이어 목록과 같이 이름만 `#FFC600`이며 `aria-current="true"`. Hover(배경)와 구분됩니다. +- **Hover 정책(2026-10-16 사용자 확정)**: Dropdown 안 독립 버튼(ByLayer·ByBlock·색상 칩·사용자 색상·색상 추출·`… 상세`)은 배경·글자·아이콘·테두리·그림자·밝기·크기·위치 변화가 없습니다. Figma Hover Variant(ByLayer 주황 글자, 상세 .25 등)는 비교 자료입니다. 클릭·On·`:focus-visible`은 유지합니다. **예외**: 목록 행(레이어·선 종류·가중치·스케일·문자·치수)의 Figma 행 Hover와 Input의 Figma Hover(수정 가능 표시)는 유지합니다. 문서 Dropdown Hover는 변경하지 않았습니다. +- 동적 데이터: 모든 목록은 `id` 기반 배열 Props이며 추가·삭제·이름/값 변경·재정렬에 소스 수정이 필요 없습니다. 현재 항목이 삭제되면 선택 표시가 없어지고 필드는 값 Props를 표시합니다. 긴 목록은 Dropdown 안에서만 스크롤합니다(행 240px). +- 좁은 헤더: 목록은 헤더 안쪽으로 이동하고, 헤더 폭 480 미만에서는 선스타일 3열을 세로로 쌓습니다(가로 스크롤·화면 밖 이탈 없음, 필요 시 세로 스크롤). + +### 5.4 반응형 More — 대표 필드 전환 (2026-10-16) + +대표 슬롯 = 객체 수정 영역의 첫 필드 칸(레이어 필드 자리). 선택 근거: 1920 배열의 첫 칸이자 모든 Breakpoint에서 끝까지 남는 칸이며, 로고·파일명·창 제어 영역과 분리되어 있습니다. + +- 더보기에서 필드 항목(색상·선/문자/치수스타일)을 고르면 그 필드가 대표 칸(`order: -1`)에 표시되고 Dropdown이 열리며 Focus가 필드로 이동합니다. 레이어는 그동안 더보기(tier `slot`)로 옮겨지고, 더보기 → 레이어로 복귀합니다. 화면에 보이는 필드는 더보기에서 빠집니다. +- 전환 상태는 `SWHeader` 내부 UI 상태(`data-promoted`)이며 데이터와 분리됩니다. 필드 클릭과 같은 `on*Open` 1회 + `on*MenuOpenChange(true)`만 호출하고 데이터 Callback은 호출하지 않습니다. 값·다른 필드 상태는 그대로입니다. +- CSS는 해당 필드가 더보기에 있는 폭(선/문자/치수 < 1800, 색상 < 900)에서만 전환을 적용하므로 1920 배열과 기존 Breakpoint는 바뀌지 않습니다. 대표 필드는 남는 폭에 맞춰 줄어들 수 있고(값 말줄임), 객체 수정 영역 밖으로 넘치지 않습니다. +- 검증(16개 폭 1920–390): [검증 기록](./sw-header-dropdowns-stroke-input-verification-2026-10-16.md). + +### 5.5 레이어 상세 버튼 · 수정 가능한 Input (2026-10-16) + +- `btn_상세/레이어` 26:10767(Default 26:10768 / Hover 26:10771): 기존 구현(§5.2)이 Default와 같습니다 — 아이콘 14(`layer-detail.svg` = Figma `ico_layer` Default, Hover 아이콘은 opacity .35로 다름), gap 4, padding 5 / 10, `rgba(197,177,158,.15)`, radius 24, 글자 35% + 흰색 0.4px Stroke. Figma 113 × 24는 Dotum 기준이고 Noto Sans KR에서 107.3 × 24(기존 APPROVED DIFFERENCE). **Hover(.25 · radius 25)는 사용자 정책상 적용하지 않으며** Storybook에 Figma 참조 이미지로만 둡니다. Callback은 기존 `onLayerDetail`을 재사용하고 상세 팝업은 만들지 않습니다. +- `input` 26:11656(Default 26:11657 58 × 20 / hover 26:11659 58 × 24 / on 26:11661 58 × 24) → 공개 `SWHeaderInput`: padding 2 / 4 / 2 / 6, radius 2, 14px `#E60403` + 검정 1.3px Text Stroke. Hover 1px `rgba(212,203,189,.25)`, 편집(Focus) `#0F0D0A` + 1px `.3`; 테두리가 padding 1px을 대신해 글자 위치는 그대로입니다. 폭은 값 길이(`4.0526` = 58px, 브라우저 측정 일치). +- `cursor` 26:11664(1 × 14 `#E60403`, Variant2 투명): 네이티브 caret을 `caret-color: #E60403`으로 표시하고 깜박임은 브라우저 기본입니다. 가짜 커서를 만들지 않아 커서 위치·선택·IME가 기본 동작합니다. caret 높이는 글꼴 metrics를 따르므로 14px과 정확히 같다고 보증하지 않습니다(NOT VERIFIED). +- 동작: 편집 중 임시값(`onValueChange`)과 확정값(`value`)을 분리합니다. Enter·Focus 이동·감싼 Dropdown 닫힘에서 `parse`(기본: `valueType` text = 비어 있지 않은 텍스트, number = 소수) 통과 + 변경 시에만 `onCommit`, 잘못된 값은 확정값으로 복원, Escape는 편집 취소(`onCancel`, 첫 Escape는 Dropdown을 닫지 않음), IME 조합 중 Enter는 확정하지 않음. `readOnly`(또는 `onCommit` 없음)·`disabled` 지원. + +## 6. Typography + +| 용도 | Figma | 구현 | +|---|---|---| +| 파일명 | Dotum 14, tracking 0.84px | Noto Sans KR 14 / 700 / 0.06em, `#F0F7F5` | +| 그리기모드·필드 값·토글 | Dotum 14(bold 스타일명), tracking 0.56px | Noto Sans KR 14 / 700 / 0.04em, `#F6F4F2` | +| 필드 라벨·상세보기 | Dotum 12, tracking 0.24px | Noto Sans KR 12 / 400 / 0.02em | +| 문자스타일 글꼴명 | Dotum 16 | Noto Sans KR 16 / 700 | + +- Font Weight는 400 / 700만 사용합니다(브라우저 측정 확인). 600·750·800 없음. +- ~~Figma 글자는 검정·밝은색 두 레이어를 겹친 구조입니다. 사용자 요청에 따라 글자 외곽선·겹침 효과를 넣지 않고 밝은색 한 겹만 사용합니다.~~ (과거 기준 보존. 2026-10-16 후속 요청으로 §6.1 Text Stroke를 복원했습니다.) +- 폰트 파일은 패키지에 포함하지 않습니다. 소비 프로젝트가 Noto Sans KR을 로드하며, 없으면 `Malgun Gothic` → `Apple SD Gothic Neo` → `sans-serif`로 대체됩니다. + +### 6.1 Text Stroke (2026-10-16) + +Figma Plugin API로 26:8944와 메뉴 8개·문서·레이어 Component Set의 모든 TEXT 노드(Variant 포함, 숨김 제외)를 조사했습니다. 모든 Stroke는 **OUTSIDE**입니다. + +| 영역 | Figma 구조 | 구현 | +|---|---|---| +| 14px 값(파일명, 그리기모드, 레이어·색상·선/문자/치수 값, 가중치·스케일 값, 속성Bar·속성창, 문서·레이어 목록 이름, 새 Dropdown 행·ByLayer/ByBlock) | 같은 글자 2층: 아래층 검정 Stroke 1.3px, 위층 채움 + 같은 색 Stroke 0.3px | `text-shadow` 16방향 1.3px 검정 원(`--hm-sw-header-text-outline`). 자기 색 0.3px Stroke는 2026-10-16 추가 수정으로 제거 | +| 16px 글꼴 미리보기(필드·문자스타일 행) | 14px과 같음(1.3 + 0.3) | 14px과 같음(검정 1.3px만) | +| 12px 라벨(레이어·색상·선스타일·가중치·스케일·문자스타일·치수스타일·상세보기) | 채움 + 검정 Stroke 1px | `--hm-sw-header-label-outline`(1px 검정 16방향), 자기 색 Stroke 없음 | +| 수정 가능 글자(색상·가중치·스케일·상세 Input) | 아래층 검정 1.3px + 위층 `#E60403` 0.3px | 14px과 같음(`SWHeaderInput`). 속성창 행 입력은 Default·Hover 외곽선 없음, On(편집·Dropdown)에서만 외곽선([§18](#18-속성창-입력선택-필드-2026-10-19)) | +| `… 상세` pill(레이어·색상·선/문자/치수) | 흰색 + 흰색 Stroke 0.4px, 검정 없음, 35% | 미적용: 자기 색 0.4px Stroke 선언과 `--hm-sw-header-solid-stroke-width`는 2026-10-16 후속 수정으로 제거 | +| `+ New` / `Open` | 검정 70% + 검정 0.4px | **미적용**(2026-10-16 추가 요청: 두 버튼은 기존 상태 유지) | +| 더보기 메뉴, 창 이동 Tooltip | Figma에 없음 / Stroke 없음 | 미적용 | + +- `-webkit-text-stroke` 단독은 획 중심 기준이라 글자 안쪽을 깎으므로 검정 외곽선은 `text-shadow`로 그립니다(글자 뒤, 글자 모양을 덮지 않음). Hover·Selected·행 Hover는 채움색만 바뀌고 외곽선은 검정 그대로입니다. Input의 caret·선택 영역은 shadow 위에 그려져 가려지지 않습니다. +- 말줄임 텍스트(`overflow`)는 `overflow: clip` + `overflow-clip-margin: 2px`로 외곽선이 상자 경계에서 잘리지 않게 했습니다(`overflow-clip-margin` 미지원 Safari 등에서는 가장자리 1px 내외가 잘릴 수 있음 — NOT VERIFIED). +- 글꼴·크기·자간·기준선·Font Weight(400/700)는 바꾸지 않았습니다. Figma는 Dotum Regular + Stroke로 굵기를 표현하고 구현은 Noto Sans KR 700 + 같은 Stroke이므로, 구현 글자가 Figma보다 약간 굵게 보입니다(남은 차이. 조정 변수였던 `--hm-sw-header-text-stroke-width`는 2026-10-16 추가 수정으로 제거). +- 레이어 Dropdown 이름·레이어 상세에도 같은 기준이 적용됩니다(CSS만, 레이어 컴포넌트·매핑 코드는 변경 없음). + +## 7. Color · Gradient + +| 토큰 | 값 | 근거 | +|---|---|---| +| `--hm-sw-header-background` | `#060606` | Figma header frame | +| `--hm-sw-header-text-color` | `#F6F4F2` | Figma `--text-brown100` | +| `--hm-sw-header-title-color` | `#F0F7F5` | Figma `--text-green100` | +| `--hm-sw-header-arrow-color` | `#47AF91` | Figma `--solid-arrow` | +| `--hm-sw-header-selected-color` | `#FFC600` | 사용자 확정 선택 상태 | +| `--hm-sw-header-focus-color` | `#F0F7F5` | 구현값(Figma 없음) | +| `--hm-sw-header-hover` | `rgba(255,255,255,0.08)` | 구현값. 현재 최소화·종료 버튼과 더보기 메뉴 항목에만 사용 | +| `--hm-sw-header-hover-border-gradient` | 180deg `#A67D03` 0% → `#F2CC0F` 16.41% → `#FADD4F` 37.19% → `#F2CC0F` 62.03% → `#926E03` 87.88% | Figma `header/btn_home` hover 테두리(26:10655) | +| `--hm-sw-header-document-background` | 사용자 확정 180deg gradient(§10 B) | 사용자 확정 = Figma 동일 | +| `--hm-sw-header-object-background` | 사용자 확정 0deg gradient(§10 A) | 사용자 확정 = Figma 동일 | +| `--hm-sw-header-property-background` | 사용자 확정 반투명 검정 gradient(§10 C) | 사용자 확정 = Figma 동일 | +| `--hm-sw-header-pill-background` | `rgba(0,0,0,0.8)` | Figma `Rectangle 6959` | +| `--hm-sw-header-stripe-color` | `rgba(28,106,81,0.32)` | Figma 창 이동 줄무늬 | +| `--hm-sw-header-window-icon-color` | `#ADB0AF` | Figma 최소화 막대 | + +창 영역(`Rectangle 6669`)과 인쇄 버튼은 파일명 gradient·테두리를 Figma 그대로 재사용합니다. + +## 8. Border · Radius · Shadow + +| 면 | Border | Radius | Shadow | +|---|---|---|---| +| 파일명 | 위·오른쪽·아래 1px `#0E4C3A`, 왼쪽 0 | 0 | none | +| 객체 수정 | 1px `#135643` | 6px | none | +| 속성 필드(5개 메뉴, 더보기 버튼) | 1px `#08251C` | 3px | `0 1px 4px 0 rgba(9,39,30,.7)` | +| 창 영역 | 1px `#0E4C3A`(4면, pseudo) | 0 | none | +| 인쇄·가이드 pill | 1px `#092920` | 4px | inset `0 2px 2px rgba(0,0,0,.25)` | + +## 9. 아이콘 · Assets + +Figma MCP에서 내려받은 원본 SVG 13개(종료 hover 포함)와 Hover 색 Variant 2개, 총 15개를 `packages/sw/src/assets/`에 두고 build 시 data URI로 `dist/index.js`에 포함합니다. 임시 Figma URL 참조는 없습니다(`dist` 검색 0건). 다색 SVG 원본을 수정·재작성하지 않았습니다. Hover 색 Variant(`print-hover.svg`, `popup-guide-hover.svg`)는 원본을 복사해 `fill="#B6D0C9"` 1곳만 `#FFC600`으로 바꾼 파일이며 path·mask·filter·gradient는 원본과 같습니다(§11.2). + +| 파일 | Figma 요소 | 렌더링 크기 | +|---|---|---| +| `home-bg.svg` | `Rectangle 7508` 홈 배경(Default) | 92 × 72 | +| `home-bg-hover.svg` | `Rectangle 7509` 홈 배경(hover, 노란 gradient 테두리) | 92 × 72 | +| `document-icon.svg` | `icon_dualmonitor` 문서 Dropdown 기본 아이콘(29 × 12 영역, 그림자 포함) | 37 × 19(위치 −4, −3) | +| `layer-union.svg`, `layer-ellipse.svg` | 레이어 아이콘 1(합성) | 14 × 18, 14 × 14 | +| `layer-state-b.svg`, `layer-state-a.svg` | 레이어 아이콘 2, 3 = `icon_눈꽃` / `icon_자물쇠` Default(컬러) | 20 × 20 | +| `layer-ellipse-off.svg` | `icon_전구` Variant3/4 회색 전구알(26:10833, union·막대는 Default와 같음) | 14 × 14 | +| `layer-freeze-hover.svg`, `layer-freeze-off.svg`, `layer-freeze-off-hover.svg` | `icon_눈꽃` Variant2 / 3 / 4(26:10870 / 26:10884 / 26:10898) | 20 × 20 | +| `layer-lock-hover.svg`, `layer-lock-off.svg`, `layer-lock-off-hover.svg` | `icon_자물쇠` Variant2 / 3 / 4(26:10919 / 26:10925 / 26:10931) | 20 × 20 | +| `layer-detail.svg` | `ico_layer` 레이어 상세 아이콘(26:1474) | 14 × 14 | + +레이어 Dropdown(§5.2) 자산 8개는 2026-10-16 Figma MCP에서 내려받은 원본입니다. 기존 `layer-union/ellipse/state-a/state-b`는 Figma 원본과 mask id 외 동일함을 비교해 그대로 재사용했습니다. Hover SVG는 Default 아이콘 + 검정 25% 20 × 20 타일(radius 2)이며 그 외 차이가 없음을 확인했습니다. +| `menu-dimension-ico.svg` | 치수 아이콘 | 60 × 15 | +| `menu-dimension-row.svg`, `menu-dimension-row-hover.svg` | 치수스타일 Dropdown 행 미리보기 Default(`#F6F4F2`) / Hover(`#FF5C00`)(26:10729, 2026-10-16 Figma 원본, foreground fill 1곳만 다름) | 60 × 15 | +| `color-pick.svg` | `btn_colorize` 아이콘 `colorize`(26:11303, 2026-10-16 Figma 원본) | 18 × 18 | +| `print.svg` | 인쇄 | 24 × 22.9(버튼 inset 20.1/20/19.62%) | +| `print-hover.svg` | 인쇄 Hover(원본의 `#B6D0C9` → `#FFC600`만 변경, Figma Variant 없음) | 24 × 22.9(같은 위치) | +| `popup-guide.svg` | `꾸러미ver2/팝업가이드` | 40 × 38 | +| `popup-guide-hover.svg` | 팝업 가이드 Hover(원본의 `#B6D0C9` → `#FFC600`만 변경, Figma Variant 없음) | 40 × 38(같은 위치) | +| `window-motion.svg` | 창 이동 아이콘 | 32 × 30 | +| `close.svg` | `header/btn_종료` Default(26:12162) | 32 × 48 | +| `close-hover.svg` | `header/btn_종료` Variant2 = hover(26:12166): `#E40000` 32 × 48 + 흰 X, X path는 Default와 같음 | 32 × 48 | + +파일명 화살표(Figma `Polygon 352`, 단색)는 선택 시 색을 바꾸기 위해 SVG 대신 CSS 삼각형(7 × 4)으로 그립니다. 기존 뷰어의 임시 `HM` 텍스트 로고는 사용하지 않았습니다. + +### 9.1 로고 (확정 디자인 아님) + +SW Header는 여러 SW 프로그램이 공통으로 사용합니다. 따라서 **로고 영역의 배치는 공통 디자인이고, 로고 이미지 자체는 사용하는 SW 프로그램이 결정하는 항목**입니다. 패키지는 특정 제품 로고·브랜드명·파일 경로를 포함하지 않습니다. + +| 항목 | 기준 | 구분 | +|---|---|---| +| 로고 영역 | 홈 버튼(80 × 48) 안 x 12 / y 16, 32 × 17 (Figma `bi_egbim` frame). 토큰 `--hm-sw-header-logo-width` / `-logo-height` | 공통 디자인(확정) | +| 홈 배경 | `home-bg.svg` 사선 녹색 면 + 0–65px 파일명 gradient 바탕 | 공통 디자인(확정) | +| 로고 이미지 | `logoSrc`(이미지 URL) 또는 `logo`(React 요소)로 각 프로그램이 전달. 비율이 달라도 영역 안에 `contain`으로 맞추고 넘치지 않음 | 프로그램별 결정 | +| 로고 미전달 | 로고를 그리지 않음. 홈 배경·파일명·객체 수정 영역 위치는 그대로 | 공통 동작 | +| 접근성 | `logoAlt` 전달 시 홈 버튼 이름 " 홈", 없으면 "홈" | 공통 동작 | + +- Figma 26:8944의 이지빔 로고(`bi_egbim`)는 기준 화면의 예시이며 공통 컴포넌트에 넣지 않습니다(2026-10-16 사용자 지시로 패키지에서 제거). +- Storybook 기본 화면의 로고는 임시 자산 `src/sw/assets/sw-header-logo-placeholder.svg`(브랜드명 없는 점선 사각형 도형)입니다. Storybook 전용 파일이며 패키지에 포함되지 않고, 어떤 제품의 공식 로고도 아닙니다. + +## 10. 사용자 확정 CSS + +신규 패키지에서는 기존 뷰어 class 대신 SW 전용 class와 토큰을 씁니다. 값은 그대로입니다. + +| 기존 뷰어 class | 신규 class | 토큰 | +|---|---|---| +| A `.cad-toolbar-object-area` | `.hm-sw-header__object-area` | `--hm-sw-header-object-background`, `-object-border-color`, `-object-radius` | +| B `.cad-toolbar-document` | `.hm-sw-header__document` | `--hm-sw-header-document-background`, `-document-border-color` | +| C `.cad-toolbar-property-field` | `.hm-sw-header__field` | `--hm-sw-header-property-background`, `-property-border-color`, `-property-radius`, `-property-shadow` | + +```css +/* A. 객체 수정 */ +border-radius: 6px; border: 1px solid #135643; box-shadow: none; +background: linear-gradient(0deg, #144838 0%, #1A4536 6%, #1F4134 10%, #10392D 18%, #296B55 72%, #1F5A47 83%, #144838 92%, #124133 100%); +/* B. 파일명 */ +border-radius: 0; border-top/right/bottom: 1px solid #0E4C3A; border-left: 0; box-shadow: none; +background: linear-gradient(180deg, #081813 0%, #09271E 8.69%, #0B3227 25.43%, #0E3D2F 51.25%, #0B3227 80.03%, #0A2B21 89.76%, #081813 100%); +/* C. 속성 입력 */ +border-radius: 3px; border: 1px solid #08251C; box-shadow: 0 1px 4px 0 rgba(9, 39, 30, 0.70); +background: linear-gradient(0deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.45) 26.41%, rgba(0,0,0,.40) 70%, rgba(0,0,0,.45) 100%); +``` + +세 값은 Figma `get_design_context`의 해당 레이어 값과도 일치합니다(Figma 26.407% → 확정 26.41%). C의 반투명 검정은 A 위에서 합성되는 것이 의도입니다. + +## 11. 선택 · Focus · Hover · Disabled + +| 상태 | 표현 | 근거 | +|---|---|---| +| 선택(`activeMenu`, `propertyBarOpen`, `propertyPanelOpen`, 더보기 열림) | 텍스트·단색 아이콘(파일명 화살표, 더보기 점)만 `#FFC600`. 배경·테두리·그림자 변화 없음 | 사용자 확정 | +| Focus(키보드) | 2px `#F0F7F5` outline, offset −2px. 선택과 별도 | 정책(선택과 구분) + 구현값 | +| Hover | 노란 gradient 테두리(§11.1) 유지. 5개 필드는 텍스트·지정 스타일 미리보기도 `#FFC600`(§11.5). 배경·크기·padding·radius·그림자 변화 없음. 인쇄·팝업 가이드와 최소화·종료는 기존 §11.2 유지 | Figma 홈 버튼 hover(26:10655) + 사용자 추가 §11.5, Figma 26:12156 / 26:12161 | +| Selected + Hover | 선택 글자색 `#FFC600` 유지 + Hover 테두리. 두 표현이 다른 속성이라 함께 보임 | 정의 | +| Focus + Hover | Focus 윤곽선(2px `#F0F7F5`)이 Hover 테두리 위에 그려짐 | 정의 | +| Disabled(`disabled`) | 메뉴·속성·인쇄/가이드 opacity .4, 커서 기본, Hover 테두리·아이콘 색 변화 없음. 창 제어는 유지 | 구현값 | + +레이어 상태 아이콘 3개는 원본 다색 SVG(노랑 전구·하늘색·자물쇠)로, 선택 시 `#FFC600`으로 바꾸지 않습니다. 레이어 상태 의미를 보존하기 위한 의도적 차이입니다(§15). + +### 11.1 Hover 테두리 (공통 상호작용 규칙) + +**Figma에서 확인한 것**(`header/btn_home`, node 26:10655, Variant `Default` / `hover`, 80 × 48): Hover는 배경 SVG의 1px 테두리만 녹색 gradient에서 노란 gradient로 바꿉니다. 채움·그림자·크기·로고 위치는 Default와 같습니다(두 SVG를 비교해 확인). 방향은 위 → 아래(`y1 12 → y2 60`)이며 stop은 0% `#A67D03`, 16.41% `#F2CC0F`, 37.19% `#FADD4F`, 62.03% `#F2CC0F`, 87.88% `#926E03`(이후 100%까지 같은 색)입니다. + +**구현 적용 범위**(Figma 홈 버튼 규칙을 다른 버튼에 확장한 구현 결정): + +| 대상 | 방식 | +|---|---| +| 홈 | Figma hover SVG(`home-bg-hover.svg`)를 Default 위에 겹쳐 사선 외곽선에 정확히 표시 | +| 레이어·색상·선스타일·문자스타일·치수스타일, 더보기 버튼 | 1px 테두리 위치, radius 3px | +| 인쇄 | 1px 테두리 위치, radius 2px. 아이콘 색 변화는 §11.2 | +| 팝업 가이드 | SVG 안의 1px 외곽선 위치, radius 2px. 아이콘 색 변화는 §11.2 | + +파일명(문서 Dropdown 버튼)은 예외입니다(2026-10-16 사용자 지시): Hover 시 노란 테두리 없이 **파일명 글자만 `#FFC600`**으로 바꾸고, 녹색 테두리·배경 gradient·초록 화살표는 그대로 둡니다. Dropdown이 열린 동안에는 글자 `#FFC600`과 노란 위쪽 화살표를 유지하고, 닫힌 뒤 Hover가 풀리면 Default로 돌아갑니다. 키보드 Focus 윤곽선은 별도로 유지합니다. + +문서 Dropdown 안의 목록 항목과 `+ New` / `Open`도 노란 테두리를 쓰지 않고 각자의 Figma hover를 따릅니다(§5.1): 목록 항목은 검정 40% 배경, `+ New` / `Open`은 배경 20% → 30%·글자 70% → 100%. 속성Bar · 속성창도 예외입니다(2026-10-16 사용자 지시): Hover 시 **글자만 `#FFC600`**이고 노란 테두리·배경·그림자가 없습니다. 선택(`propertyBarOpen` / `propertyPanelOpen`)도 글자 `#FFC600`이며 선택된 토글에 Hover해도 테두리가 생기지 않습니다. 위의 '상세보기' 안내 글자는 바뀌지 않고, 키보드 Focus 윤곽선은 그대로입니다. + +즉 **파일명·속성Bar·속성창 Hover(글자 노랑) · 목록 항목 Hover(검정 40% 배경) · 하단 버튼 Hover(배경·글자 진하게)는 서로 다른 정책**이며, 노란 gradient 테두리는 위 표의 버튼(홈, 5개 속성 필드, 더보기, 인쇄, 팝업 가이드)에만 적용합니다. + +제외: 그리기모드(클릭 대상이 아닌 텍스트), 창 이동(드래그 영역), 최소화·종료(외곽선이 없는 창 제어 버튼, Figma 전용 hover를 따름 — §11.2), 더보기 메뉴 안 항목(팝업 목록, 기존 배경 Hover 유지), 비활성 버튼. + +구현: 토큰 `--hm-sw-header-hover-border-gradient`, `--hm-sw-header-hover-border-width`(1px). 대상 버튼의 `::after`가 기존 테두리 위치에 gradient 링(mask)을 그리며, 레이아웃·클릭 영역은 바뀌지 않습니다. gradient는 각 버튼 높이 기준 위 → 아래로 적용됩니다. 이전 구현값(필드·토글 배경 겹침, 인쇄·가이드 `brightness`)은 Figma 기준에 맞춰 제거했습니다. + +### 11.2 창 제어 · 바로가기 아이콘 Hover (2026-10-16) + +**Figma에서 확인한 것**(`get_design_context` / `get_metadata`): + +| 버튼 | Figma | Default | Hover(Variant2) | +|---|---|---|---| +| 최소화 | `header/btn_최소최대화` 26:12156(Default 26:12157, Variant2 26:12159) | 32 × 48, 배경 없음, 막대 10 × 2 `#ADB0AF` | 배경 `rgba(0,0,0,.2)`, 막대 `#FFFFFF`(크기·위치 같음) | +| 종료 | `header/btn_종료` 26:12161(Default 26:12162, Variant2 26:12166) | 32 × 48 SVG, X `#ADB0AF` | 같은 SVG 구조에 `#E40000` 32 × 48 사각형 + X `white`(X path 동일) | + +Figma 헤더(26:8944)에서 최소화·종료 frame(`Frame 427319960`)은 창 영역 배경 `Rectangle 6669`(1px 테두리)보다 위에 있습니다. 그래서 Hover 배경은 창 영역 테두리 위까지 32 × 48 전체를 덮습니다. 구현은 `.hm-sw-header__window-buttons`를 `position: relative`로 두어 창 영역 `::before` 테두리 위에 그립니다. Default는 버튼이 투명하므로 이전과 같습니다. + +**구현**: + +| 버튼 | 방식 | +|---|---| +| 최소화 | `:hover` 배경 `--hm-sw-header-window-button-hover-background`(`rgba(0,0,0,.2)`), 막대 `--hm-sw-header-window-icon-hover-color`(`#FFF`) | +| 종료 | Figma hover SVG(`close-hover.svg`)를 Default SVG와 같은 칸(`grid-area: 1 / 1`)에 두고 Hover 때만 보이게 전환. Figma X 형태 그대로 | +| 인쇄 · 팝업 가이드 | 기존 노란 gradient 테두리(§11.1) 유지 + Hover 때 `*-hover.svg`로 전환. 아이콘의 `#B6D0C9` 채움만 `#FFC600`이고 검정 외곽선(mask)·그림자(filter)·팝업 가이드 녹색 gradient 타일·테두리는 그대로 | + +- 전환은 `.hm-sw-header__icon` / `.hm-sw-header__icon-hover` 두 ``의 `visibility`로 합니다. 같은 위치·크기라 레이아웃·클릭 영역이 바뀌지 않고, 두 이미지가 겹쳐 그려지지 않아 그림자가 두 번 칠해지지 않습니다. +- 외부 `` SVG는 CSS로 특정 fill만 바꿀 수 없어 로컬 SVG Variant를 둡니다. 전체 SVG에 CSS `filter`를 쓰지 않습니다. +- 최소화·종료에는 노란 테두리·그림자·크기 변화가 없습니다. 비활성(`disabled`) 인쇄·팝업 가이드는 아이콘 색이 바뀌지 않습니다. 키보드 Focus 윤곽선은 그대로이며 Focus만으로는 Hover 표현을 하지 않습니다(§11.1과 같음). +- 종료는 `onClose`만 호출합니다. 실제 창 닫기는 호스트가 구현하며 Storybook은 창을 닫지 않습니다. +- 인쇄 · 팝업 가이드 Hover 아이콘 색은 Figma Variant가 없는 사용자 지시(2026-10-16) 값입니다. + +### 11.3 창 이동 Hover Motion — Figma 26:10220 (2026-10-16) + +> **GIF 전달 전 구현의 보존 기록입니다. 현재 움직임·반복·좌표는 아래 §11.4를 우선합니다.** Figma 원본의 자산·Tooltip 크기와 색상 근거는 계속 유효합니다. + +기준: [창이동 motion](https://www.figma.com/design/rj6wpsfk24lOWvWiVRAANP/이지빔-SW?node-id=26-10220&m=dev). 기존 Default SVG와 `div` / `onPointerDown` 드래그 계약은 유지합니다. 아래 좌표는 88 × 48px 창 이동 영역의 왼쪽 위 기준이며 SVG stroke의 바깥 여백과 구분합니다. + +- Default `26:10221`: 아이콘 32 × 30px, (28, 13). +- Hover `26:10258`: 창 24 × 18.857px, (32, 15); 커서의 회전 외곽 박스 15.106 × 15.568px, (52, 13); Tooltip (68, 13). +- Hover2 `26:10295`: 창 (59, 12); 커서 (72, 10); Tooltip (89, 11). 창·커서 크기는 Hover와 같습니다. +- Tooltip `26:215`: `창 이동`, 45 × 17px, 검정 80% 배경, 흰색 12px/400 글자, radius 2px, padding 2px 6px. 색상은 `--hm-sw-header-tooltip-background` / `--hm-sw-header-tooltip-color`입니다. 글꼴은 기존 SW의 Noto Sans KR 정책을 따릅니다(Figma는 Inter). +- 기존 `window-motion.svg`는 유지하고, Hover용 `window-motion-window.svg`(28 × 22.8574), `window-motion-cursor.svg`(13.0291 × 16.7588)를 사용합니다. 2026-10-16 원본 비교에서 Hover 자산 두 개는 일치했고 Default는 SVG 마스크 식별자만 달랐습니다. + +Figma Prototype reactions를 직접 확인한 전환: + +1. Default → Hover: `ON_HOVER`, `SMART_ANIMATE`, `GENTLE`, 1.0220937728881836초. +2. Hover → Hover2: `AFTER_TIMEOUT` 0.001초, `SMART_ANIMATE`, `QUICK`, 0.744255542755127초. +3. Hover2 → Default: `AFTER_TIMEOUT` 0.001초, `DISSOLVE`, `BOUNCY`, 0.9582165479660034초. + +구현은 약 2.7265658초의 CSS Keyframes 4개를 사용합니다. 포인터 진입당 1회 재생하고, Hover를 유지하면 Default에서 멈춥니다. 포인터가 나가면 즉시 Default로 복귀하며 재진입 시 처음부터 시작합니다. Figma에 전환 고리는 있으나 Default로 돌아온 뒤 포인터 유지 중 자동 재시작하는지는 Prototype player에서 실재생하지 않았으므로 **NOT VERIFIED**입니다. 현재 1회 정책은 변경하지 않았습니다. + +GENTLE / QUICK / BOUNCY는 기존 코드의 spring 표본을 CSS `linear()`로 근사한 값입니다. 키프레임에 timing function을 직접 선언하며 QUICK의 overshoot와 DISSOLVE의 opacity 혼합을 유지합니다. BOUNCY는 opacity 범위에 맞춘 단조 곡선입니다. Figma API는 preset 이름과 시간을 반환했지만 수치 곡선은 반환하지 않았으므로 Figma player와 중간 프레임이 완전히 같다고 보증하지 않습니다. `linear()` 미지원 브라우저의 선형 fallback은 실기기 **NOT VERIFIED**입니다. + +드래그 영역은 기존 `role="presentation"` div와 `onWindowMoveStart(event)`를 유지합니다. 모든 장식 자식과 Tooltip은 `pointer-events: none`으로 포인터를 가로채지 않습니다. Tooltip은 Figma 좌표대로 영역 밖으로 나와 최소화와 종료 왼쪽 일부에 시각적으로 겹칩니다. 이를 겹침 없음으로 판정하지 않습니다. 브라우저 hit test와 버튼 Callback은 통과했으며 실제 네이티브 창 이동·최소화·종료는 호스트 검증이 필요합니다. + +반응형은 기존 container query를 유지합니다. 헤더 폭 1080px 이상은 88px 영역과 전체 모션, 640–1079px는 24px 영역에서 그림을 숨기고 정적 Tooltip만 (영역 폭 + 1px, 11px)에 표시, 640px 미만은 영역 전체를 숨깁니다. 헤더 높이는 49px입니다. + +`prefers-reduced-motion: reduce`에서는 4개 애니메이션을 끄고 기본 아이콘을 유지하며 Hover 동안 정적 Tooltip을 표시합니다. 24px 단계의 아이콘 숨김 규칙은 그대로입니다. 2026-10-16 검증에서 기존 `> *` 해제 규칙의 낮은 specificity 때문에 애니메이션이 유지되는 오류를 발견해, 레이어별 Hover 선택자와 동일 specificity인 `:is(...)` 선택자로 수정했습니다. 재생 도중 reduce 전환도 즉시 정지합니다. + +창 이동 div 자체는 기존대로 Tab 대상이 아니며 Focus Tooltip이나 키보드 창 이동을 제공하지 않습니다. 최소화·종료의 접근성 이름, Tab 이동과 Focus 윤곽선은 유지합니다. 키보드 창 이동 대안과 실제 보조기술 검증은 호스트 과제이며 접근성 전체 PASS를 뜻하지 않습니다. + +브라우저 검증·빌드·Guard 한계·기존 작업 보존 근거는 [최종 검증 기록](./sw-header-window-motion-verification-2026-10-16.md)에 별도로 남겼습니다. 아래 기존 반응형 검증 기록은 당시 결과로 보존합니다. + +### 11.4 현재 창 이동 Motion — ani_hover_move.gif 우선 (2026-10-16) + +> 아래는 원본 GIF의 경로·1640ms 분석 기록입니다. 후속 사용자 요청으로 현재 시간만 1400ms로 단축했으며 현재 시간과 필드 Hover 정책은 §11.5를 우선합니다. 경로·자산 근거는 계속 유효합니다. + +사용자 제공 `D:\디자인시스템\ani_hover_move.gif`를 실제 움직임의 최우선 기준으로 적용했습니다. 원본은 640 × 192px, 41프레임 × 40ms = 1640ms, `loop=0`(무한 반복)입니다. SHA-256: `c7d22819cfb8f8cd8593684ce1e5c676a545fa09fa9fc7573d59f0f237d28026`. GIF의 높이 192 / Header bar 높이 48 = 4배이며, 창의 녹색 부분 폭 96 / 4 = 기존 SVG의 녹색 폭 24px도 일치합니다. 이 비율로 상대 이동량을 환산하고 GIF 자체는 제품 자산으로 넣지 않았습니다. + +현재 우선순위는 **움직임·등장 순서·시간·유지·반복 = GIF**, **88 × 48 영역·녹색 줄무늬·SVG·Tooltip 규격 = SW/Figma**입니다. 과거 §11.3의 2.727초/1회/Smart Animate spring은 현재 동작이 아닙니다. + +1. Hover 전: 기존 `window-motion.svg` 32 × 30px, (28, 13). 변경하지 않았습니다. +2. 0–520ms: 같은 창·커서를 분리 SVG로 표시합니다. 창은 제자리, 커서는 오른쪽 아래에서 위로 12.5px 상승하며 왼쪽 0.75px의 작은 이동이 있습니다. 창 크기를 줄이거나 커서를 위에서 fade-in하지 않습니다. +3. 520ms: `창 이동` 글자가 등장합니다. GIF 13번 프레임과 같은 시점이며 이전에는 숨깁니다. +4. 약 600–1040ms: 창·커서·문구가 오른쪽 위로 함께 이동합니다. 창은 시작점 대비 +28 / −4.5px, 커서는 최초 위치 대비 +27.25 / −17px입니다. 40ms별 표본 사이를 CSS로 보간해 GIF의 가속·감속을 유지하고 추가 spring overshoot는 넣지 않습니다. +5. 1040–1640ms: 끝 자세를 600ms 유지합니다. 1640ms에서 즉시 첫 프레임으로 돌아가 Hover 동안 반복합니다. GIF에 없는 복귀 dissolve는 추가하지 않았습니다. +6. Hover 해제: 애니메이션 제거, 기존 Default SVG로 즉시 복귀. 재진입 시 새 사이클을 시작합니다. + +분리된 창은 원본 `window-motion-window.svg`의 28 × 22.8574px 크기로 (28, 13)에 표시합니다. 커서의 회전 wrapper는 15.106 × 15.568px, 시작 (44.25, 26.25)이며 SVG 원본 13.0291 × 16.7588px와 −40° 회전은 유지합니다. Tooltip 시작 box는 (60.75, 14.5), 끝 box는 (88.75, 10)입니다. wrapper/box 좌표와 색이 있는 실제 glyph 좌표는 구분합니다. + +Tooltip의 45 × 17px, 검정 80% 배경, 흰색 12px/400 글자, radius 2px, padding 2px 6px는 유지합니다. Figma 선언에 맞춰 Tooltip만 `Inter`를 우선하고 기존 SW 글꼴을 fallback으로 사용합니다. 새 폰트 파일이나 의존성은 추가하지 않았으며, 한글 또는 Inter 미설치 환경에서는 기존 Noto Sans KR 등이 표시됩니다. 문구와 커서 사이의 보이는 간격은 GIF의 약 9px를 기준으로 맞췄습니다. + +기존 div / `role="presentation"` / `onPointerDown={onWindowMoveStart}`와 공개 Props는 변경하지 않았습니다. 장식의 `pointer-events: none`도 유지합니다. 포인터를 누르는 `:active` 동안 3개 CSS 애니메이션을 일시정지하고 Tooltip을 숨기며, 새로운 포인터 캡처·전역 이벤트·preventDefault는 추가하지 않습니다. 포인터 캡처 및 실제 창 이동은 기존대로 호스트 책임입니다. + +1080px 미만 24px 단계는 그림을 숨기고 정적 Tooltip만, 640px 미만은 영역 전체를 숨기는 기존 정책을 유지합니다. Reduced Motion에서는 3개 애니메이션을 끄고 기존 Default SVG와 정적 Tooltip을 표시합니다. 재생 중 reduce 전환도 적용됩니다. 창 이동의 기존 키보드 미지원과 실제 호스트 통합 검증 한계는 §11.3과 같습니다. + +프레임별 비교·최종 빌드·반응형·Drag·보존 근거는 [GIF 기준 검증 기록](./sw-header-window-motion-gif-verification-2026-10-16.md)에 기록합니다. 이전 검증 기록은 당시 상태로 보존합니다. + +### 11.5 현재 추가 기준 — 1400ms 및 그룹 필드 Hover (2026-10-16) + +후속 사용자 요청으로 창 이동의 전체 주기를 **1640 → 1400ms**로 단축했습니다. 세 애니메이션의 duration만 1.4초로 바꿨고 Keyframes의 모든 좌표·백분율·보간은 동일합니다. 시간 비율은 1400/1640(35/41), 주기 단축은 약 14.63%이며 재생 속도 기준으로는 약 17.14% 빠릅니다. 원본 GIF와 다른 사용자 승인 시간 변경입니다. + +- 문구 등장: 520 → 약 443.90ms. +- 이동 완료: 1040 → 약 887.80ms. +- 끝 자세 유지: 600 → 약 512.20ms. +- 반복: 1640 → 1400ms. 오른쪽 28px / 위쪽 4.5px, 커서 상승과 상대 경로는 그대로입니다. +- 기존 SVG·줄무늬·Tooltip 디자인·Hover 해제·Drag 중 일시정지·Reduced Motion·88px/24px/숨김·49px 높이를 유지합니다. 패키지는 호스트의 Pointer Capture를 방해하거나 별도 캡처를 추가하지 않습니다. + +그룹 필드(`SWHeaderLayerControl`, `SWHeaderColorControl`, `SWHeaderLineStyle`, `SWHeaderTextStyle`, `SWHeaderDimensionStyle`)는 **각 버튼 전체를 Hover**하면 내부 라벨·값을 `--hm-sw-header-selected-color`(기본 `#FFC600`)로 표시합니다. 선스타일의 가중치·스케일과 문자스타일의 폰트 이름 미리보기도 포함합니다. 공용 컴포넌트의 실제 동작이므로 Full Header와 Composed Controls에 같은 규칙을 적용하며 Story 전용 색 흉내는 사용하지 않습니다. + +기존 노란 Gradient Hover Border는 유지합니다. 선스타일의 5개 미리보기 조각은 흰색 채움만 노란색으로 바꾸며 검정 1px border·형태·간격은 그대로입니다. 문자 미리보기는 SVG가 아닌 기존 폰트 이름 텍스트이며 색만 바꿉니다. 원래 별도 검정 Stroke/그림자가 없으므로 새 외곽선을 추가하지 않습니다. + +치수 미리보기는 기존 `menu-dimension-ico.svg`를 보존하고 `menu-dimension-ico-hover.svg`를 추가합니다. 실제 foreground path의 `fill="white"` 1곳만 `#FFC600`으로 바꿉니다. mask용 흰색 rect, 검정 외곽선 path, mask 참조·좌표·60 × 15px 크기는 유지합니다. 두 이미지는 같은 60 × 15px wrapper 안에서 visibility만 전환하며 CSS filter는 사용하지 않습니다. + +색상 견본의 실제 `swatch`, 흰색/검정 chip border, 레이어 상태 SVG·막대 색은 바꾸지 않습니다. Hover 이탈 시 원래 색으로 돌아가고 Selected의 기존 텍스트 색은 유지합니다. Disabled는 새 Hover 텍스트·미리보기·Border 효과를 적용하지 않으며 Disabled+Selected도 기존 색을 유지합니다. 미리보기의 선택 단독 상태를 새로 확장하지 않습니다. + +**상세보기는 제외**합니다. `속성Bar` / `속성창`은 기존처럼 해당 버튼의 텍스트만 노란색이고, 상세보기 caption·검정 divider·배경·그림자는 유지하며 노란 Hover Border를 추가하지 않습니다. 홈·문서 Dropdown·인쇄/가이드·최소화/종료는 이번 추가 기준으로 변경하지 않습니다. + +Composed Controls의 기존 레이어·색상·상세보기 예제는 보존하고, 기존 공개 선/문자/치수 컴포넌트 예제와 5개 필드의 고정 Hover 비교를 추가했습니다. 검증과 파일별 근거는 [속도·Composed Hover 검증 기록](./sw-header-speed-composed-hover-verification-2026-10-16.md)에 남깁니다. + +## 12. 반응형 + +2026-10-16 사용자 지시로 기존 1180 / 900 / 560 기준 대신 측정값으로 단계를 다시 정했습니다. 모든 단계를 헤더 폭 기준 container query(`container: hm-sw-header / inline-size`)로 처리하며 헤더 가로 스크롤은 만들지 않습니다. + +원칙: 5개 필드는 어느 폭에서도 Figma 폭(234 / 192 / 284 / 164 / 164)을 유지합니다. Noto Sans KR로 측정한 필드 내용 폭이 231 / 168 / 278 / 142 / 163px로 Figma 폭과 거의 같아, 필드를 줄이면 값만 잘리기 때문입니다. 공간이 부족하면 기능을 더보기로 옮기고, 문서명만 말줄임합니다. + +필요 폭 = 고정부(홈 63 + 간격 6 + 창 영역) + 객체 수정 면 + 문서명. + +| 헤더 폭 | 동작 | 객체 수정 면 / 창 영역 | 문서명 폭 | +|---|---|---|---| +| ≥ 1800 | Figma 기본 레이아웃(1920과 동일 구성) | 1301 / 240 | 1920: 310 → 1800: 190 | +| < 1800 | 선·문자·치수 스타일 → 더보기 | 719 / 240 | 120–310 | +| < 1180 | 그리기모드 라벨 숨김 | 633 / 240 | 120–310 | +| < 1080 | 속성Bar·속성창 → 더보기, 창 이동 88 → 24px | 480 / 176 | 120–310 | +| < 900 | 색상 → 더보기 | 284 / 176 | 96–310 | +| < 640 | 인쇄·팝업 가이드 → 더보기, 창 이동 숨김 | 284 / 64 | 96–310 | +| < 520 | 레이어 상태 아이콘 숨김, 레이어 필드만 줄어들며 레이어명 말줄임 | — | 96 | + +- 1800 기준: 5개 필드를 모두 표시할 때 문서명이 190px 이상 남는 최소 폭입니다(1610 + 190). 1770은 문서명 160px로 표시는 가능하지만 사용자 제안(약 1800)과 문서명 가독성을 고려해 1800을 채택했습니다. +- 1180 / 1080 / 900 / 640은 각 단계에서 문서명이 최소 폭(120 또는 96px)에 닿기 직전의 폭입니다. 기존 1180 기준은 "그리기모드 라벨 숨김"으로, 900 기준은 "색상 이동"으로 역할을 바꿨습니다. 기존 560 화면 폭 규칙은 헤더 폭 640 규칙으로 대체했습니다(헤더 폭 ≤ 화면 폭이므로 화면 560 미만에서도 항상 적용됨). 원 규칙의 "파일 열기·전체 보기 글자 숨김"은 Figma 헤더에 해당 도구가 없어 적용 대상이 없습니다. +- 문서명 폭은 `clamp(최소, 100cqw − 나머지 고정폭, 310px)`입니다. 문서명은 말줄임, 글자 크기는 줄이지 않습니다. +- 더보기 메뉴는 옮겨진 기능만 표시하며, 선택(`#FFC600`)·체크 상태와 Props·Callback 동작은 헤더에 있을 때와 같습니다. + +검증(2026-10-16, Storybook `SW / Header / Responsive`, 18개 폭): 1920 / 1800 / 1799 / 1770 / 1600 / 1440 / 1280 / 1180 / 1179 / 1080 / 1079 / 900 / 899 / 768 / 640 / 639 / 560 / 390에서 헤더 가로 스크롤 0, 요소 겹침 0, 객체 수정 면 밖으로 넘침 0. 필드 값·라벨 잘림은 390px의 레이어명 1건뿐입니다. 각 폭에서 더보기 항목 선택 시 Callback이 호출되고, 선택 상태가 반영되며, 메뉴가 닫히는 것을 확인했습니다(속성Bar·속성창 체크 전환, 인쇄·팝업 가이드 Callback 포함). 실제 Viewport 1799 / 1079 / 390에서도 같은 결과입니다. + +### 12.1 실측 More — 실제 사용 가능한 공간 기준 (2026-10-19) + +2026-10-19 사용자 요청("고정된 화면 너비만 기준으로 처리하지 말고 실제 사용 가능한 공간을 기준으로")에 따라 위 Breakpoint 위에 실측 단계를 더했습니다. Breakpoint 표는 그대로이며, 기본 구성(추가 요소 없음)의 배치는 바뀌지 않습니다. + +- 측정 대상: 객체 수정 영역의 in-flow 내용. 측정하는 동안(`data-measuring`, 같은 Layout Effect 안에서 설정·해제, 그려지지 않음) 영역 안 요소는 줄거나 늘지 않고 auto margin도 0이므로 실제로 필요한 폭이 드러납니다. 구성형(`controls`) 파일명은 기본 디자인의 최소 파일명 폭(96px)으로 계산합니다. +- 이동 순서: Breakpoint 단계 순서 그대로 선·문자·치수스타일 → 그리기모드(라벨만 숨김) → 속성 블록(상세보기·속성Bar·속성창, 기본 구성에서는 한 덩어리) → 색상 → 인쇄·K(구성형만, 기본 구성에서는 창 영역이라 Breakpoint 유지). 같은 단계는 오른쪽부터. 대표 칸(레이어 또는 More에서 고른 필드)은 이동하지 않습니다. 로고 오른쪽 Open(`documentOpenPlacement="header"`)은 가장 먼저 옮겨지고 가장 늦게 돌아옵니다. +- 복귀: 옮긴 직후 그 이동으로 생긴 공간(More 버튼 등장·여백 변화 포함)을 한 번 측정해 두고, 남은 공간이 그만큼 생기면 역순으로 원래 자리에 돌아옵니다(경계에서 깜박임 없음). +- 메뉴를 열고 닫아도 위치·폭은 바뀌지 않습니다. Dropdown·로고 메뉴·More 목록·Tooltip은 positioned 층이라 측정에서 제외됩니다. +- 한계: `leading`·`tools`처럼 호스트가 넣은 요소는 More로 옮기지 않습니다(More 항목이 없음). 그 요소만으로도 공간이 부족하면 기존처럼 대표 필드가 줄어듭니다. + +상세 검증: [홈 메뉴 통합·실측 More 보고](./sw-header-home-menu-responsive-2026-10-19.md). + +## 13. 컴포넌트 분리 기준 + +- 공개: `SWHeader`(전체), `SWHeaderHome`, `SWHeaderDocumentTitle`, `SWHeaderLayerControl`, `SWHeaderLayerMenu`(레이어 필드 + Dropdown, §5.2), `SWHeaderColorMenu` · `SWHeaderLineStyleMenu` · `SWHeaderTextStyleMenu` · `SWHeaderDimensionStyleMenu`(§5.3), `SWHeaderLinePreview` · `swHeaderLinePatterns`, `SWHeaderInput` · `parseSWHeaderColor` · `parseSWHeaderNumber`(§5.5), `SWHeaderColorControl`, `SWHeaderLineStyle`, `SWHeaderTextStyle`, `SWHeaderDimensionStyle`, `SWHeaderProperties`, `SWHeaderActions`, `SWHeaderWindowControls`, `SWTheme`(단독 사용 시 토큰 범위). +- 내부: `SWHeaderField`/`SWHeaderFieldText`(5개 메뉴 공통 면·라벨/값), `SWHeaderMore`(더보기), `SWHeaderDocumentItem`(문서 Dropdown 행: 선택 버튼 + 문서 닫기 버튼). 문서 Dropdown은 `SWHeaderDocumentTitle`이 소유하며 `documents`·Callback으로 다른 SW에서도 그대로 재사용합니다. 같은 필드 스타일을 메뉴별로 중복 구현하지 않습니다. +- 데이터는 Props, 사용자 동작은 Callback입니다. 파일 열기·창 이동·최소화·종료·도면 처리는 패키지 밖(호스트)에서 구현합니다. + +## 14. SW 전용 토큰 목록 + +`.hm-sw-header`와 `.hm-sw-theme`(= ``)에 정의합니다. `@hm-design/ui` 토큰을 참조·변경하지 않습니다. + +| 토큰 | 기본값 | 사용처 | +|---|---|---| +| `--hm-sw-header-height` / `-bar-height` / `-field-height` | 49px / 48px / 38px | 헤더 / 면 / 필드 | +| `--hm-sw-header-logo-width` / `-logo-height` | 32px / 17px | 로고 영역(공통 배치, 로고 이미지는 프로그램별) | +| `--hm-sw-header-gap` | 4px | 필드 간격 | +| `--hm-sw-header-font-family` / `-font-size` / `-label-size` | Noto Sans KR… / 14px / 12px | 전체 / 값 / 라벨 | +| `--hm-sw-header-background` | `#060606` | 헤더 바탕 | +| `--hm-sw-header-text-color` / `-title-color` | `#F6F4F2` / `#F0F7F5` | 일반 / 파일명 | +| `--hm-sw-header-selected-color` | `#FFC600` | 선택 | +| `--hm-sw-header-focus-color` | `#F0F7F5` | Focus | +| `--hm-sw-header-arrow-color` | `#47AF91` | 파일명 화살표 | +| `--hm-sw-header-hover` | `rgba(255,255,255,.08)` | 더보기 메뉴 항목 Hover 배경 | +| `--hm-sw-header-hover-border-gradient` / `-hover-border-width` | Figma 홈 hover gradient / 1px | Hover 테두리(§11.1) | +| `--hm-sw-header-home-on-line-color` / `-home-on-line-width` | `#5F4B0F` / 2px | Home On(로고 메뉴 열림, Figma 662:67267): Header 전폭 상·하단 선. 로고는 Hover 테두리 유지 | +| `--hm-sw-header-document-menu-width` / `-document-menu-background` / `-document-menu-border-color` / `-document-menu-border-width` | 310px / `#103127` / `#041611` / 1px | 문서 Dropdown(§5.1) | +| `--hm-sw-header-document-menu-shadow` / `-document-menu-inset-shadow` / `-document-menu-divider-color` | `0 2px 4px rgba(0,0,0,.25)` / `inset 0 4px 8px rgba(0,0,0,.4)` / `rgba(194,217,210,.2)` | 문서 Dropdown(§5.1) | +| `--hm-sw-header-document-list-max-height` | 320px | 목록 내부 스크롤 시작 높이(구현값) | +| `--hm-sw-header-document-action-background` / `-document-action-color` | `rgba(182,208,201,.2)` / `rgba(0,0,0,.7)` | New / Open Default(§5.1) | +| `--hm-sw-header-document-action-hover-background` / `-document-action-hover-color` | `rgba(182,208,201,.3)` / `#000` | New / Open Hover(Figma 26:10762 / 26:10805) | +| `--hm-sw-header-document-item-hover-background` | `rgba(0,0,0,.4)` | 문서 목록 항목 Hover(Figma 26:10680) | +| `--hm-sw-header-document-close-color` / `-document-close-hover-background` / `-document-close-hover-color` | `rgba(240,247,245,.7)` / `rgba(182,208,201,.2)` / `#F0F7F5` | 문서 닫기 X(사용자 추가, 구현값, §5.1.1) | +| `--hm-sw-header-layer-menu-width` / `-layer-menu-background` / `-layer-menu-border-color` / `-layer-menu-radius` / `-layer-menu-shadow` | 234px / `#27241D` / `#000` / 3px / `0 4px 8px rgba(16,48,38,.25)` | 레이어 Dropdown(§5.2) | +| `--hm-sw-header-layer-expanded-border-color` | `#081813` | 펼친 레이어 필드 테두리(Variant3) | +| `--hm-sw-header-layer-list-max-height` | 240px | 레이어 목록 내부 스크롤 시작 높이(구현값, 8행) | +| `--hm-sw-header-layer-row-hover-background` / `-layer-row-hover-color` | `#62533D` / `#FF5C00` | 레이어 행 Hover(26:10695) | +| `--hm-sw-header-layer-icon-hover-background` | `rgba(0,0,0,.25)` | 전구 Hover(눈꽃·자물쇠는 Hover SVG) | +| `--hm-sw-header-layer-chip-border-color` | `#C9C9C9` | 레이어 색상 견본 테두리 | +| `--hm-sw-header-layer-footer-border-color` / `-layer-detail-background` / `-layer-detail-color` / `-layer-detail-text-opacity` | `rgba(197,177,158,.15)` / `rgba(197,177,158,.15)` / `#FFF` / .35 | 레이어 상세 영역·버튼 | +| `--hm-sw-header-document-background` / `-document-border-color` | §10 B / `#0E4C3A` | 파일명, 홈 뒤, 창 영역, 인쇄 버튼 | +| `--hm-sw-header-object-background` / `-object-border-color` / `-object-radius` | §10 A / `#135643` / 6px | 객체 수정 면, 더보기 메뉴 테두리 | +| `--hm-sw-header-property-background` / `-property-border-color` / `-property-radius` / `-property-shadow` | §10 C / `#08251C` / 3px / §10 C | 5개 필드, 더보기 버튼 | +| `--hm-sw-header-pill-background` / `-pill-border-color` | `rgba(0,0,0,.8)` / `#092920` | 인쇄·가이드 pill | +| `--hm-sw-header-stripe-color` | `rgba(28,106,81,.32)` | 창 이동 줄무늬 | +| `--hm-sw-header-window-icon-color` | `#ADB0AF` | 최소화 막대 | +| `--hm-sw-header-window-button-hover-background` / `-window-icon-hover-color` | `rgba(0,0,0,.2)` / `#FFF` | 최소화 Hover(Figma 26:12159). 종료 Hover는 Figma SVG(`close-hover.svg`) | +| `--hm-sw-header-text-outline-color` / `-text-outline` / `-label-outline` | `#000` / 1.3px 16방향 / 1px 16방향 | Text Stroke 검정 외곽선(§6.1) | +| `--hm-sw-header-text-outline-room` | 2px | 말줄임 상자 외곽선 여유. 이전 `--hm-sw-header-text-stroke-width`(0.6px) / `-solid-stroke-width`(0.8px)는 2026-10-16 제거 | +| `--hm-sw-header-menu-divider-color` / `-menu-divider-strong-color` | `rgba(197,177,158,.15)` / `.25` | 새 Dropdown 열 구분선·하단 테두리(§5.3) | +| `--hm-sw-header-menu-list-max-height` / `-color-palette-max-height` | 240px / 118px | 긴 목록·사용자 색상 내부 스크롤 시작(구현값) | +| `--hm-sw-header-color-mode-color` / `-color-mode-background` / `-color-mode-on-background` | `#D4CBBD` / `rgba(98,83,61,.3)` / `#62533D` | ByLayer / ByBlock | +| `--hm-sw-header-color-pick-background` / `-color-chip-border-color` / `-color-input-border-color` | `#C5B19E → #5F554C` / `#C9C9C9` / `rgba(197,177,158,.2)` | 색상 추출, 22px 칩, 색상 입력 Hover·구분선 | +| `--hm-sw-header-input-color` / `-input-hover-border-color` / `-input-editing-background` / `-input-editing-border-color` | `#E60403` / `rgba(212,203,189,.25)` / `#0F0D0A` / `rgba(212,203,189,.3)` | `SWHeaderInput`(§5.5), caret 색 포함 | + +## 15. Figma 비교 결과와 의도적 차이 + +1920 × 49, Storybook `SW / Header / Default`에서 `getBoundingClientRect`로 측정했습니다. + +| 항목 | 판정 | 내용 | +|---|---|---| +| 전체 크기 49 / 면 48 | MATCH | | +| 면 좌표·폭(홈 0/80, 파일명 65/310, 객체 377/1301, 창 1680/240) | MATCH | | +| 필드 좌표·폭(467/234, 705/192, 901/284, 1189/164, 1357/164, 상세보기 1521/157 y6) | MATCH | | +| 인쇄·가이드 pill(1683/85, y3), 창 이동(1768/88), 최소화·종료(1856, 1888 / 32) | MATCH | | +| 사용자 확정 3개 면(gradient·border·radius·shadow) | MATCH | computed style 확인 | +| Assets 12개 위치·크기, 임시 URL 없음 | MATCH | | +| 문서 Dropdown(위치 x 63–375 / y 48, 312 × 170, 항목 32, 하단 40, 색·테두리·radius·그림자, 열린 상태 노란 글자·위 화살표) | MATCH | 2026-10-16 Storybook `Document Dropdown`에서 측정. §5.1 | +| 문서 Dropdown 열기 방식(Figma `hover` Variant → 클릭) | APPROVED DIFFERENCE | 사용자 지시 | +| 레이어 Dropdown(필드 234 × 38, 목록 234 × 280, 행 30, 아이콘 20, 견본 16, `#27241D`·`#62533D`·`#FF5C00`, 아이콘 Hover, 레이어 상세, 펼침 외곽선) | MATCH | 2026-10-16 Storybook `Layer Dropdown`에서 측정. §5.2 | +| 레이어 Dropdown 열기 방식(Figma hover → Variant3 → 클릭) | MATCH | 사용자 지시와 Figma 흐름 동일: Hover는 테두리만, 클릭 시 펼침 | +| 레이어 상세 버튼 폭(Figma 글자 75 → 69.3, 버튼 107.3) | APPROVED DIFFERENCE | 글꼴 차이(Dotum → Noto Sans KR) | +| 눈꽃·자물쇠 컬러 = 동결 해제·잠금 해제 | APPROVED(사용자 확정 2026-10-16) | Figma에는 의미 정의 없음, 사용자 지시로 확정(§5.2.1). 실제 호스트 반영은 NOT VERIFIED | +| 현재 레이어 이름 `#FFC600`, 목록 높이 상한 240px, 좁은 폭 왼쪽 이동 | 구현값(Figma 없음) | 문서 Dropdown 규칙 확장 / 8행 기준 / 화면 밖 넘침 방지 | +| New / Open 버튼 폭 54 / 47 → 55.4 / 50 | APPROVED DIFFERENCE | 글꼴 차이(Dotum → Noto Sans KR) | +| 로고 이미지 | APPROVED DIFFERENCE | Figma 이지빔 로고 대신 프로그램별 로고(`logoSrc`/`logo`). 로고 영역 위치·크기는 MATCH. §9.1 | +| 글꼴 Dotum → Noto Sans KR, Bold 표기 → 700 | APPROVED DIFFERENCE | 글자 폭이 넓어 값 텍스트 위치가 수 px 다름 | +| 글자 겹침 레이어(검정+밝은색) → 단일 밝은색 | ~~APPROVED DIFFERENCE~~ → 2026-10-16 복원 | §6.1 Text Stroke. 남은 차이: Noto 700 + Stroke가 Dotum + Stroke보다 약간 굵음 | +| 색상·선스타일·문자·치수 Dropdown 구조·크기·색 | MATCH (2026-10-16 측정) | §5.3. 차이: 선 종류 열 182 → 187.2(Noto 글자 폭), 문자스타일 글꼴 칸 38 → 내용 폭, 상세 pill 글자 폭 | +| Dropdown 독립 버튼 Hover | APPROVED DIFFERENCE | Figma Hover Variant 있음, 사용자 정책으로 Hover 효과 없음(§5.3) | +| 레이어 상세 버튼 Hover(.25 / radius 25) | APPROVED DIFFERENCE | 같은 정책(§5.5) | +| Input Default / Hover / 편집 / 커서 | MATCH (58 × 20 / 58 × 24 / 58 × 24, caret `#E60403`) | caret 높이 14px은 NOT VERIFIED(네이티브) | +| 선택 시 레이어 상태 아이콘 색 유지 | APPROVED DIFFERENCE 후보 | 다색 상태 아이콘 의미 보존. 확정 필요 | +| 파일명 화살표 SVG → CSS 삼각형 | APPROVED DIFFERENCE 후보 | 선택 색 전환용, 크기·색 동일 | +| 홈 버튼 Hover | MATCH | Figma hover SVG 그대로 사용(26:10655) | +| 최소화 Hover(배경 검정 20%, 막대 흰색, 32 × 48) | MATCH | Figma 26:12159 값과 computed style 비교(§11.2) | +| 종료 Hover(`#E40000` 32 × 48, 흰 X) | MATCH | Figma 26:12166 SVG 그대로 사용(§11.2) | +| 인쇄·팝업 가이드 Hover 아이콘 `#B6D0C9` → `#FFC600` | APPROVED DIFFERENCE(확장) | Figma Variant 없음. 2026-10-16 사용자 지시, 해당 fill만 바꾼 로컬 SVG(§11.2) | +| 다른 버튼 Hover 테두리 | APPROVED DIFFERENCE(확장) | Figma에는 홈 버튼 hover만 있음. 같은 gradient를 각 버튼 형태·radius에 맞춰 적용(2026-10-16 사용자 지시). §11.1 | +| Focus·Disabled 표현 | NOT VERIFIED | Figma에 Variant 없음, 구현값 | +| 반응형 단계(1800 / 1180 / 1080 / 900 / 640 / 520) | MATCH(정책) | 2026-10-16 사용자 지시에 따라 측정값으로 재설정, 필드 값 잘림 없음(390 레이어명 제외). §12 | +| 픽셀 단위 이미지 diff | NOT VERIFIED | Figma 스크린샷은 1024px 축소본만 확보, 육안·좌표 비교만 수행 | + +## 16. AI 재현 규칙 + +SW Header는 Figma Node 26:8944를 기준으로 구현한다. 사용자가 확정한 CSS와 반응형 정책을 우선하며, SW 전용 디자인 토큰을 사용한다. HMDesign 공통 UI의 전역 스타일을 변경하지 않는다. 동일한 디자인을 재현할 때 전체 헤더를 이미지로 대체하지 않고 재사용 가능한 컴포넌트로 구성한다. + +추가 규칙: + +1. 새 화면에서는 `@hm-design/sw`의 `SWHeader`를 그대로 쓰고 값·Callback만 연결한다. 헤더 DOM이나 class를 복사하지 않는다. +2. 하위 컨트롤만 쓸 때는 `` 안에 공개 하위 컴포넌트를 둔다. 소비 코드에서 `hm-sw-*` class를 직접 붙이지 않는다. +3. 색·gradient는 `--hm-sw-header-*` 토큰으로만 바꾼다. `@hm-design/ui` 토큰과 섞거나 같은 HEX라는 이유로 합치지 않는다. +4. Font Weight는 400 / 700만 쓴다(500은 허용되나 현재 미사용). 글자 외곽선은 Figma에 Stroke가 있는 텍스트에만 §6.1 토큰으로 적용한다(2026-10-16, 이전 "외곽선 없음" 규칙 대체). `font-weight`로 외곽선을 흉내 내지 않는다. +10. Dropdown 안 독립 버튼은 Hover 효과를 넣지 않는다. 목록 행은 Figma 행 Hover, Input은 Figma Hover를 따른다(§5.3, §5.5). Dropdown 항목은 패키지에 고정하지 않고 `id` 기반 배열 Props로 받는다. +5. 선택은 글자·단색 아이콘 `#FFC600`만 바꾸고 배경·테두리·그림자를 추가하지 않는다. Focus 표시를 지우지 않는다. +6. 기능이 화면에서 빠질 때는 반드시 더보기로 옮긴다. 필드를 줄여 값을 자르지 말고 기능을 옮긴다. 헤더 가로 스크롤을 만들지 않는다. +7. Figma Assets는 `packages/sw/src/assets/`의 원본 SVG를 쓴다. 임시 Figma URL·스크린샷 이미지를 쓰지 않는다. +8. 로고는 확정 디자인이 아니다. 공통 컴포넌트에 특정 SW 로고·브랜드명·파일 경로를 넣지 않고, 각 프로그램이 `logoSrc` 또는 `logo`와 `logoAlt`로 전달한다. 로고 영역의 위치·크기는 바꾸지 않는다. +9. Hover 테두리는 §11.1의 노란 gradient 1px을 사용한다. 배경·크기·그림자를 바꾸지 않고, 새 버튼도 같은 토큰과 대상 목록 규칙을 따른다. 텍스트·아이콘 예외는 §11.1·§11.2·§11.5를 따른다(5개 필드의 텍스트와 지정 미리보기는 §11.5, 최소화·종료는 Figma 전용 hover, 인쇄·팝업 가이드는 기존 테두리 + 지정 fill 변경). SVG는 원본의 해당 foreground fill만 바꾼 로컬 Variant를 사용하며 CSS filter를 쓰지 않는다. + +## 17. 향후 공통화 검토 참고 + +이번 단계에서는 통합하지 않습니다. 비교 시 참고합니다. + +| 구분 | 항목 | +|---|---| +| SW 고유(분리 유지) | 3개 확정 gradient 면, 홈·창 이동·pill 구성, 선택 `#FFC600`(배경 없음), 49px 헤더 구조 | +| 유사하지만 의미 다름 | 선택 노랑 `#FFC600`(HM 팝업 제목 노랑과 같은 값이나 역할 다름), 녹색 계열(HM `green-*` palette와 값 비교 필요) | +| 공통화 후보 | Noto Sans KR·400/500/700 정책, 더보기 메뉴(HM `DropdownMenu`와 기능 동일 — 스타일은 SW 전용), Focus 정책, 말줄임·no-scroll 반응형 원칙 | +| 비교 필요 | 필드 38px vs HM control height, radius 3/6 vs HM radius scale, Hover 색 | + +## 추가 수정 기준 — 속성창·K 가이드 (2026-10-16) + +사용자의 SW Header 추가 요청 A–H가 같은 날짜의 이전 규칙보다 우선합니다. 이 절은 과거 PASS 기록을 재판정하거나 덮어쓰지 않습니다. + +- 상세 5개는 높이 24px, 고정 폭 레이어 113 / 색상 99 / 선 128 / 문자·치수 142px입니다. Default 배경 `rgba(197,177,158,.15)`·radius 24 → Hover .25·radius 25, 아이콘 14·gap 4·가로 padding 10을 유지합니다. 레이어·색상·선·문자는 원본 Hover 아이콘으로 바뀌고 글자는 35%입니다. +- 치수 상세의 실제 Hover `26:10799`는 기본 아이콘·글자 100%입니다. `26:10802` Variant3(Hover 아이콘·글자 35%)와 혼합하지 않습니다. Hover는 Callback을 호출하지 않고 기존 클릭·disabled·focus-visible을 유지합니다. +- ByLayer/ByBlock은 Hover 글자 `#FF5C00`, 선택 배경 `#62533D`·기존 Inset Shadow를 유지합니다. 항상 하나만 표시되고 같은 모드 재클릭은 Callback을 호출하지 않습니다. 처음 모드를 지정하지 않으면 ByLayer입니다. +- `colorMode=null`의 기존 직접 색상 API 의미는 유지합니다. 필수 모드 **표시**는 마지막 유효한 모드를 기억하며 팔레트 선택·직접 입력으로 지워지지 않습니다. 모드 표시를 색상 데이터 변경으로 해석하지 않습니다. +- 레이어·선·문자·치수 목록의 Hover/Selected는 배경 `#62533D`·글자/선 `#FF5C00`로 동일합니다. 치수는 기존 Hover SVG를 씁니다. 마우스가 다른 행으로 이동해도 선택 행 강조는 남고 Props의 id 변경으로 이동합니다. 문서 목록과 상단 필드의 기존 노랑 정책은 유지합니다. +- 지정된 일반 `-webkit-text-stroke-width: var(--hm-sw-header-text-stroke-width)` 선언과 미사용 변수는 제거했습니다. 검정 `text-shadow`, 상세 pill의 별도 `--hm-sw-header-solid-stroke-width`, SVG/Border/선 Stroke는 보존했습니다. +- 속성창 `26:11822`는 `SWHeaderPropertyPanel` 하나가 외부 선택·항목·그룹·펼침 데이터로 렌더링합니다. 선택 없음/전체/단일 원/공통 항목 확장의 Story fixture는 314×256 / 314×361 / 314×658 / 314×754px입니다. CAD 값 계산과 객체 변경은 하지 않습니다. +- 너비 314px, 내용에 따른 높이, viewport 경계 보정, 내부 세로 스크롤, non-modal dialog(`aria-modal=false`)입니다. Dim은 없습니다. 기존 속성창 버튼 또는 More → 속성창으로 열고 재클릭·X·Escape로 닫습니다. 닫으면 보이는 원래 버튼/More로 Focus를 돌립니다. +- 항목은 id·이름·값·type·groupId·order·readOnly·disabled·validate·unit·Callback을 갖습니다. Text/Number/Select/Color/Slider/Computed를 지원합니다. `SWHeaderInput`을 재사용하고 Enter/Blur 확정·변경 없는 중복 보고 방지·Escape 취소·외부 값 반영을 적용합니다. 선택 id 교체/항목 삭제는 편집 임시값을 폐기합니다. 그룹 펼침은 값 변경과 분리됩니다. +- 공통 입력 외 Circle 레이아웃은 원본 208px SVG와 호스트 수치/graphicSlot을 결합하고, Position 레이아웃은 동적 열을 사용합니다. 원형 항목의 추가 일반 속성도 도형 아래에 배치됩니다. 모든 fixture 숫자·객체 종류/개수는 Storybook 데이터입니다. +- 내부 아이콘 29×27.13px은 원본 Default/Hover/Active SVG를 사용합니다(원본 SVG export root는 29×28로 반올림되며 root를 재조정하지 않습니다). 금색 Active 테두리와 다시 클릭하면 Default로 돌아가는 상태를 보존합니다. 현재 저장소에 CAD 액션 계약이 없어 `toolActive/onToolActiveChange/toolLabel`을 통해 호스트에만 알립니다. +- 닫기 버튼 44×30px은 속성창 전용 원본 SVG입니다. Hover는 빨강/흰 X이며 Header 창 종료와 별개입니다. +- K 버튼은 기존 40×38px 버튼 하나를 유지합니다. 하단 가이드는 원본 이미지/마스크·208×149px·금색 경계·짙은 녹색·문구를 유지합니다. 표시 Fade는 511ms입니다. +- K 원본 이미지 Pan/Zoom은 400ms 지연 → 1022ms 전환 → 100ms 지연 → 1022ms 전환 → 150ms 지연 → 511ms 전환입니다. 마지막 화면은 400ms 유지 후 511ms로 처음에 복귀합니다(반복을 위한 구현값). 재진입은 처음부터 재생하고 영역을 떠나면 타이머를 정리합니다. Reduced Motion은 첫 프레임 정지 이미지입니다. +- 버튼과 가이드는 한 Hover/Focus 영역입니다. 기존 640px Breakpoint 아래에서는 K 버튼을 추가 생성하지 않고 기존 More의 팝업 가이드 항목 Hover/Focus에 같은 가이드를 연결합니다. 기존 창 이동 1400ms CSS와 자산은 변경하지 않습니다. +- 이 패키지는 HM UI와 독립된 SW control library이므로 panel의 native label/select/range는 SW 전용 스타일·실제 control id로 연결합니다. HM UI의 Label이나 Select를 새 의존성으로 추가하지 않습니다. Story의 외부 데이터 조작 버튼은 테스트 호스트입니다. + +검증·차이·NOT VERIFIED는 [추가 검증 기록](./sw-header-additional-verification-2026-10-16.md)을 확인합니다. + +## 후속 5개 요구사항 기준 (2026-10-16) + +- **속성Bar 26:10492:** 최대 1222×28px, #271F13, 좌우·하단 1px #08251C, 하단 radius 6px, inset 0 4px 4px black 60%. 객체명 90px·#FFC600, 필드간 16px·라벨/값 간 6px, 라벨 #F6F4F2·입력 #E60403. 기존 Noto Sans KR 400/700 정책과 SWHeaderInput을 재사용하므로 Dotum 원본과 획·폭은 다릅니다. 기존 Header 49px 아래의 별도 strip이며 객체 수정 영역에 정렬하고 좁으면 내부 가로 스크롤합니다. 실제 CAD 계산은 없습니다. +- **동적 데이터:** 속성창과 동일 SWHeaderProperty/Selection 레코드, onPropertyChange를 공유할 수 있습니다. id/order/name/value/validation/readOnly/disabled는 외부 데이터이며 Enter/Blur·Escape·외부 변경·삭제 draft 폐기를 적용합니다. Bar와 Panel 열림은 독립적입니다. +- **컨트롤 구성:** 선택적 controls allowlist로 파일·레이어·색상·선/문자/치수스타일·속성Bar·속성창·상세보기 caption·그리기모드·인쇄·K를 개별 제거/숨김/재추가/재정렬/허용 라벨 변경합니다. 미전달 시 기존 기본 디자인을 유지하며, 구성 모드에서만 개별 순서대로 한 영역에 배치합니다. 홈·창 제어는 공통 프레임으로 유지합니다. 기존 Breakpoint와 More 대표 정책은 남은 항목에 적용합니다. +- **Text Stroke:** Text Stroke Story의 지정 header 원본 스크린샷 블록과 전용 import만 제거했습니다. 원본 PNG·다른 비교 Story·타이포그래피·색상·검정 text-shadow는 보존합니다. +- **반복 선언 원인:** src/theme/sw.css 원본 1394행(작업 전)에 별도 solid-stroke-width 참조가 실제 존재했습니다. build.mjs는 src 진입점의 CSS를 dist/styles.css로 재빌드하고 Storybook은 공개 dist CSS를 불러옵니다. 별도 생성기가 해당 선언을 추가하는 증거는 없으며 build가 src를 역생성하지도 않습니다. 원본 선언과 유일한 변수 정의를 제거했습니다. 과거 `text-stroke-width` 제거와 다른 수정입니다. 과거 사용자가 편집한 파일 위치·캐시는 직접 재현할 수 없으므로 특정 사용자 행위를 원인으로 단정하지 않습니다. +- **btn_colorize 26:11301:** 색상 메뉴의 기존 색상 추출 버튼에 Default 26:11302 / Hover 26:11305 SVG를 로컬 자산으로 저장해 연결했습니다. 24×24 버튼, 18×18 아이콘, radius 3, gradient #C5B19E→#5F554C, 기본 border black40%, drop shadow 0 2px 2px black40%. Hover border #DA6813·black25% overlay·Hover 전용 SVG, Mouse Leave 복원. 키보드 focus-visible와 접근성 이름을 제공합니다. 클릭은 기존 onColorPick이며 색상 값/모드를 바꾸지 않습니다. +- **Overlay:** 26:11338은 현재 구현에 없고 호스트 API 연동 대상입니다. 임의 색상창을 생성하지 않았습니다. +- **재사용 근거:** 신규 업무 페이지가 아닌 독립 SW component package 수정입니다. SWHeaderInput/Property 타입/기존 메뉴·More를 재사용했습니다. HM UI 의존성·FilterBar·일반 Navigation은 이 구성요소의 역할에 맞지 않아 추가하지 않았습니다. native label은 실제 input id를 연결하며 기존 패키지 독립성을 유지합니다. + +새 검증과 과거 기록은 [후속 검증 기록](./sw-header-followup-five-verification-2026-10-16.md)에서 구분합니다. + + + +## 3차 기준 — 구성요소 표시·메뉴 순서·속성창 상태·형상 Slot (2026-10-16) + +- **로고 필수:** 로고 슬롯(32×17, 홈 배경 위 12,16)은 모든 구성에서 표시합니다. `home` 제거 시 같은 배경·위치의 정적 로고(Hover 없음)입니다. +- **개별 제거:** `hiddenControls`로 홈·파일·그리기모드·5개 메뉴·상세보기 caption·속성Bar·속성창·인쇄·K·창 이동·최소화·종료를 각각 제거합니다. 남은 요소는 기본 크기를 유지하고 제거한 공간은 남기지 않습니다(구현값: 상세보기 블록 일부 제거 시 폭 auto·최소 64px, 인쇄/K pill과 창 버튼은 남은 버튼 폭, 창 영역 폭 auto). 아무것도 제거하지 않으면 기존 1920px 디자인과 동일합니다. +- **창 이동 Tooltip(구현값):** 최소화·종료 중 하나 이상을 제거하면 창 영역 오른쪽 밖은 잘리고(Header 밖 노출 방지), 1080px 미만 24px 이동 영역의 Tooltip은 이동 영역 왼쪽에 표시합니다. 기본 구성의 1400ms Motion·위치는 변경하지 않았습니다. +- **메뉴 순서:** `menuOrder`는 5개 유사 메뉴끼리만 자리를 바꿉니다. 기본은 레이어 → 색상 → 선스타일 → 문자스타일 → 치수스타일(Figma 26:8944)입니다. +- **More:** Breakpoint는 그대로입니다. 제거된 메뉴는 More에도 없고, More 목록은 현재 순서를 따릅니다. 대표 슬롯은 레이어(없으면 순서상 첫 메뉴)이며 More 선택 메뉴가 대신합니다. +- **속성창 4상태:** 26:11886 314×256, 26:11823 314×361, 26:11932 314×658, 26:12035 314×754 — 같은 SWHeaderPropertyPanel과 데이터로 구성하며 Storybook 실측이 일치합니다. +- **형상 Slot:** Figma 26:11932 `Group 2937`(219×260) 안 `Group 2920` 208×208 그림 영역을 `.hm-sw-property__shape`(그룹 콘텐츠 기준 39, 26)로 분리했습니다. 기본 내용은 기존 Figma 원형 SVG(`property-circle.svg`)입니다. 비움·외부 컴포넌트에도 라벨 위치와 패널 높이는 같습니다. +- **Figma와 남은 차이(기존 구현 유지):** Figma 라벨 x 위치는 원주 111.5/지름 102/반지름 152.5/면적 98.5이고 구현은 113/100/154/100(1~2px, 기존 값), 지름 y는 Figma 108·구현 110입니다. 이번 범위에서 값 변경은 하지 않았습니다. + +## 18. 속성창 입력·선택 필드 (2026-10-19) + +Figma 26:12388 ~ 26:12649의 필드 13개 상태입니다. 상세 수치·검증은 [속성 필드 검증 기록](./sw-property-fields-verification-2026-10-19.md)을 따릅니다. + +- 공통 행 필드: 200 × 28, radius 2. Default는 값만, Hover는 `1px rgba(33,29,19,.4)`. 테두리는 Default에도 투명 1px로 있어 상태가 바뀌어도 값이 움직이지 않습니다. +- 숫자 편집 On(선축적 26:12314, 두께 26:12590, 선가중치·투명도 26:12649): `#0F0D0A`, 단위 흰색, 값 검정 외곽선, 빨간 caret. 선가중치·투명도 값은 41px 내외 Hug(pl 6 / pr 4). +- Dropdown On(레이어 26:12265 / 26:12291, 선스타일 26:12404, 색상 26:12184): `#211D13`. 레이어·선스타일 목록은 필드 오른쪽 끝, 색상 목록은 왼쪽 끝에 맞춰 필드 바로 아래에 열립니다. 목록 내용은 Header Dropdown과 같은 공유 컴포넌트입니다. +- 하이퍼링크(26:12583)·재료(26:12574)는 Figma에 On이 없어 Default·Hover만 적용합니다. +- 색상 26:12170의 `255,259,0`은 Figma 표기 예시이며 입력 검증은 0~255를 유지합니다. diff --git a/docs/sw/sw-header-detail-buttons-verification-2026-10-16.md b/docs/sw/sw-header-detail-buttons-verification-2026-10-16.md new file mode 100644 index 0000000..44efb3e --- /dev/null +++ b/docs/sw/sw-header-detail-buttons-verification-2026-10-16.md @@ -0,0 +1,45 @@ +# SW Header 상세 버튼 5개 공통화 검증 — 2026-10-16 + +1. **최종 판정: PASS(요청 범위 / Chromium).** 실제 Pointer Hover를 포함한 주 검증 256건, 보존 확인 15건 PASS. 범용 Guard의 미검증은 아래 15번에 별도로 남깁니다. 과거 보고서를 덮어쓰지 않았습니다. + +2. **시작 Git:** `D:\디자인시스템\HMDesign-SW`, `feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c`. `M package.json`, `M package-lock.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`가 작업 전부터 있었습니다. 해당 미커밋·미추적 작업을 보존했습니다. 작업별 경로·브랜치 및 Commit/Push 보류 지시를 적용했습니다. + +3. **기존 구조:** 색상·선·문자·치수는 `SWHeaderDropdown.tsx`의 내부 공통 `SWHeaderMenuDetail`을 사용했으나 `disabled={!onClick}`으로 Callback 부재 시 Hover가 차단됐습니다. 레이어는 별도 JSX, 치수는 글자 100%·Default 아이콘을 사용하는 별도 Hover 규칙이 있었습니다. + +4. **공통화:** 기존 `SWHeaderMenuDetail`을 보완하고 레이어까지 연결했습니다. 새로운 중복 컴포넌트나 공개 export는 추가하지 않았습니다. `SWHeaderMenuDetailProps`는 native `ButtonHTMLAttributes`를 확장하며 `label`, `icon`, `onClick`, `disabled`, `className`, `aria-label` 등을 지원합니다. 장식 아이콘과 접근성 이름을 구분합니다. 레이어의 기존 class와 토큰 이름은 유지했습니다. 상태 CSS는 `.hm-sw-header__menu-detail` 한 곳에서 관리하고 버튼별 CSS에는 폭만 남겼습니다. + +5. **문자스타일 기준:** Figma 파일 `rj6wpsfk24lOWvWiVRAANP`, Default `26:10789` / Hover `26:10792`를 Plugin API 읽기와 스크린샷으로 확인했습니다. 변경 전 실제 문자스타일 버튼을 브라우저로 측정한 `detail-button-qa/baseline.json`의 `textDefault` / `textHover`가 구현 기준입니다. Figma의 배경 .15/.25, radius 24/25, 14px 아이콘, gap 4, padding 5/10, 글자 35%, 아이콘 내부 SVG 20%/35%와 일치합니다. Disabled 전용 Figma Variant는 이 2개 노드에 없으며 현재 Default 외형을 보존하고 클릭만 차단했습니다. + +6. **Default 5개:** 레이어 113×24, 색상 99×24, 선스타일 128×24, 문자스타일 142×24, 치수스타일 142×24px. 전부 배경 `rgba(197,177,158,0.15)`, 글자 `rgb(255,255,255)`와 opacity .35, radius 24px, border 0, box-shadow none, Text Stroke 0px. 아이콘 요소 opacity는 1이며 SVG path 내부 opacity .2입니다. 기존 레이블·아이콘을 유지했습니다. + +7. **Hover 5개:** 실제 `locator.hover()` 후 전부 배경 `rgba(197,177,158,0.25)`, radius 25px, 글자 opacity .35, SVG path .35로 전환. 밝은 치수 예외는 제거했습니다. Mouse Leave 시 5개 모두 Default로 복귀했습니다. CSS 강제 pseudo 상태만으로 PASS 처리하지 않았습니다. + +8. **Disabled:** 명시적 `disabled`만 적용하며 Callback 유무와 분리했습니다. 5개 모두 Default 외형 유지, 실제 포인터 클릭 시 Callback 없음. Hover 차단, 키보드 포커스 제외는 native disabled 동작입니다. 기존 fieldset disabled도 native `:disabled` 규칙을 따릅니다. 일반 버튼은 키보드 Focus-visible 윤곽선을 유지합니다. + +9. **Callback:** 비교 Story에서 각 일반 버튼 클릭 1회·Enter 1회와 Disabled 클릭 차단을 확인했습니다. Callback 없는 5개도 실제 Hover·클릭을 수행했고 오류가 없습니다. 실제 Dropdown 5종에서 기존 `onLayerDetail` / `onColorDetail` / `onLineStyleDetail` / `onTextStyleDetail` / `onDimensionStyleDetail` 호출·닫힘·필드 Focus 복귀를 확인했습니다. 호스트 Callback이 없으면 실행·팝업·CAD 처리를 흉내 내지 않고 무동작입니다. + +10. **Computed Style 차이:** 동일 상태의 5개 스타일은 변경 전 문자스타일 기준과 비교하여 차이 0(폭·텍스트의 의도된 차이 제외). 배경·color·opacity·border·radius·box-shadow·글자색/opacity/Stroke·아이콘 opacity/content를 비교했습니다. 행 Hover는 선·문자·치수 목록에서 기존 `rgb(98,83,61)` 유지. 상세 버튼 외 목록/Selected/상단 Header Hover 규칙은 수정하지 않았습니다. 전체 실측값은 [주 검증 JSON](./detail-button-qa/verify-result.json)에 있습니다. + +11. **Story 및 회귀:** 기존 31개 유지 + verification Story 1개 = **32개 렌더 PASS**, page/console 오류 0. Default·Controls 2개 Story 각각 10폭(1920/1800/1440/1180/1080/900/768/640/520/390)에서 Header 포함 99개 요소의 위치·크기·display·visibility·color·background를 전후 비교해 차이 0. 11개 구성 프리셋×7폭 = **77/77 PASS**(메뉴 DOM 순서·제거·Header 높이·overflow 및 More 비어 있지 않음). 390/768/1280/1440에서 Header·문서 가로 overflow 0. 속성창 4상태는 314×256/361/658/754px, 창 이동은 3개 1400ms 애니메이션과 Leave 정리, K는 511ms 진입과 Leave 닫힘, Colorize 24px, 기존 편집 Input과 caret 색을 확인했습니다. [보존 확인 JSON](./detail-button-qa/preservation-result.json). 속성Bar·형상 Slot을 포함한 기존 Story가 렌더링됐으며 그 기능 소스는 수정하지 않았습니다. 기존 각 Story의 모든 상호작용을 전수 재검사했다는 뜻은 아닙니다. + +12. **Typecheck / Build:** `npm.cmd run typecheck:sw`, `npm.cmd run build:sw`, `npm.cmd run typecheck` 모두 exit 0. Root typecheck의 pretypecheck가 package build를 수행한 후 동일 산출물을 사용해 `npm.cmd --ignore-scripts run build`, `npm.cmd --ignore-scripts run build-storybook`을 실행해 exit 0을 확인했습니다. 후속 Story 설명 수정은 Storybook만 다시 빌드했습니다. 기존 `bg-[var(...)]` CSS 최적화 경고와 chunk 크기 경고가 있으며 빌드 실패는 없습니다. 로그는 `detail-button-qa/root-typecheck.log`, `root-build.log`, `storybook-build.log`에 있습니다. 최종 브라우저 검증은 정적 Storybook 빌드를 로컬 HTTP로 제공해 실행했습니다. 패키지 재빌드 중 dev HMR 404가 발생한 시험은 PASS로 사용하지 않았습니다. + +13. **변경 파일:** `packages/sw/src/components/sw-header/components/` 아래 `SWHeaderDropdown.tsx`, `SWHeaderLayerMenu.tsx`, `SWHeaderStyleListMenus.tsx`, `SWHeaderColorMenu.tsx`, `SWHeaderLineStyleMenu.tsx`; `packages/sw/src/theme/sw.css`; `src/sw/sw-header.stories.tsx`, `src/sw/sw-stories.css`; `docs/sw/sw-header-usage.md`, `docs/sw/sw-header-design-spec.md`; 신규 `packages/sw/tests/detail-buttons.browser.mjs`, 이 보고서, `docs/sw/detail-button-qa/` 증거. Color/Line 파일은 Callback 설명 주석만 갱신했습니다. Build가 gitignored `dist`·`storybook-static`도 갱신했습니다. `package.json`/lock·UI/OrgChart/Center Graphic/기존 공개 export·기존 `_local/` 파일은 편집하지 않았습니다. + +14. **남은 디자인 차이:** Figma Dotum Regular와 현재 Noto Sans KR 700의 글리프 형태·굵기 차이는 기존대로입니다. Figma TEXT의 .4px Stroke와 달리 현재 구현의 상세 글자 Stroke는 0px이며, 사용자가 제거 유지 지시한 선언을 복구하지 않았습니다. 버튼 간 Default/Hover/Disabled 불일치는 발견하지 못했습니다. Figma와 현재 버튼 차이는 이번 요청의 우선순위에 따라 현재 문자스타일을 유지했습니다. + +15. **NOT VERIFIED:** 실제 CAD/설치형 SW 호스트의 상세 팝업과 명령 적용, Firefox/Safari, 스크린리더 실제 낭독, 전체 Story의 모든 기존 상호작용 및 전 화면 픽셀 diff. 범용 Guard는 `status/staticStatus=NOT VERIFIED`, FAIL 0입니다. 원인: `@hm-design/sw/styles.css` resolver 및 native 버튼 재사용 판정은 범용 UI 검사로 자동 확정되지 않음. SW는 기존부터 UI와 독립된 컴포넌트 패키지이며 내부 버튼을 보완한 작업입니다. Guard 원본의 `styleEvidence`는 STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED이며 checks가 빈 배열이므로 SW CSS가 모두 검증됐다는 의미로 사용하지 않습니다. 원본 [guard.json](./detail-button-qa/guard.json)을 덮어 승격하지 않고 위 브라우저·Figma 근거를 별도로 제시합니다. + +16. **종료 Git:** `feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c`; 상태 표시는 시작과 같은 `M package.json`, `M package-lock.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`이며 SW 디렉터리 안에 이번 변경이 추가됐습니다. 공식 원격 `main`도 같은 SHA를 읽기 확인했습니다. Stage/Commit/Push/PR/Merge/Publish/배포 없음. `git diff --check` 통과. + +재현: `node packages/sw/tests/detail-buttons.browser.mjs verify docs/sw/detail-button-qa static`, 추가 보존 확인은 `preservation` 모드. Chrome/Playwright 경로는 `SW_CHROME_PATH` / `SW_PLAYWRIGHT_PATH`로 바꿀 수 있습니다. 변경 전 baseline은 이 작업 시작 상태이며 새로 덮어쓰면 기존 회귀 비교 기준이 바뀝니다. + +비교 이미지: [Default](./detail-button-qa/comparison-default.png), [실제 Pointer Hover](./detail-button-qa/comparison-pointer-hover.png). + +시간 기록(Asia/Seoul, KST): + +- Started At: 2026-10-16 17:47:45 +- Completed At: 2026-10-16 18:01:40 +- Actual Duration: 13분 55초 +- Estimated Duration: 최초 30~50분 +- Variance: 예상보다 16분 05초~36분 05초 짧음 diff --git a/docs/sw/sw-header-dropdowns-stroke-input-verification-2026-10-16.md b/docs/sw/sw-header-dropdowns-stroke-input-verification-2026-10-16.md new file mode 100644 index 0000000..edae17d --- /dev/null +++ b/docs/sw/sw-header-dropdowns-stroke-input-verification-2026-10-16.md @@ -0,0 +1,114 @@ +# SW Header 검증 기록 — Figma Dropdown 8종 · More 대표 필드 · Text Stroke · Input (2026-10-16) + +> 이 문서는 이번 작업의 새 결과만 기록합니다. 이전 검증 기록([레이어 Dropdown](./sw-header-layer-dropdown-verification-2026-10-16.md), [속도·Composed Hover](./sw-header-speed-composed-hover-verification-2026-10-16.md), [창 이동 GIF](./sw-header-window-motion-gif-verification-2026-10-16.md), [창 이동 과거](./sw-header-window-motion-verification-2026-10-16.md))은 당시 결과로 보존합니다. 기준 명세: [디자인 명세 §5.3–§5.5, §6.1](./sw-header-design-spec.md). + +## 1. 범위와 환경 + +| 항목 | 값 | +|---|---| +| Worktree / Branch / HEAD | `D:\디자인시스템\HMDesign-SW` / `feature/sw-package` / `9407c85`(시작·종료 동일, Commit 없음) | +| 요청 | ① Figma 8개 Dropdown ② 반응형 More 대표 필드 ③ 헤더 전체 Text Stroke ④ Dropdown 내부 Hover 정책 + 추가 요청 ⑤ 레이어 상세 버튼 · 수정 가능한 Input · 커서 · 문서 1개 기본 목록 ⑥ 동적 데이터 구조 | +| Figma | `rj6wpsfk24lOWvWiVRAANP` — 26:10986, 26:11036, 26:12666, 26:12659, 26:11104, 26:10702, 26:11181, 26:11215, 26:8944, 26:10767, 26:11656, 26:11664 (+ 행·input·상세 버튼 Variant). MCP `get_design_context` / `get_screenshot` + Plugin API 읽기 전용 스크립트(TEXT Stroke 전수 조사, Variant별 geometry) | +| Storybook | 이 Worktree의 dev 서버 `127.0.0.1:6024`(이미 실행 중이던 프로세스 사용) | +| 브라우저 검증 | Headless Chromium(Playwright, 다른 Worktree `HMDesign-OrgChart-Spike/node_modules`의 패키지를 읽기 전용으로 로드, 그 Worktree는 수정하지 않음). 스크립트·스크린샷은 세션 scratchpad(저장소 밖). 앱 내 Browser pane은 숨김 상태라 스크린샷이 갱신되지 않아 사용하지 않음 | + +## 2. Figma 8개 디자인 (PASS-A) + +브라우저 `getBoundingClientRect`(1920 프레임, 필드 기준 상대 좌표). + +| 노드 | Figma | 구현 측정 | 판정 | +|---|---|---|---| +| 색상 26:10986 | 필드 192 × 38, 목록 192 × 158 @ y38, ByLayer 그룹 (12.5, 10) 167 × 30, 팔레트 (12, 50) 168 × 22, 도구 (15, 82), 하단 y118 h40, 링 194 × 198 | 192 × 38 / 192 × 158 @ 38 / (12.5, 48−38=10) 167 × 30 / (12, 50) / (15, 82) / 118 × 40 / 링 | MATCH | +| 사용자 색상 26:11036 | 본문 182, 사용자 행 24 | 182 | MATCH(사용자 칩 왼쪽 정렬 수정 후) | +| ByLayer / ByBlock | 82.5 × 28, Default / on 배경·inner shadow, 글자 `#D4CBBD` | 82.5 × 28, `aria-pressed` 상호 배타, on `#62533D` | MATCH(Hover 정책 §5) | +| 선스타일 26:11104 | 필드 284, drop_wrap 468 × 192 @ (−92, 37), drop 466 × 190, 열 182/142/142 | 473.2 × 192 @ (−94, 37), 열 187.2/142/142 | **차이**: 선 종류 열이 "Continuous"(Noto) 폭에 맞춰 +5.2px | +| 선 종류 행 26:10702 | 182 × 30, p12, gap 8, 70 × 2 미리보기 @ (12, 14), Hover `#62533D` / `#FF5C00` | 187.2 × 30, 미리보기 (12, 14) 70 × 2, CENTER 22·7·22·7, HIDDEN 33·33, Hover 색 일치 | MATCH(폭 차이 위와 같음) | +| 문자스타일 26:11181 | 164, 행 30 × 2, 하단 40(왼쪽 정렬), 본문 100 | 164 × 100, 행 30, 하단 (0, 98) 40 | MATCH(글꼴 칸 38 → 내용 폭 최대 56) | +| 치수스타일 26:11215 | 164, 행 30, 미리보기 60 × 15 @ (12, 7.5), 하단 오른쪽 | 164 × 100, 미리보기 (12, 7.5) 60 × 15, Hover 자산 전환 | MATCH | +| 상세 pill(색상·선·문자·치수) | 14 아이콘, gap 4, p 5/10, `.15`, radius 24, 글자 35% | 같음, 폭은 Noto 글자 폭(색상 상세 94.1 vs Figma 99) | MATCH(글꼴 폭 차이) | + +자산: `color-pick.svg`(Figma `colorize`), `menu-dimension-row.svg` / `-hover.svg`(Figma 26:10729 행, mask id 외 동일 · Hover는 foreground fill 1곳만 다름). 상세 아이콘은 기존 `layer-detail.svg`가 Figma `ico_layer` Default와 동일해 재사용. `dist/index.js`·`dist/styles.css`에서 `figma.com/api/mcp/asset` 0건. + +## 3. 상호작용 · Callback · Keyboard (PASS-E) + +`Color Dropdown` Story의 호스트 예제(전 속성 연결)에서 실행, 26개 항목 모두 PASS: + +- Hover로 열리지 않음 / 클릭으로 열림(`aria-expanded`, `aria-controls` 연결). +- 칩 → `onColorSelect(red)` 1회, 필드 `241,4,4`로 갱신, 목록 유지. ByLayer → ByBlock: `aria-pressed` `false,true`. +- RGB `256,0,0` → `aria-invalid`, Enter 시 보고 없이 복원. `#00ff00` → `onColorInput(0,255,0)` 1회. caret `rgb(230, 4, 3)`. +- Escape 닫기 + 필드 Focus 복귀. ↓ 열기 + 눌린 항목 Focus, ↓ 다음 항목. +- 선스타일을 열면 색상 닫힘. 선 종류 HIDDEN → 가중치·스케일 유지, 가중치 ByBlock → 선 종류·스케일 유지, User 0.35 / 스케일 2.5 확정, 스케일 0 거부, Tab으로 마지막 항목을 벗어나면 닫힘, 편집 중 Escape는 편집만 취소(목록 유지). +- 바깥 클릭 닫힘. 문자스타일 / 치수스타일 선택 → 닫힘 + 필드 갱신. 다른 속성(레이어·색상) 유지. 문자스타일 상세 → `onTextStyleDetail` 1회 후 닫힘. +- 선택·입력 Callback 중복 0, 페이지 오류 0. + +## 4. 반응형 More 대표 필드 (PASS-B) + +`Responsive More` Story, 16개 폭(1920 · 1800 · 1799 · 1440 · 1180 · 1179 · 1080 · 1079 · 900 · 899 · 768 · 640 · 639 · 520 · 519 · 390) × 더보기에 있는 모든 필드 항목. **0 FAIL**. + +- 모든 폭: 헤더 49px, 헤더 가로 넘침 0, 객체 수정 영역 자식 겹침 0 · 영역 밖 0. ≥1800은 More 숨김(1920 배열 유지). +- 더보기 → 필드: 그 필드가 첫 칸, Dropdown 열림, Dropdown 좌·우가 헤더 안(390에서 선스타일은 세로 3단 191.2px), Focus = 그 필드, 겹침·넘침 0. → 레이어: 원래 배치, 레이어 Dropdown 열림. +- 1440 순서 테스트(선스타일 → 문자스타일 → 레이어): Callback = 각 `on*MenuOpenChange` + `on*Open` 1회씩, 데이터 Callback 0, 상태표(값) 변화 없음. +- 대표 슬롯 선택 근거: 객체 수정 영역 첫 칸(레이어 자리) — 1920 배열 첫 칸이며 모든 Breakpoint에서 남는 칸, 로고·파일명·창 제어와 분리. 최소 변경(CSS `order`·표시 규칙 + `SWHeader` UI 상태 1개). + +## 5. Dropdown 내부 Hover 정책 (PASS-D) + +- 독립 버튼(ByLayer · ByBlock · 칩 · 사용자 색상 · 색상 추출 · 상세 4종 · 레이어 상세): Storybook 전용 `data-sb-hover`로 Hover를 고정한 스크린샷이 Default와 동일. 레이어 상세는 computed style(배경 `rgba(197,177,158,.15)`, radius 24px, padding 5/10, 글자 .35) Default = Hover 고정. +- 목록 행 Hover 유지: 선 종류(1·4행), 가중치, 스케일, 문자·치수 행 = `#62533D` + `#FF5C00`(선 미리보기·치수 자산 포함). 현재 행 Hover는 이름 `#FFC600` 유지. +- Input Hover 유지(추가 요청): 1px `rgba(212,203,189,.25)`, 색상 입력은 `rgba(197,177,158,.2)`. +- 문서 Dropdown Hover(행 검정 40%, `+ New`/`Open` .3 / `#000`)는 변경 없음(computed 확인). + +## 6. Text Stroke (PASS-C) + +Figma 조사 결과와 구현 기준은 [명세 §6.1](./sw-header-design-spec.md#61-text-stroke-2026-10-16). Default Story computed style: + +| 요소 | text-shadow | 자기 색 Stroke | 판정 | +|---|---|---|---| +| 파일명, 그리기모드, 필드 값, 글꼴 미리보기, 속성Bar/속성창, 문서 목록 이름 | 검정 1.3px 16방향 | 0.6px(바깥 0.3) | PASS | +| 12px 라벨, 상세보기 caption | 검정 1px 16방향 | 0 | PASS | +| 레이어 상세 / `… 상세` 글자 | 없음 | 0.8px(바깥 0.4) | PASS | +| `+ New` / `Open`, 창 이동 Tooltip, 더보기 항목 | 없음 | 0 | PASS(Figma 없음 / 요청으로 유지) | +| Input 값(`#E60403`) | 검정 1.3px | 0.6px | PASS | + +- 8배 확대 비교: 검정 외곽선이 글자 바깥에 그려지고 Hover(`#FFC600`)·행 Hover(`#FF5C00`)에서도 유지. 말줄임 텍스트 외곽선 잘림 없음(`overflow-clip-margin` 2px). +- 남은 차이: Noto Sans KR 700 + Stroke는 Figma Dotum Regular + Stroke보다 약간 굵게 보입니다(Font Weight 정책 유지). 토큰으로 조정 가능. + +## 7. 레이어 상세 · Input · 커서 · 문서 1개 (추가 요청) + +| 항목 | 결과 | +|---|---| +| 레이어 상세 Default | 107.3 × 24(Figma 113 × 24는 Dotum 글자 폭), 배경·radius·padding·gap·글자 35% 일치. Hover 고정 = Default(무변화). Callback 없을 때 disabled + Figma 외형(opacity 1) | +| Input Default / Hover / 편집 | 58 × 20 / 58 × 24 / 58 × 24 — Figma와 동일. 글자 x 위치 Default = Hover(6px). 편집 `#0F0D0A` + 1px `.3`. ReadOnly는 20px 유지, Disabled 40% | +| 커서 | caret `#E60403`(computed). 깜박임·위치·선택은 네이티브. caret 높이 1 × 14 정밀 일치는 NOT VERIFIED | +| 편집 | 숫자 `12.75` Enter → `onCommit(12.75)`, `1.2.3` 복원, Escape → `onCancel` + 복원, 외부 값 `12.5` 반영, Tab(blur) 확정 | +| 한글 IME | CDP `Input.imeSetComposition`으로 조합 중 Enter 이벤트 → 확정 안 됨, 조합 완료 후 Enter → `한글` 확정. 실제 OS IME(Windows 한글 입력기) 수동 입력은 NOT VERIFIED | +| 문서 1개 기본 | Default Story에서 파일명 클릭 → 문서 1행(현재 문서 `#FFC600`, X 있음). `+ New` 55 × 24 / `Open` 50 × 24, 배경 .2, 글자 검정 70%, Hover .3 / `#000` — 기존 그대로 | + +## 8. 동적 데이터 (추가 요청) + +`Dynamic Data` Story: 선 종류 추가 · 순서 뒤집기(현재 항목 id로 유지) · 첫 항목 이름 변경(그 항목만), 현재 레이어 삭제(선택 표시 없음, 필드는 `layer` Props, 오류 없음), 레이어 추가, User 가중치 값 변경(그 행만), 문자스타일 14개(목록 240px 내부 스크롤, 헤더 49px), 문서 추가(2행, 현재 표시), 팔레트 삭제 · 사용자 색상 추가(6 + 3칩), 페이지 오류 0 — 13개 항목 PASS. + +## 9. 보호 대상 (PASS-F) + +- 기준 스냅샷(작업 시작 시 scratchpad 복사본)과 비교해 변경 없음: `SWHeaderLayerMenu.tsx`, `SWHeaderLayerIcons.tsx`, `SWHeaderWindowControls.tsx`, `SWHeaderDocumentTitle.tsx`, `SWHeaderHome.tsx`, `SWHeaderActions.tsx`, `SWHeaderProperties.tsx`. +- 창 이동 Motion CSS 블록과 `motion`이 들어간 모든 CSS 줄이 기준과 동일(1400ms · Keyframes · Drag 정지 · Reduced Motion). +- 레이어: 전구·눈꽃·자물쇠 클릭 → `onLayerVisibilityChange(layer-1, false)` · `onLayerFreezeChange(layer-1, true)` · `onLayerLockChange(layer-1, true)`, `onLayerSelect` 없음, 목록 유지, 아이콘 회색 — 확정 매핑 유지. `SWHeader`는 레이어 Dropdown 열림 상태를 제어형으로 전달(더보기 → 레이어 열기용)하며 레이어 컴포넌트 동작은 그대로. +- 1920 좌표: 레이어 467/234, 색상 705/192, 선 901/284, 문자 1189/164, 치수 1357/164, 상세보기 1521/157, 창 1680/240, 파일명 65/310, 높이 49 — 기준과 동일. +- 전체 17개 SW Header Story 렌더링 오류 0, 헤더 높이 모두 49px. + +## 10. 빌드 (PASS-G) + +| 명령 | 결과 | +|---|---| +| `npm run typecheck:sw` | PASS | +| `npm run build:sw` | PASS (`dist/styles.css` 70.71 kB, `dist/index.js` 239.32 kB) | +| `npm run typecheck`(루트, `build:packages` 포함) | PASS | +| `npm run build`(루트) | PASS. 기존 Tailwind `bg-[var(...)]` CSS 최적화 경고 1건·chunk 크기 경고는 이번 변경과 무관 | +| `npm run build-storybook` | PASS. SW Header Story 17개 index 확인(기존 10 + 신규 7) | + +## 11. 남은 차이 · NOT VERIFIED + +- 선 종류 열 182 → 187.2px(전체 468 → 473.2px), 문자스타일 글꼴 칸 38 → 내용 폭, 상세 pill 글자 폭: Dotum → Noto Sans KR 글자 폭 차이(글자 잘림 방지). +- Text Stroke 굵기 체감 차이(Noto 700 + Stroke vs Dotum Regular + Stroke). +- Figma 문자스타일 Variant3의 상세 버튼은 hover Variant(.25)로 배치되어 있으나 Hover 정책상 Default(.15)로 표시. +- 색상 선택 팝업("컬러칩 클릭", Figma "추후 디자인 진행예정")과 모든 `… 상세` 팝업 내부 화면: 미구현(Figma 전달 후). +- NOT VERIFIED: 실제 SW 호스트(설치형 SW / Electron)에서의 색·선·문자·치수 적용과 색상 추출, 실제 OS 한글 IME 수동 입력, caret 높이 14px 정밀 일치, Safari·Firefox의 `overflow-clip-margin`·`field-sizing`·`:has()` 렌더링(Chromium만 검증), 스크린리더 실제 낭독, 픽셀 단위 이미지 diff(좌표·computed style·확대 육안 비교만 수행). diff --git a/docs/sw/sw-header-firefox-range-close-verification-2026-10-19.md b/docs/sw/sw-header-firefox-range-close-verification-2026-10-19.md new file mode 100644 index 0000000..caeee97 --- /dev/null +++ b/docs/sw/sw-header-firefox-range-close-verification-2026-10-19.md @@ -0,0 +1,55 @@ +# SW 속성창 게이지 Firefox 지원 · 닫기 SVG · Storybook Build 검증 (2026-10-19) + +기준: `feature/sw-package` @ `fc26afd4401d5b3bb74c8818cacb76f669fcd24b`. 직전 후속 4건([검증 기록](./sw-header-followup-four-design-fixes-verification-2026-10-19.md))의 미커밋 변경 위에서 진행했다. + +## A. Firefox 게이지 + +- **원인:** 게이지 디자인이 `::-webkit-slider-runnable-track` / `::-webkit-slider-thumb`에만 정의돼 있었다. Gecko는 이 의사 요소를 쓰지 않아 기본 range 외형이 남았다. +- **방식:** Track 그림(채움 왼쪽 검정 선 + Figma 6926 채움 + 베이지 Track), Thumb 그림(`property-range-thumb.svg`), Thumb 그림자를 input의 custom property(`--hm-sw-range-track-paint`, `--hm-sw-range-thumb-paint`, `--hm-sw-range-thumb-shadow`)로 한 번만 정의했다. 엔진별 규칙이 이 값을 공유한다. + - WebKit/Blink: 기존 track + thumb(`margin-top: -4px`). + - Gecko: `::-moz-range-track`(6px, radius 3) + `::-moz-range-thumb`(14px, 자동 수직 중앙). `::-moz-range-progress`는 높이 0·투명으로 둬서 채움이 두 번 그려지지 않는다. + - 색·자산은 Chrome PASS 값 그대로이고, 새 색은 없다. 각 엔진은 자기 의사 요소만 인식하므로 다른 엔진에 영향이 없다. +- **검증:** `node packages/sw/tests/range-cross-browser.browser.mjs docs/sw/firefox-range-qa` → **29/29 PASS** ([result.json](./firefox-range-qa/result.json), [비교 이미지](./firefox-range-qa/compare-chrome-firefox.png)). + - 브라우저: Chrome 155.0.8059.80(Playwright), 설치된 **Firefox 158.0 실브라우저**(WebDriver BiDi로 직접 제어, Playwright Firefox 빌드 미사용). + - 조건: 같은 Story(`SW/Header/Property Panel` → 원 1개 → 속성창), 1400×1000, DPR 1, 같은 순서의 실제 키 입력. + - 두 브라우저 공통 확인: 빨강 채움, 베이지 Track, 위·아래 검정 1px의 6px 높이, Thumb 12px 검출 폭(14px 그림), Thumb 세로 중심이 Track 중심(8.0). + - 값 0 / 0.25 / 0.65(→ 40회) / 1(End) / 0(Home) / 외부 Props 0.8에서 Thumb 중심이 기대값 ±1px. + - Enter 확정 시 숫자 입력 0.65와 Callback `property(opacity, 0.65)` 확인. + - Disabled·ReadOnly: range가 비활성화되어 키 입력으로 값이 바뀌지 않고, 해제하면 복원된다. + - Chrome 대비 차이: 1,800픽셀 중 48 초과 차이는 최대 1px, 평균 채널 차이 1.2–2.1. 채움·Track 열 색은 ±1 이내. + - 남은 차이는 Track 아래 1px 하이라이트 행 하나다. Chrome #EADEC8, Firefox #EDE5D4로 Gecko의 box-shadow 안티앨리어싱 차이다. + - 최종 실행의 Thumb 중심(px)은 9개 상태 모두 두 엔진이 같다: 0 → 7, 0.25 → 25, 0.65 → 53, 0.8 → 64, 1 → 79. 이전 실행에서는 Chrome Focus 테두리가 포함돼 극값이 7.5 / 78.5로 측정됐다. +- **Focus-visible:** 기존 `.hm-sw-property input:focus-visible`(2px #A67D03) 규칙은 엔진 공통이다. + - headless Firefox는 BiDi 합성 키 입력에서 버튼·텍스트 입력까지 포함해 `:focus-visible`을 켜지 않는다(별도 대조 페이지에서 확인). + - 그래서 비교 스크린샷은 두 브라우저 모두 테스트 전용으로 outline만 숨기고 찍었다. Firefox Focus 링의 시각 확인은 NOT VERIFIED다. +- 콘솔: 두 브라우저 모두 컴포넌트 오류 0. Firefox에는 Storybook manager 글꼴(`/sb-common-assets/nunito-sans-regular.woff2`) 다운로드 실패 1건이 있으며, Storybook 인프라 항목이라 제외했다. +- Story: `PropertyPanelDemo`에 `투명도 외부 값 변경` / `투명도 Disabled` / `투명도 ReadOnly` 버튼 3개만 추가했다(공개 API 변경 없음). +- Chrome 회귀: 기존 `followup-four.browser.mjs` **39/39 PASS** 재실행. + +## B. 닫기 버튼 SVG (Figma 26:12366) + +- `property-close.svg` / `property-close-hover.svg` 모두 도구 아이콘과 같은 Figma 캔버스 4요소를 포함하고 있었다: `#F5F5F5` 44×30 배경, 흰 페이지 path, 10% 검정 페이지 테두리, `#9747FF` 점선 프레임. +- **실제 노출:** 버튼 몸체가 44×30을 덮고 패널의 둥근 모서리·overflow가 대부분을 가린다. 그래서 흰 테두리처럼 보이지는 않았다(가장자리 밝은 픽셀 0). 다만 오른쪽 위 radius 3 곡선의 안티앨리어싱 픽셀(4배율 기준 19 / 15개, 최대 채널 차이 67 / 35)에 밝은 캔버스가 섞여 있었다. +- **수정:** 두 파일에서 위 4요소만 제거했다. viewBox 44×30(버튼과 동일), 버튼 path·Gradient·Hover 빨강 #E40000·X 아이콘·Default/Hover 분리는 그대로다. +- **검증:** `node packages/sw/tests/property-close.browser.mjs docs/sw/property-close-qa after` → **6/6 PASS** ([before](./property-close-qa/before-result.json) / [after](./property-close-qa/after-result.json)). + - 크기 44×30, 패널 오른쪽·위 1px. + - Default/Hover 가장자리 밝은 픽셀 0, Hover 자산 표시 확인. + - 클릭 닫힘 + 속성창 버튼으로 Focus 복귀, Escape 닫힘 + Focus 복귀, 오류 0. + - 전후 차이는 위 모서리 곡선 픽셀뿐이다. +- `.hm-sw-property__tool` 관련 SVG는 이번에 수정하지 않았다. + +## C. Storybook Build + +- `npm run build-storybook`(prebuild: theme-defaults 검사 + 패키지 build 포함) → **exit 0, "Storybook build completed successfully"**. +- 경고 4종은 모두 기존 경고로 SW 변경과 무관하다: Tailwind `bg-[var(...)]` CSS 최적화, lightningcss `host-context`, 500kB 초과 chunk, PLUGIN_TIMINGS. 앞의 3종은 `docs/org-chart/consistency-review-p11-6.md` 등에 이미 기록돼 있다. +- 결과물 `storybook-static/assets/sw-header-*.css`에 `::-moz-range-track/progress/thumb` 각 1회, Thumb SVG data URI가 포함됐다. Story bundle의 SVG에는 `#F5F5F5` / `#9747FF`가 0건이다. + +## 재사용한 기존 PASS (재실행 안 함) + +Storybook 32개 렌더, 구성 77/77, 브라우저 271건, 기본 Header 10폭 차이 0. 공통 Header CSS·팝업 구조는 바꾸지 않았다(range 의사 요소와 닫기 SVG만 변경). + +## NOT VERIFIED + +- Firefox에서 키보드 Focus 링(`:focus-visible`)의 시각 표시. 자동화 입력 한계로 확인하지 못했고, 규칙은 엔진 공통 CSS다. +- 실제 Windows Firefox 창(비 headless)과 고배율(DPR 2) 렌더링. +- Safari(WebKit) 실브라우저. diff --git a/docs/sw/sw-header-followup-five-verification-2026-10-16.md b/docs/sw/sw-header-followup-five-verification-2026-10-16.md new file mode 100644 index 0000000..1529458 --- /dev/null +++ b/docs/sw/sw-header-followup-five-verification-2026-10-16.md @@ -0,0 +1,98 @@ +# SW Header 후속 5개 요구사항 — 최종 통합 검증 + +이번 요청의 구현·실행 범위에 대한 기록입니다. 과거 PASS 문서를 덮어쓰지 않으며 전체 HMDesign·CAD 호스트·배포 승인을 뜻하지 않습니다. + +1. **최종 판정: PASS — 요청한 구현 및 실행 검사 범위.** PASS-A~H를 확인했습니다. 별도 Figma 돋보기 Overlay 구현은 요청의 우선 구현 범위 밖인 호스트 연결 대상으로 남기며, Guard와 보조기기 등 미검증은 21번에서 분리합니다. + +2. **시작 Git:** `D:\디자인시스템\HMDesign-SW`, `feature/sw-package`, `9407c8567f57301659e591c03451cca1b828733c`. 기존 `M package.json`, `M package-lock.json`, `?? packages/sw/`, `?? src/sw/`, `?? docs/sw/`를 보존했습니다. 이번 요청의 명시 경로·브랜치·Commit/Push 금지가 일반 Gitea main 정책보다 우선합니다. 시작 파일을 QA baseline에 복사하고 SHA-256을 기록했습니다. + +3. **재사용:** 기존 Dropdown 8종·레이어 아이콘·Color/Number parser·SWHeaderInput·속성창 Property/Selection 타입·More·K 가이드·1400ms 창 이동·문서 목록·로고 슬롯·창 제어를 재사용했습니다. 다른 패키지 소스·기존 root manifest/lock은 수정하지 않았습니다. 원본 자산 45개와 과거 검증 문서 6개는 baseline과 바이트 단위로 같습니다. + +4. **속성Bar 디자인/크기:** 새 공개 `SWHeaderPropertyBar`. Figma 26:10492를 직접 확인해 최대 1222×28, #271F13, 좌우/하단 #08251C, 하단 radius 6, inset shadow를 구현했습니다. 독립 기준 Story 실측 1222×28px입니다. 연결된 바는 객체 수정 영역의 실제 왼쪽부터 부모의 남은 폭을 사용합니다. 1920px 실제 Header에서 바 1222×28, Header 49px을 확인했으며 x=377을 하드코딩하지 않았습니다. 기존 Noto Sans KR 정책의 차이는 20번을 따릅니다. + +5. **열기/닫기:** 기존 속성Bar 버튼 및 좁은 화면의 More를 연결했습니다. 미전달 시 내부 상태, propertyBarOpen/onPropertyBarOpenChange의 Controlled 상태, defaultPropertyBarOpen, 기존 onPropertyBarToggle을 지원합니다. 반복 클릭 닫기·외부 상태 변경을 확인했습니다. 바와 속성창은 동시 표시 및 독립 닫기가 가능하며, 바 토글이 다른 Dropdown 상태를 초기화하지 않습니다. 호스트 콘텐츠는 열린 바의 별도 28px 공간을 예약할 수 있습니다. + +6. **동적 데이터/검증:** 속성창과 같은 SWHeaderProperty/Selection 레코드 및 onPropertyChange를 공유합니다. 객체 교체·필드 추가/삭제·라벨·순서·값·외부 갱신·전체/개별 ReadOnly/Disabled, min/max/validate를 확인했습니다. Enter/Blur 확정·Escape 취소·유효하지 않은 값 복원·편집 중 필드 삭제 시 draft 폐기를 확인했습니다. 값은 호스트 데이터이며 원/수치/CAD 계산을 패키지 기본값으로 넣지 않았습니다. Bar의 select는 option id 입력 검사, slider는 숫자 편집, computed는 읽기 전용으로 처리합니다. + +7. **메뉴 단위 구성:** `controls?: readonly SWHeaderControlConfig[]`와 SWHeaderControlId를 공개했습니다. document/drawingMode/5개 메뉴/details/propertyBar/propertyPanel/print/popupGuide 각각을 allowlist로 구성합니다. 개별 제거·여러 개 제거·일부만 사용·모두 제거·재추가·visible:false/복원·배열 순서·허용 라벨 변경을 실제 UI로 확인했습니다. 파일명 데이터와 문서 접근성 접두사, K 아이콘과 접근성 이름을 구분했습니다. 컨트롤 내부 옵션 API는 기존과 같습니다. 설정 미전달 시 기존 1920px 디자인·계층을 유지하며, 설정 모드는 개별 컨트롤을 배열 순서로 같은 객체 영역에 배치합니다. + +8. **More/값/Callback:** 기존 Breakpoint를 유지합니다. 제거 항목은 More에서도 제외하고, 남은 레이어 또는 첫 필드를 대표로 사용하며 대표 삭제 시 대체합니다. More에서 필드를 선택하면 표시·열림·Focus가 연결됩니다. 재정렬은 keyed 노드를 유지합니다. 편집 중 메뉴의 구조적 제거는 draft를 폐기하고 불필요한 데이터 Callback을 보내지 않습니다. 일반 Dropdown 닫힘의 기존 commit 동작은 유지합니다. 재추가 시 외부 선택값은 보존하고 내부 Dropdown은 닫힙니다. 열린 메뉴 재정렬 시 경계 위치도 다시 계산합니다. 개별 컨트롤 하나만 남긴 7개 폭을 포함한 경계 검사 84/84가 통과했습니다. + +9. **Text Stroke Story:** 지정 제목·원본 스크린샷 영역·전용 import를 제거했습니다. 나머지 콘텐츠·실제 Header Typography/색상·다른 Figma 비교 Story는 유지했습니다. 원본 PNG 파일은 보존했습니다. + +10. **반복 선언의 원인:** 작업 전 원본 `packages/sw/src/theme/sw.css` 1394행에 정확한 solid-stroke-width 참조가 실제로 있었고 변수는 131행에 정의되어 있었습니다. `packages/sw/src/index.ts` → 원본 CSS, `build.mjs` → dist/styles.css, Story → 공개 `@hm-design/sw/styles.css` → dist의 경로를 확인했습니다. 원본과 산출물이 달랐으므로 dist만 삭제하는 방식은 다음 build 때 원본에서 다시 포함되는 구조입니다. 소스·빌드/복사 스크립트·Storybook import·중복 정의를 조사했고 별도 생성기가 이 선언을 추가하거나 dist가 src를 역생성하는 증거는 없습니다. 과거 사용자가 실제 편집했던 파일 위치나 당시 캐시까지 관찰한 것은 아니므로 그 행위를 단정하지 않습니다. + +11. **원본 수정:** `packages/sw/src/theme/sw.css`의 `:is(.hm-sw-header__layer-detail, .hm-sw-header__menu-detail) > span` Stroke 선언과 유일한 미사용 `--hm-sw-header-solid-stroke-width`를 제거했습니다. 덮어쓰기 `0`은 추가하지 않았습니다. 기존 text-shadow·다른 메뉴 텍스트·SVG·상세 버튼 크기 및 Hover는 보존했습니다. 이전 text-stroke-width 변수 제거와 구분한 새 수정입니다. + +12. **Build/HMR 재생성 방지:** 원본/패키지 dist와 최종 Storybook CSS 14개에서 해당 선언·변수 일치 0입니다. 실제 브라우저에서 5개 상세 버튼의 Default/Hover 및 열린 선택 필드 상태를 확인했습니다. 일시적 CSS 검사 표식을 원본에 넣고 패키지 빌드 → 브라우저 computed 반영 → 원본 복원·재빌드 → 표식 제거 반영 → 새로고침까지 실행했습니다. Vite WebSocket의 `/packages/sw/dist/styles.css` update와 computed 변경을 확인했습니다. CSS import는 Vite의 js-update 모듈 형태로 전달됩니다. 검사 표식은 최종 소스/산출물에 없습니다. 재생성 방지 HMR 검사 8/8입니다. 현재 브라우저에서 오래된 Stroke를 적용하는 캐시 증거는 없었습니다. + +13. **btn_colorize 비교:** Figma 26:11301 및 Default 26:11302 / Hover 26:11305 context·스크린샷을 직접 확인했습니다. 각각의 원본 SVG를 colorize-default.svg/colorize-hover.svg로 저장했습니다. 버튼 실측 24×24, 두 SVG의 원본·렌더 크기 18×18, radius 3, 지정 gradient·기본 border·drop shadow, Hover #DA6813 border·검정25% overlay·전용 SVG를 확인했습니다. 임시 Figma URL은 런타임에 없습니다. 기존 color-pick.svg는 기존 자산 보존 원칙으로 남겼습니다. + +14. **아이콘/Callback:** 기존 색상 메뉴의 색상 추출 위치를 교체했습니다. Default/Hover/Mouse Leave/키보드 focus-visible/Enter 클릭을 확인했습니다. Hover 시 Callback 없음, 클릭 시 기존 onColorPick 1회·메뉴 닫힘, 기존 색상값·모드 유지가 통과했습니다. 색상 입력 검증·사용자 색상·ByLayer/ByBlock 필수 선택과 선택 강조도 기존 회귀 검사를 통과했습니다. + +15. **26:11338 Overlay:** 패키지 내 실제 색상 돋보기 Overlay 구현은 없습니다. 기존 onColorPick으로 호스트가 연결할 수 있으며 별도의 임의 색상 선택창은 만들지 않았습니다. 현재 구현 상태는 사용 가이드·Story에 명시했습니다. + +16. **반응형:** 실제 Header 실측 폭 1920/1440/1080/900/768/640/390px에서 49px·가로 넘침 없음·바 28px·viewport 경계·스크롤로 마지막 필드 접근·More 대표 전환·삭제 후 대체·Dropdown 경계를 확인했습니다. 각 컨트롤 단독 구성도 같은 7개 폭에서 검사했습니다. 기존 속성창/K 가이드 경계와 창 이동 Motion은 기존 회귀와 보존 검사로 확인했습니다. 서로 다른 팝업 상태와 속성Bar는 독립적이며 overlay z-index는 기존 Dropdown보다 낮습니다. + +17. **Story 회귀:** 기존 21개 export를 보존하고 Property Bar / Dynamic Controls / Colorize 3개를 추가해 총 24개입니다. 모든 Story 렌더·적용 Header 높이와 기존 주요 상호작용을 검사했습니다. 기존 통합 195/195, 기존 보완 43/43, 신규 122/122, 추가 경계 84/84, HMR 8/8이 통과했습니다. 보완 원본의 45개 중 이번 라벨 API로 수정한 DocumentTitle/Fields의 바이트 동일성 2개는 제외하고 나머지 보존/상호작용을 검사했습니다. 모든 가능한 호스트 데이터 조합의 전수 검증이라는 뜻은 아닙니다. + +18. **명령/경고:** package.json의 실제 명령을 확인해 최종 SW Typecheck → SW Build → Root Typecheck → Root Build → Storybook Build 순차 실행, 모두 exit 0입니다. pre 훅에 포함된 build:packages 반복은 기존 명령 정의 그대로입니다. SW 출력 styles.css 약85.83kB/index.js 약686.35kB. Root/Storybook의 기존 유형 Tailwind bg-[var(...)] CSS 최적화 경고·500kB chunk 경고·Storybook 플러그인 시간 안내는 남습니다. SW 신규 타입/빌드 오류나 신규 형태의 소스 경고는 없습니다. 로컬 초기 개발 서버의 전역 설정/registry 쓰기 제한은 브라우저 검증용 서버에서 해결했고 제품 소스를 수정하지 않았습니다. lint 명령은 정의되어 있지 않습니다. + +19. **변경 파일:** baseline 대비 소스/문서 23개(기존 19개 수정, 신규 자산/컴포넌트/본 보고 4개 추가), 생성 dist 제외입니다. 기존 root package.json/lock은 이번 작업 전후 바이트가 같습니다. 상세 목록은 아래에 있습니다. + +20. **Figma와 남은 차이:** 기존 패키지의 Noto Sans KR 400/700 정책을 유지해 Figma Dotum Regular와 글자 폭/획/베이스라인이 다릅니다. 바의 수치는 호스트 예시 데이터이고 산술 관계를 계산/보정하지 않습니다. 구성 모드는 사용자가 지정한 순서대로 펼친 구성이므로 승인된 기본 그룹 배치와 다를 수 있으며 미설정 기본 디자인은 보존합니다. 과거 보고에 있는 선스타일 content 폭 차이와 운영 호스트별 font/CSS 커스터마이징은 이번 범위 밖입니다. + +21. **NOT VERIFIED:** Guard 원본 status/staticStatus는 NOT VERIFIED, FAIL 0 / 미검증65건(ENTRY-002 1, REUSE-004 43, SCOPE-001 15, TOKEN-001 3, TOKEN-002 3)입니다. styleEvidence는 STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED이며 checks 배열은 비어 있습니다. 이를 전체 디자인 또는 동적 입력의 PASS로 확대하지 않습니다. 독립 SW CSS 공개 entry, Story native 호스트 조작, 동적 class/style 및 guard scope 해석 한계는 브라우저 증거와 별개로 남깁니다. 픽셀 단위 자동 Figma 이미지 diff, 실제 Figma 프로토타입 직접 재생, Windows IME/스크린리더 실기기, 모든 대비 조합, CAD 연산·파일/OS 창 동작·실제 26:11338·외부 소비앱 캐시·배포는 미검증입니다. + +22. **종료 Git:** 시작과 같은 feature/sw-package / 9407c8567f57301659e591c03451cca1b828733c, 기존 root 2개 M와 SW 3개 폴더 Untracked 범주를 유지합니다. git diff --check 통과. Stage/Commit/Push/PR/Merge/Publish/배포, Reset/Clean/강제 Checkout을 수행하지 않았습니다. 사용자 검토/승인을 기다립니다. + +## 변경 파일 목록 + +```text +MOD packages/sw/README.md +MOD packages/sw/src/components/sw-header/index.ts +MOD packages/sw/src/components/sw-header/SWHeader.tsx +MOD packages/sw/src/components/sw-header/types.ts +MOD packages/sw/src/components/sw-header/components/SWHeaderColorMenu.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderDocumentTitle.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderDropdown.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderFields.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderInput.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderKGuide.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderLayerMenu.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderLineStyleMenu.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderMore.tsx +MOD packages/sw/src/components/sw-header/components/SWHeaderStyleListMenus.tsx +MOD packages/sw/src/theme/sw.css +MOD src/sw/sw-header.stories.tsx +MOD src/sw/sw-stories.css +MOD docs/sw/sw-header-design-spec.md +MOD docs/sw/sw-header-usage.md +ADD packages/sw/src/assets/colorize-default.svg +ADD packages/sw/src/assets/colorize-hover.svg +ADD packages/sw/src/components/sw-header/components/SWHeaderPropertyBar.tsx +ADD docs/sw/sw-header-followup-five-verification-2026-10-16.md +``` + +## 검증 증거 + +QA root: `C:\Users\user\.codex\visualizations\2026\10\16\01a1439a-bd89-7030-8978-48f687e44b0d\sw-header` + +- baseline/, baseline-sha256.json, git-start.txt: 기존 미커밋 파일 보존본. +- legacy-verify.mjs / browser-results.json: 기존 통합195개. +- legacy-followup.mjs / followup-results.json: 기존 보완43개·원본 보존. +- new-verify.mjs / new-results.json: 신규122개, 실제7개 Header 폭. +- edges.mjs / edges-results.json: 단독 구성·열린 메뉴 재정렬84개. +- hmr.mjs / hmr-results.json / hmr-build.log: 재빌드·HMR·복원·새로고침8개. +- build-results.json / final-*.log: 최종 순차5개 명령. +- guard-final.json: 원본 미검증65개, 임의로 PASS로 변경하지 않음. +- changed-files.json: baseline 대비 파일 목록. +- header-bar-1920.png, header-bar-390.png, colorize-hover.png: 실제 React 렌더. + +## 시간 기록 (Asia/Seoul) + +- Started At: 2026-10-16 16:26:26 KST +- Completed At: 2026-10-16 16:50:41 KST +- Actual Duration: 24분 15초 +- Estimated Duration: 약 90분 +- Variance: 예상보다 65분 45초 짧음 diff --git a/docs/sw/sw-header-followup-four-design-fixes-verification-2026-10-19.md b/docs/sw/sw-header-followup-four-design-fixes-verification-2026-10-19.md new file mode 100644 index 0000000..2a8eaf4 --- /dev/null +++ b/docs/sw/sw-header-followup-four-design-fixes-verification-2026-10-19.md @@ -0,0 +1,32 @@ +# SW Header 후속 디자인 수정 4건 검증 (2026-10-19) + +기준: `feature/sw-package` @ `fc26afd4401d5b3bb74c8818cacb76f669fcd24b`(시작 시 Working Tree clean). Commit·Push 없음. +증거: [followup-four-qa/](./followup-four-qa/) · 결과 [result.json](./followup-four-qa/result.json) · 재실행 `node packages/sw/tests/followup-four.browser.mjs docs/sw/followup-four-qa` (Storybook 6024, `packages/sw/dist` 사용 → SW build 후 실행). + +## 변경 요약 + +| 작업 | 원인 / 결정 | 변경 | +|---|---|---| +| A 속성Bar 길이 | 바가 `width:100%`(최대 1222px)로 앵커 폭을 채워 마지막 필드 뒤가 빈 갈색 영역 | 바 `width: max-content; max-width: 100%`, 앵커는 고정 `width` 대신 `maxWidth: calc(100% - 왼쪽 오프셋)`. 마지막 필드 + 기존 오른쪽 padding 6px + border 1px에서 끝남. 공간보다 길면 Header 오른쪽 끝까지 늘어나고 내부 가로 스크롤. Figma 1222px 고정 폭은 사용자 최신 지시로 대체. **2026-10-19 사용자 확정**: 마지막 필드에서 끝나는 콘텐츠 폭 정책 | +| B 도구 아이콘 흰 테두리 | CSS 원인 아님(border 0·outline none·배경 투명). **SVG 자체**에 Figma 페이지 캔버스가 함께 export됨: `#F5F5F5` 29×28 사각형, 흰색 페이지 path, 10% 검정 페이지 테두리, `#9747FF` 점선 컴포넌트 세트 테두리. 버튼 사각형은 29×27.129·rx 3이므로 네 모서리와 아래 0.87px에 밝은 캔버스가 비침 | 3개 SVG(Default/Hover/Active)에서 위 캔버스 요소 4개만 제거, viewBox/높이 29×27.129, img 높이 28 → 27.13px. 버튼 사각형·`#092920` 외곽·`#08251C` / Active `#A67D03` 내부 Gradient·inner shadow·아이콘 path는 그대로 | +| C Dropdown 열림 Hover | 필드 Hover(글자·미리보기·노란 ring)가 열린 상태에서도 적용 | 기존 필드 Hover selector 5개에 `:not([data-expanded="true"])` 추가. 열림 표현(`data-expanded` 스타일, 선스타일 고정 ring)·내부 행·상세 버튼 Hover·Focus-visible 미변경, `pointer-events` 미사용 | +| D 게이지바 | 기존 Track 전체가 빨강, 채움/미채움 구분 없음 | 입력값에서 0–1 비율을 계산해 `--hm-sw-range-fill`로 전달. **사용자 예시 이미지**([reference/user-gauge-example.png](./followup-four-qa/reference/user-gauge-example.png))를 행 단위로 측정해 적용: 채움은 사용자 제공 Figma 원본 [Rectangle 6926.svg](./followup-four-qa/reference/Rectangle%206926.svg): 6px 알약, 검정 1px 테두리, 내부 #8E0000 / #FF4242 37% / #E40000 76% / #1E0000 세로 Gradient. 왼쪽 끝은 radius 3과 왼쪽 검정 1px로 둥근 테두리, 오른쪽 끝은 항상 Thumb 아래. 미채움 베이지는 예시 이미지 측정값 #AEA28B / #C3B9A4 / #C7BDA9 ×2 / #B7AC96 / #AC9E84, 아래 1px 하이라이트 #EADEC8. 채움 끝은 Thumb 중심. Thumb는 사용자 제공 Figma 원본 [Rectangle 6915.svg](./followup-four-qa/reference/Rectangle%206915.svg) 14px(conic + 2px Gradient 테두리 40%)를 `assets/property-range-thumb.svg`로 저장해 사용(viewBox만 14px 본체로 자르고 Figma 편집용 속성 제거). 원본 그림자 필터 2개는 같은 값의 CSS `box-shadow`(0 0 3px #1C1A16, 0 2px 2px 40%). 토큰 `--hm-sw-property-range-fill / -fill-edge / -track / -highlight` | + +## 실행 결과 (Chrome headless, 2회 연속 39/39 PASS) + +- **A** 1920: 바 x 377–906.7(529.7px), 마지막 필드 끝 899.7 → 차이 7px(padding 6 + border 1). 높이 28, Header 49, 하단 radius 6/6, 하단 border 1px #08251C. 끝 안쪽은 #271F13, 바깥은 배경색이며 하단 라인도 같은 x에서 끝남. 필드 4 → 10개: 1169px로 증가, 잘림 0. 24개: Header 끝(1920)에서 멈추고 스크롤로 마지막 필드 접근. 1개 객체로 교체: 158px로 축소. 1440 / 1080 / 768: Header 안, 28px, 페이지 가로 스크롤 0(768은 내부 스크롤). +- **B** 버튼·이미지 29 × 27.13, CSS border/outline/background 없음. Default / Hover / Active 각 버튼 영역에서 밝은(≥235) 픽셀 0. Active 클릭 시 `aria-pressed=true`. +- **C** 레이어·색상·문자·치수: 열림 상태 Hover 전후 ring opacity·글자색 동일(ring 0). 닫힌 뒤 Hover ring 1·글자 #FFC600 복원. 선스타일: 기존대로 열림 ring 1 유지, Hover로 변하지 않음. +- **D(Hover 유지)** 5개 Dropdown 모두 비선택 내부 행(색상은 ByLayer/ByBlock) Hover 변화 있음, 하단 상세 버튼 Hover 변화 있음. +- **E** 렌더링 미채움 6행은 예시 측정값과, 채움 행은 Figma 6926(검정 / #B51717 / #FE4040 / #ED1515 / #790000 / 검정, 1x)과 일치(1x 픽셀 측정, [x8 확대](./followup-four-qa/E-gauge-zoom-x8.png)). 0.25: Thumb 왼쪽 빨강 / 오른쪽 베이지. 키보드 →×40 = 0.65, 채움 동기화, Enter commit 후 숫자 입력 0.65(Callback 경로). End = 1, Home = 0. 숫자 입력에 0.5 입력 시 게이지 0.5 동기화. +- **F** 속성창 4상태 314×256 / 361 / 658 / 754 렌더. +- **G** page / console 오류 0. +- SW `typecheck`, SW `build`, 루트 `tsc -b` PASS. + +## 미확정 / 미검증 + +- 예시 이미지의 미채움 Track은 Figma 26:11978의 어두운 빨강 대신 베이지로 대체했습니다(사용자 지시). +- 예시 이미지 아래의 최소/최대 라벨(`0`, `90 %`)은 현재 속성창 구현과 Figma에 없는 요소라 추가하지 않았습니다(기존 단위 `%` 표시는 유지). +- `property-close*.svg`에도 같은 Figma 캔버스 요소가 있으나 이번 범위가 아니라 수정하지 않았습니다(44×30 전체가 덮이는지 미확인). +- Firefox `::-moz-range-*`는 기존 코드에도 없으며 이번에도 추가하지 않았습니다. +- Storybook Build·기존 77/77 구성·271건 브라우저·10폭 회귀는 재실행하지 않았습니다(기존 PASS 재사용). diff --git a/docs/sw/sw-header-home-menu-responsive-2026-10-19.md b/docs/sw/sw-header-home-menu-responsive-2026-10-19.md new file mode 100644 index 0000000..3e769da --- /dev/null +++ b/docs/sw/sw-header-home-menu-responsive-2026-10-19.md @@ -0,0 +1,76 @@ +# SW Header 홈 메뉴 통합 · 실측 More (2026-10-19) + +> 브랜치 `feature/sw-home-menu`(기준 `c542bdc`, 작업 전 미커밋 `packages/sw/src/theme/sw-viewer.css` 3줄 보존). **Commit·Push 하지 않았습니다(승인 대기).** +> 검증: Storybook 개발 서버(포트 6025, 6024는 다른 세션이 사용 중)와 Claude 내장 브라우저(Chromium). 이 PC에는 기존 `*.browser.mjs`가 쓰는 Playwright 런타임이 없어 그 스크립트는 실행하지 않았습니다. + +## 1. 요청과 결과 + +| 요청 | 결과 | +|---|---| +| `SW / Home Menu` 기능·디자인을 `SW / Header`로 통합 | `SW / Header` → `Home Menu`(`sw-header--home-menu`) 한 페이지에 로고 클릭 열기/닫기·이벤트 기록, 헤더 폭 조절, Figma 26:10591 비교, Default/Hover/Active, 최근파일 하위 패널, 속성창·SWPopup·Escape 통합. `Overview` 로고도 같은 홈 메뉴를 엶 | +| 홈 버튼 클릭 → 열림, 다시 클릭 → 닫힘 | 기존 `SWHeader homeMenu` 동작 그대로(코드 변경 없음). 5개 섹션·15개 타일·Hover·하위 패널 유지 | +| SW 일반 모드 전용 | `SWViewer*` 코드·Story 변경 없음. 뷰어 Story에 홈 메뉴 0개 | +| 반응형 더보기: 실제 사용 가능한 공간 기준, 넓어지면 원위치, 순서·기능 유지 | `SWHeader` 실측 More 추가(아래 §2). Breakpoint는 그대로 | +| 메뉴 열고 닫을 때 헤더 요소 위치·폭 유지 | 측정에서 positioned 층(Dropdown·홈 메뉴·More 목록·Tooltip) 제외. 열기/닫기 전후 좌표 동일 확인 | +| `SW / Home Menu` 사이드바 제거, 컴포넌트·Export·스타일·AI 지침 유지 | Story 파일을 `sw-header-home-menu.stories.tsx`로 옮기고 title `SW/Header`. `SWHomeMenu`·`SWRecentFiles`·Export·`sw-home-menu.css`(패키지)·AI 지침 삭제 없음 | + +## 2. 실측 More 동작 + +- 기존 Breakpoint(1800 / 1180 / 1080 / 900 / 640 / 520)를 먼저 적용하고, 그 위에서 객체 수정 영역의 실제 남은 공간을 측정합니다. +- 측정: Layout Effect 안에서 `data-measuring`을 잠깐 붙여(그려지지 않음) 영역 안 요소가 줄거나 늘지 않고 auto margin이 0인 상태의 in-flow 폭을 읽습니다. 구성형 파일명은 최소 96px로 계산합니다. +- 이동 순서: Open(로고 오른쪽) → 선·문자·치수스타일 → 그리기모드 → 속성 블록 → 색상 → (구성형) 인쇄·K. 같은 단계는 오른쪽부터. 대표 칸은 이동하지 않습니다. +- 복귀: 옮긴 직후 생긴 공간을 한 번 측정해 두고 그만큼 공간이 생기면 역순으로 복귀. 기본 구성은 아무것도 옮기지 않으면 기존 CSS 전용 배치를 그대로 씁니다. +- 공개 API 변경 없음(추가 Prop 없음). 내부 상태·`data-squeezed` 속성·CSS만 추가. + +## 3. 변경 파일 + +| 파일 | 내용 | +|---|---| +| `packages/sw/src/components/sw-header/SWHeader.tsx` | 실측 More(측정 함수·이동 순서·상태·Layout Effect), Open 이동 판정을 같은 측정으로 통일 | +| `packages/sw/src/theme/sw.css` | `data-measuring` 측정 규칙, 옮겨진 그리기모드·속성 블록 자리 보정 | +| `src/sw/sw-home-menu.stories.tsx` → `src/sw/sw-header-home-menu.stories.tsx` | title `SW/Header`, 대표 Story `Home Menu`, 나머지 `verification` 태그(`sw-header--home-menu-*`) | +| `src/sw/sw-header.stories.tsx` | `Overview`에 홈 메뉴 연결, `Responsive More`에 "실제 사용 가능한 공간 기준" 섹션 | +| `src/sw/sw-header-overview.tsx` | 선택 `homeMenuSections` Prop | +| `src/sw/sw-home-menu.css`, `src/sw/sw-stories.css` | Story 전용 폭 조절 컨트롤 배치 | +| `packages/sw/tests/home-menu-integration.browser.mjs`, `packages/sw/tests/storybook-inventory.mjs` | 새 Story ID·제목 기대값, 이동 ID 표 | +| `docs/sw/sw-header-design-spec.md` §12.1, `docs/sw/sw-header-usage.md`, `packages/sw/README.md`, `packages/sw/ai/DESIGN_RULES.md` §7, `packages/sw/ai/COMPONENT_CATALOG.md` | 실측 More·Storybook 위치 | + +보존: `packages/sw/src/theme/sw-viewer.css`의 작업 전 미커밋 변경(`.hm-sw-viewer-menu-root { display: contents; }`)은 손대지 않았습니다. 과거 검증 보고서는 수정하지 않았습니다. + +## 4. 검증 + +| 항목 | 결과 | 방법 | +|---|---|---| +| SW typecheck / 앱 `tsc -b` / SW build | PASS | `npm run typecheck -w @hm-design/sw`, `npx tsc -b`, `npm run build -w @hm-design/sw` | +| AI 문서 | PASS / 32/32 | `npm run check:ai-docs`, `node packages/sw/tests/ai-docs.check.mjs` | +| Storybook 메뉴 | PASS | `index.json`: SW title = Header·Popup·Viewer(`SW/Home Menu` 없음), `sw-header--home-menu` 표시, 홈 메뉴 하위 14개 `verification` | +| 기존 Header Story 배치 회귀 | PASS(기본 구성 변화 없음) | 작업 전 dist로 기록한 요소 좌표·폭과 비교: Overview·Interactive States·Logo Slot·Document Dropdown·Responsive More(19폭)·K Guide·Hidden Sub Controls 동일. 차이는 `Document Open`(§5)뿐 | +| 이동한 홈 메뉴 Story 배치 | PASS 18/18 | 옛 `sw-home-menu--*`와 새 `sw-header--home-menu-*` 6개 × 1920/1280/768 좌표 동일(메뉴 x·폭 포함) | +| 홈 메뉴 열기/닫기 | PASS | 로고 클릭 → 메뉴 1·섹션 5·타일 15·`aria-expanded=true`·Focus 메뉴 안, 재클릭 → 닫힘, `onHomeClick` 미호출, 열기/닫기 전후 Header 좌표 동일. `Overview`에서도 열기/닫기 확인 | +| Hover·하위 패널·Escape | PASS | 실제 포인터 Hover 시 라벨 `#FF5C00`, 최근파일 → 하위 패널·outline 강조, Escape 1회 패널만 닫힘, 2회 메뉴 닫힘·로고로 Focus | +| 좁은 화면 더보기 · 폭 변경 재배치 | PASS | `Responsive More` 실측 섹션(로고 오른쪽 버튼 2개 + 도구 1개): 1920→390 축소 시 치수 → 문자 → 그리기모드 → 속성 블록 → 색상 순 이동, 겹침·가로 스크롤 0(520까지), 390→1920 확대 시 역순 복귀, 추가 요소 끄면 기본 CSS 배치로 복귀 | +| 더보기 안 메뉴 선택 · 팝업 | PASS | 1180: More 목록 = 선/문자/치수스타일·속성Bar·속성창(순서 유지). 속성창 → 팝업(`role=dialog`) 열림·Focus 안, Escape 닫힘·More로 Focus 복귀. 선스타일 → 대표 칸·Dropdown 열림·Focus, 레이어는 More로 | +| 헤더 요소 위치·폭 유지 | PASS | More 열기, 속성창 열기/닫기, 홈 메뉴, 레이어 Dropdown, 문서 Dropdown 각각 전후 좌표 동일 | +| SW 뷰어 모드 영향 | PASS | 뷰어 코드·Story diff 없음, `SW/Viewer` 3개 Story 렌더 오류 0·홈 메뉴 0 | +| Storybook production build | PASS | `npm run build-storybook`(인덱스 358개, SW title = Header·Popup·Viewer, `SW/Header` 27개) | + +참고: 내장 브라우저 창이 숨겨진 상태라 ResizeObserver가 프레임이 그려질 때만 실행됩니다. 폭 변경 검증은 각 단계마다 화면 프레임을 갱신한 뒤 측정했습니다. + +## 5. 의도된 배치 변화 (`Document Open` Story) + +로고 오른쪽 Open을 쓰는 기본 구성은 작업 전 아래 폭에서 실제로 겹쳤습니다(기존 판정이 `scrollWidth`만 봐서 감지 못함). 이제 Open(필요하면 메뉴 1개)이 More로 이동합니다. + +| 프레임 | 작업 전 | 작업 후 | +|---|---|---| +| 1800 | 치수스타일이 속성 블록과 겹침 | Open·치수스타일 → More | +| 1180 / 1080 | 색상이 More와 겹침 | Open → More | +| 900 | 색상이 More와 3px 겹침 | Open → More | +| 640 | 레이어가 More와 겹침 | Open → More | +| 구성형 768 | Open이 More에 있음 | Open 표시(파일명 200px ≥ 최소 96px) | + +## 6. NOT VERIFIED · 한계 + +- 기존 Playwright 스크립트(`home-menu-integration.browser.mjs` 등): 이 PC에 런타임 없음. ID만 갱신했고 실행하지 않았습니다. +- Firefox·Safari, 실제 소비 앱(`HMDesignSwTest`) 재검증, 픽셀 단위 스크린샷 비교(좌표·폭 비교로 대신함). +- 호스트 요소(`leading`·`tools`)는 More로 옮기지 않습니다. 390px에 로고 오른쪽 버튼 2개 + 도구를 함께 넣으면 대표 필드가 0까지 줄고 도구와 More가 겹칩니다(옮길 메뉴가 더 없음). +- 기존 동작 관찰(이번 변경과 무관, 수정하지 않음): 홈 메뉴에서 Escape로 닫을 때 Story 기록에 `onHomeMenuOpenChange(false, escape)`·`onActiveChange([])`가 2회씩 남습니다. 이전 Story(`sw-header--home-menu-header-composition`, 구 `sw-home-menu--header-composition`)에서도 같습니다. diff --git a/docs/sw/sw-header-layer-dropdown-verification-2026-10-16.md b/docs/sw/sw-header-layer-dropdown-verification-2026-10-16.md new file mode 100644 index 0000000..c313d9b --- /dev/null +++ b/docs/sw/sw-header-layer-dropdown-verification-2026-10-16.md @@ -0,0 +1,147 @@ +# SW Header 레이어 Dropdown 검증 기록 (2026-10-16) + +> 범위: `@hm-design/sw` 레이어 필드 Dropdown과 전구·눈꽃·자물쇠 On/Off. 기준: Figma `rj6wpsfk24lOWvWiVRAANP` 5개 Node. 규격은 [디자인 명세 §5.2](./sw-header-design-spec.md#52-레이어-dropdown-figma-headermenu레이어-2610940-2026-10-16), 사용법은 [사용 가이드](./sw-header-usage.md#레이어-dropdown-예)를 따릅니다. + +## 1. 작업 환경 + +| 항목 | 값 | +|---|---| +| Worktree / Branch | `D:\디자인시스템\HMDesign-SW` / `feature/sw-package` | +| HEAD | `9407c85` (시작·종료 동일, Commit 없음) | +| 시작 상태 | `M package.json`, `M package-lock.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/` — 기존 미커밋·Untracked 파일 보존(시작 시 스크래치 백업, Reset/Clean/Checkout 없음) | +| 검증 Storybook | `npx storybook dev -p 6047`(6024·6031·6032는 다른 세션 사용 중) | + +## 2. Figma 5개 Node + +| # | Node | 내용 | 확인 방법 | +|---|---|---|---| +| ① | `26:10940` `header/menu/레이어` (default 26:10941, hover 26:10952, Variant3 26:10963) | 필드·펼침 목록·레이어 상세 | `get_design_context` + screenshot | +| ② | `26:10810` `icon_전구` | 4 Variant: 컬러 / 컬러 Hover(검정 25%) / 회색(ellipse `#E6E6E6→#555`) / 회색 Hover | `get_design_context` + screenshot | +| ③ | `26:10855` `icon_눈꽃` | 4 Variant SVG(`#00CCFF` / `#949494`, Hover = 검정 25% 타일 추가) | 동일 | +| ④ | `26:10912` `icon_자물쇠` | 4 Variant SVG(`#E4BF4D·#D8A300` / `#BEBEBE·#A1A1A1`, Hover = 타일 추가) | 동일 | +| ⑤ | `26:10687` `header/dropdown/brown/row` (Default 26:10688, Hover 26:10695) | 행 234 × 30, Hover `#62533D` / `#FF5C00` | 동일 | + +Prototype의 Smart Animate(Off → Off Hover, ease-out 300ms)는 사용자 요청서 기재값을 따랐습니다. Figma Prototype player 재생으로는 확인하지 않았습니다(NOT VERIFIED). + +## 3. 자산 + +- 신규 8개(`layer-ellipse-off`, `layer-freeze-hover/off/off-hover`, `layer-lock-hover/off/off-hover`, `layer-detail`)를 Figma MCP에서 내려받아 `packages/sw/src/assets/`에 저장. 수정·재작성 없음. +- 기존 `layer-union/ellipse/state-a/state-b`는 Figma 원본과 mask id 외 동일 → 재사용. +- Hover SVG = Default SVG + `` 1줄 외 동일(정규화 diff). +- `packages/sw/src`, `src/sw`, `packages/sw/dist`, `storybook-static`에서 `figma.com/api` 검색 0건. + +## 4. 디자인 측정 (Storybook `SW / Header / Layer Dropdown`, 1920 프레임, `getBoundingClientRect`·computed style) + +| 항목 | 기대(Figma) | 측정 | 판정 | +|---|---|---|---| +| 필드 | 234 × 38, x 467 | 234 × 38, x 466.7(헤더 기준) | MATCH | +| 펼친 필드 | 테두리 `#081813`, radius 3 3 0 0, 라벨·값 `#FFC600` | `rgb(8,24,19)`, `3px 3px 0 0`, `rgb(255,198,0)` | MATCH | +| 펼침 외곽선 | 236 × 320 at −1/−1, radius 4 | `::before` inset −39 / −1 / −1 / −1, radius 4, 노란 gradient | MATCH | +| 목록 | 234 × 280, 필드 바로 아래 | 234 × 280, y = 필드 하단 | MATCH | +| 배경·그림자·radius | `#27241D`, `0 4px 8px rgba(16,48,38,.25)`, 0 0 3 3 | 동일 | MATCH | +| 행 | 234 × 30 × 8 | 234 × 30, 8개 | MATCH | +| 아이콘 | 20 × 20, x+12 / 32 / 52 | 동일 | MATCH | +| 견본 | 16 × 16 at x+80, 안쪽 14 × 14 | 동일 | MATCH | +| 이름 | x+104(+1), `#F6F4F2`, 700 | 동일 | MATCH | +| 하단 | 40, 버튼 오른쪽 12px | 40, 버튼 오른쪽 끝 = 목록 −12 | MATCH | +| 레이어 상세 | radius 24, 배경 `rgba(197,177,158,.15)`, 아이콘 14, 글자 opacity .35 | 동일, 버튼 107.3 × 24(글자 69.3) | MATCH(글자 폭은 글꼴 차이) | +| 행 Hover | `#62533D` / `#FF5C00` | `rgb(98,83,61)` / `rgb(255,92,0)`(고정·실제 Hover 모두) | MATCH | +| 아이콘 Hover | 전구 검정 25% 배경, 눈꽃·자물쇠 Hover SVG | 전구 `rgba(0,0,0,.25)`, Hover img opacity 1 | MATCH | +| Off Hover 전환 | 300ms ease-out | Off: `0.3s ease-out`, On: 0s | MATCH | +| 헤더 높이 | 49 | 49 | MATCH | + +3배 확대 아이콘 표(12개 Variant)를 Figma screenshot과 육안 비교: 형태·색 일치. 픽셀 diff는 수행하지 않았습니다. + +## 5. 동작 검증 + +JS 이벤트(`click`, `PointerEvent`, `KeyboardEvent`)와 실제 마우스·키보드 입력(브라우저 pane `left_click`, `hover`, `key`)으로 확인했습니다. + +| 시나리오 | 결과 | +|---|---| +| 필드 클릭 → 열림, 다시 클릭 → 닫힘 | PASS (`aria-expanded` 동기화, `onLayerMenuOpenChange` true/false) | +| 전구 / 눈꽃 / 자물쇠 클릭(JS 4회, 실제 마우스 1회, 키보드 Space·Enter 2회) | PASS — 각 Callback 1회, `onLayerSelect` 0회, 목록 유지, 해당 레이어만 변경(상태표 확인) | +| 행 선택(JS, 실제 Enter) | PASS — `onLayerSelect` 1회, 목록 닫힘, Focus 필드 복귀, 필드에 레이어명·상태 아이콘 반영(회색 전구 확인) | +| 바깥 pointerdown, 다른 필드 pointerdown | PASS — 닫힘 | +| Escape(JS, 실제 키) | PASS — 닫힘, Focus 필드 | +| ↓(닫힘) | PASS — 열림, 현재 레이어 이름 버튼 Focus(2px `#F0F7F5` outline) | +| ↓↑ / ←→ | PASS — 같은 열 유지 행 이동, 행 안 이동 | +| Tab 진입 / Shift+Tab 두 번으로 이탈 | PASS — 목록 안에서는 유지, 밖으로 나가면 닫힘 | +| 레이어 상세(Callback 있음) | PASS — `onLayerDetail` 1회 후 닫힘 | +| 레이어 상세(Callback 없음) | PASS — `disabled`, opacity 1(Figma 외형), cursor default | +| Callback 없는 아이콘 | PASS — `role="img"` span 24개, 버튼 0개 | +| disabled 레이어 | PASS — 아이콘 3개·선택 버튼 모두 disabled | +| 20개 레이어 | PASS — 목록 240px 내부 스크롤(scrollHeight 600), 전체 280, 헤더 가로 스크롤 0 | +| 레이어 없음 | PASS — 하단만(40px), 필드는 `layer.name` | +| 긴 레이어명 | PASS — 행·필드 ellipsis, 오른쪽 padding 12 유지 | +| 콘솔 오류 | 0건 | + +## 6. 반응형 + +`Layer Dropdown`의 Callback 예제 프레임 폭을 바꿔 측정하고, 같은 폭의 기존 `Responsive` Story(`layers` 없음) 필드 위치와 비교했습니다. + +| 폭 | 필드 x / 폭 (기존과 동일) | 열린 뒤 필드 이동 | 헤더 가로 스크롤 | 목록 헤더 안 | 목록 이동 | 아이콘·텍스트 겹침 | 견본 | +|---|---|---|---|---|---|---|---| +| 1920 | 466.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 1800 | 346.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 1799 | 466.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 1440 | 466.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 1180 | 306.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 1080 | 207.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 900 | 246.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 768 | 310.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 640 | 182.7 / 234 ✔ | 없음 | 0 | ✔ | 0 | 없음 | 16 × 16 | +| 390 | 167.7 / 113.7 ✔ | 없음 | 0 | ✔ | 왼쪽 이동, 오른쪽 여백 1.3 | 없음 | 16 × 16 | + +- 1차 측정에서 390px 열림 상태에 헤더 `scrollWidth`가 1px 늘어나는 문제(외곽선이 목록 밖 1px)를 발견해, 이동 계산에 1px 여백을 두도록 수정 후 320 / 360 / 390 / 500 / 519 / 640에서 0을 재확인했습니다. +- 390에서 실제 조작(열기 + 자물쇠 Toggle → Callback 1회, 목록 유지) 확인. 브라우저 Viewport 390 에뮬레이션은 Storybook 페이지 내부 폭이 766px로 잡혀 헤더 프레임 390 기준으로만 확인했습니다(실기기 NOT VERIFIED). +- 더보기 메뉴 정책·기존 Breakpoint 변경 없음(필드 위치가 기존 Story와 동일). + +## 7. 회귀 확인 + +| 항목 | 결과 | +|---|---| +| `layers` 미전달 필드 | 기존 DOM(아이콘 4개 img 14×18 / 14×14 / 20×20 / 20×20, `aria-expanded=false`)과 동일 | +| Composed Controls 고정 Hover | 5개 필드 값 `#FFC600`, Gradient ring opacity 1, 선 미리보기 `#FFC600` 유지 | +| 문서 Dropdown·창 이동·인쇄·최소화·종료·속성 토글 CSS | 변경 없음(diff는 레이어 관련 규칙 추가뿐) | + +## 8. Build + +| 명령 | 결과 | +|---|---| +| `npm run typecheck -w @hm-design/sw` | PASS | +| `npm run build:sw` | PASS (`dist/styles.css` 45.35 kB, `dist/index.js` 202.28 kB) | +| `npm run typecheck`(root, packages build 포함) | PASS | +| `npm run build`(root) | PASS (기존 500 kB chunk 경고만) | +| `npm run build-storybook` | PASS, index에 `sw-header--layer-dropdown` | + +## 9. 아이콘 색상 ↔ 상태 매핑 확정 검증 (사용자 확정, 2026-10-16) + +확정 기준: 전구 컬러 `visible=true` / 회색 `false`, 눈꽃 컬러 `frozen=false`(동결 해제) / 회색 `true`(동결), 자물쇠 컬러 `locked=false`(잠금 해제) / 회색 `true`(잠금). 클릭 시 해당 boolean 반전값을 Callback으로 전달합니다. 기존 구현(`layerIconOn()`, `onChange(layer, !pressed)`)이 이 기준과 같아 동작 코드는 바꾸지 않았고, 타입 주석·Story 설명·문서의 잠정 표기만 확정으로 바꿨습니다. SVG·Default/Hover CSS 변경 없음. + +검증: Storybook `Layer Dropdown`의 Callback 예제에서 각 아이콘을 두 번씩 클릭했습니다. 색은 렌더링된 SVG의 실제 fill(전구 `#FAB846`/`#9C9C9C`, 눈꽃 `#00CCFF`/`#949494`, 자물쇠 `#E4BF4D`/`#BEBEBE`)로 판정했습니다. + +| 레이어 · 아이콘 | 클릭 전 | Callback | 클릭 후 | +|---|---|---|---| +| layer-0 전구 | `visible=true` 컬러 | `onLayerVisibilityChange(layer-0, false)` | `false` 회색 | +| layer-0 전구 | `false` 회색 | `(layer-0, true)` | `true` 컬러 | +| layer-0 눈꽃 | `frozen=false` 컬러 | `onLayerFreezeChange(layer-0, true)` | `true` 회색 | +| layer-0 눈꽃 | `true` 회색 | `(layer-0, false)` | `false` 컬러 | +| layer-0 자물쇠 | `locked=false` 컬러 | `onLayerLockChange(layer-0, true)` | `true` 회색 | +| layer-0 자물쇠 | `true` 회색 | `(layer-0, false)` | `false` 컬러 | +| layer-5 전구 | `visible=false` 회색 | `onLayerVisibilityChange(layer-5, true)` | `true` 컬러 | +| layer-5 전구 | `true` 컬러 | `(layer-5, false)` | `false` 회색 | +| layer-5 눈꽃 | `frozen=true` 회색 | `onLayerFreezeChange(layer-5, false)` | `false` 컬러 | +| layer-5 눈꽃 | `false` 컬러 | `(layer-5, true)` | `true` 회색 | +| layer-5 자물쇠 | `locked=true` 회색 | `onLayerLockChange(layer-5, false)` | `false` 컬러 | +| layer-5 자물쇠 | `false` 컬러 | `(layer-5, true)` | `true` 회색 | + +- 모든 클릭에서 Callback 1회, `onLayerSelect` 0회, 목록 유지. `aria-pressed`는 표시됨 / 동결됨 / 잠김과 일치. +- 클릭하지 않은 다른 레이어 7개의 상태는 변하지 않음. + +## 10. 남은 차이 · NOT VERIFIED + +- 아이콘 색상 ↔ 상태 매핑은 위 §9로 확정·검증했습니다. 실제 SW 호스트에서 이 값으로 도면이 표시·동결·잠금되는지는 외부 연동이 필요합니다(NOT VERIFIED). +- 실제 SW 호스트에서의 레이어 표시·동결·잠금 반영과 레이어 상세 화면: 패키지 단독 검증 불가(NOT VERIFIED). +- 현재 레이어 이름 `#FFC600`, 목록 최대 높이 240px, 좁은 폭 왼쪽 이동은 Figma에 없는 구현값입니다. +- 레이어 상세 버튼 Hover는 Figma Variant가 없어 추가하지 않았습니다. +- Figma Smart Animate 곡선의 Prototype player 실재생 비교, 픽셀 diff, 실기기 390px, 스크린리더 실사용 검증은 수행하지 않았습니다. diff --git a/docs/sw/sw-header-speed-composed-hover-verification-2026-10-16.md b/docs/sw/sw-header-speed-composed-hover-verification-2026-10-16.md new file mode 100644 index 0000000..78592c2 --- /dev/null +++ b/docs/sw/sw-header-speed-composed-hover-verification-2026-10-16.md @@ -0,0 +1,94 @@ +# SW Header — 1400ms 및 Composed Controls Hover 통합 검증 + +## 1. 최종 판정: PARTIAL + +요청 범위의 Chrome 브라우저 통합 검사 170개와 이웃 필드 영향 검사 5개, 픽셀 비교, Root Typecheck / SW Build / Root Build / Storybook Build는 PASS입니다. 실제 네이티브 호스트 창 제어·다른 브라우저·보조기술·독립 SW Guard coverage는 NOT VERIFIED이므로 전체 PASS로 확대하지 않습니다. + +## 2. 작업 시작 시 Git 상태 + +- 경로 `D:\디자인시스템\HMDesign-SW`, branch `feature/sw-package`. +- HEAD `9407c8567f57301659e591c03451cca1b828733c`. +- 기존 변경 ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`. +- 기존 파일 SHA-256과 수정 전 CSS·필드 TSX·Story 사본을 `_local/sw-speed-hover-qa/`에 보존했습니다. 미추적 파일을 삭제·초기화하지 않았습니다. + +## 3. 창 이동 Motion 변경 전후 + +전체 1640 → **1400ms**, Tooltip 520 → **약 443.90ms**, 이동 완료 1040 → **약 887.80ms**, 완료 후 유지 600 → **약 512.20ms**입니다. 모든 구간은 1400/1640(35/41)로 동일하게 단축했습니다. 주기는 약 14.63% 짧아지고 재생 속도는 약 17.14% 빨라집니다. 원본 GIF와 다른 사용자 요청 사항입니다. + +세 CSS animation duration만 변경했습니다. 실제 Hover에서 1.4초와 2.8초 iteration을 확인했고, 이탈 시 원래 SVG로 복귀합니다. Drag 중 paused/Tooltip 숨김, 호스트 Pointer Capture 이벤트 전달, Reduced Motion의 원래 아이콘·정적 Tooltip도 통과했습니다. + +## 4. 이동 경로 보존 + +세 `@keyframes`의 좌표·백분율·보간 선언은 수정 전과 바이트 단위로 동일합니다. 이전 41개 브라우저 프레임을 시간 × 35/41에 맞춰 다시 측정했으며 창·커서·Tooltip의 상대 위치 차이는 **최대 0px**였습니다. 따라서 오른쪽 28px / 위쪽 4.5px, 커서 상승·등장 순서·가속/감속 비율은 보존합니다. GIF와의 공간 오차 기록을 현재 시간까지 같다는 뜻으로 해석하지 않습니다. + +## 5. Composed Controls Hover 대상 + +공용 레이어·색상·선스타일·문자스타일·치수스타일 필드의 버튼 전체 Hover에 적용했습니다. 동일 컴포넌트를 사용하는 Full Header에도 같은 규칙을 적용합니다. Composed Controls의 기존 레이어·색상·상세보기 예제는 보존하고 기존 공개 선/문자/치수 컴포넌트와 5개 필드의 고정 Hover 비교를 추가했습니다. 새 Story나 새 공개 API는 없습니다. + +상세보기는 이번 필드 강조에서 제외합니다. `속성Bar`/`속성창`의 텍스트 전용 Hover, caption·검정 divider·기존 선택 토글·배경을 유지하고 Hover Border를 추가하지 않았습니다. + +## 6. 텍스트 · 선 · 아이콘 색상 + +- PASS: 각 필드 버튼의 빈 모서리 부분에 Hover해도 모든 라벨·값이 `rgb(255,198,0)`입니다. 선스타일의 가중치·스케일, 폰트 이름 텍스트도 포함합니다. +- PASS: 선 미리보기 5개 조각의 채움만 노란색, 1px 검정 border와 형태·위치 유지. +- PASS: 문자 미리보기는 기존 텍스트이며 색만 변경. 원래 별도 검정 Stroke/그림자가 없으므로 새로운 외곽선을 추가하지 않았습니다. +- PASS: 치수 Hover SVG는 foreground path의 흰 채움 1곳만 `#FFC600`으로 변경. mask용 흰 rect와 검정 외곽선 path·참조·좌표는 원본과 동일합니다. 60 × 15px wrapper에서 원본/Variant visibility만 교대하며 CSS filter는 없습니다. +- PASS: 색상 견본의 실제 값 `#ffe500`, chip border, 레이어 상태 SVG·막대 색 유지. 표시 문자열·실제 값은 변경되지 않습니다. +- PASS: Default / Selected / Disabled / Disabled+Selected × 5개 필드에서 Hover·이탈·콜백을 확인. Disabled는 새 Hover 효과가 없고 Selected의 기존 색은 유지됩니다. 선택 단독 상태의 미리보기 색을 확장하지 않았습니다. + +## 7. 검정 외곽선 · 기존 Hover Border + +기존 노란 Gradient `::after`의 선언은 그대로이며 enabled Hover에서는 opacity 1, Disabled에서는 0입니다. 검정 선 border·치수 mask는 유지합니다. 4배 브라우저 캡처에서 5개 필드 모두 Default와 Hover의 순수 검정 픽셀 위치 집합이 동일했습니다. 선 미리보기 필드는 1920개, 치수 필드는 2903개의 검정 픽셀이 유지됐습니다. 문자 필드는 원래 별도 검정 픽셀이 0개였습니다. + +5개 Default 화면은 수정 전과 후의 PNG 픽셀이 모두 동일했습니다. Hover 전후 버튼·텍스트·미리보기의 크기/위치·배경·그림자가 같았고, 5개 이웃 영향 검사에서도 Hover한 필드 외 텍스트 색은 변하지 않았습니다. + +## 8. Storybook 시각 검증 + +실제 빌드된 `SW / Header / Window Move Motion`과 `Composed Controls`를 Chrome `155.0.8059.79`에서 열었습니다. 속도 보정된 9개 고정 프레임이 실제 1400ms CSS animation을 pause하고, 반복 경계에서 문구가 숨겨지는 것을 확인했습니다. Composed의 실제 세 스타일 필드와 5개 고정 Hover, 기존 속성창 클릭·선택 상태를 확인했습니다. 비교 PNG와 Story 전체 캡처도 시각 검토했습니다. + +이는 실제 공용 React 컴포넌트 결과이며 별도 HTML/CSS 모방 화면이 아닙니다. 개발 서버 프로세스나 포트를 변경하지 않고 임시 localhost 서버에서 검사 후 종료했습니다. + +## 9. 반응형 · Callback 회귀 + +요청 폭 1920 / 1800 / 1440 / 1180 / 1080 / 900 / 768 / 640 / 390px와 경계 1079 / 639px를 추가 확인했습니다. 모두 Header 높이 49px, Header/문서 가로 overflow 0px이며 기존 auxiliary 필드·속성·색상·인쇄/가이드의 More 이동 정책이 유지됐습니다. 이동 영역도 88 / 24 / 숨김 그대로입니다. + +일반/선택 필드 클릭과 Enter 콜백, Disabled 클릭 차단, Full Header 5개 필드 콜백, More로 이동한 선스타일 콜백·메뉴 닫힘, 상세보기 선택 토글, 최소화·종료 콜백을 확인했습니다. Drag의 원래 div 이벤트와 호스트 모의 Pointer Capture·move/up도 통과했습니다. 실제 OS 창 제어는 NOT VERIFIED입니다. + +## 10. Typecheck · Build · Storybook · Guard + +- PASS: `npm.cmd run typecheck`. 기존 pretypecheck의 theme 확인·workspace package build와 SW Build도 포함합니다. +- PASS: SW package build(`build:sw`, 위 prerequisite 포함), `npm.cmd --ignore-scripts run build`, `npm.cmd --ignore-scripts run build-storybook`. 이미 통과한 prerequisite은 반복하지 않았습니다. +- PASS: 브라우저 통합 조건 170개, 이웃 영향 5개, 5개 Default 픽셀 보존과 검정 픽셀 비교. pageerror 0건. +- 기존 빌드 경고: 문서 예시 `bg-[var(...)]`, Storybook `:host-context` minifier, 500kB 초과 bundle와 plugin timing 안내. exit 0이며 범위 밖 코드를 수정하지 않았습니다. +- Guard 1회: `node scripts/ai-generation-guard.mjs --target . --profile STORYBOOK --scope PARTIAL --files src/sw/sw-header.stories.tsx,packages/sw/src/theme/sw.css,packages/sw/src/components/sw-header/components/SWHeaderFields.tsx --json`. 원본 status/staticStatus는 NOT VERIFIED, FAIL 없음. SW styles 연결 `ENTRY-002`, 패키지 구현 graph 밖 `SCOPE-001`, 연결에 의존한 Token/동적 값 미검증이 남았습니다. Guard를 수정하거나 결과를 PASS로 덮어쓰지 않았습니다. +- Guard styleEvidence: STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED, checks=[]. 독립 SW 실검사 완료라는 의미가 아닙니다. 별도 Runtime/사용자 디자인 의도는 위 검사 범위 PASS, 전체 검증은 PARTIAL입니다. + +## 11. 변경 파일 목록 + +1. `packages/sw/src/theme/sw.css` — 1400ms 및 필드 Hover. +2. `packages/sw/src/components/sw-header/components/SWHeaderFields.tsx` — 치수 원본/Variant의 동일 크기 wrapper. +3. `packages/sw/src/assets/menu-dimension-ico-hover.svg` — 신규 foreground 색 Variant. +4. `src/sw/sw-header.stories.tsx` — 기존 모션·Composed Story 보완. +5. `docs/sw/sw-header-design-spec.md` — 현재 §11.5 및 기존 정책 정합. +6. `docs/sw/sw-header-usage.md` — 현재 시간·필드 Hover·Story 사용법. +7. `docs/sw/sw-header-window-motion-gif-verification-2026-10-16.md` — 과거 내용 뒤 후속 기록만 추가. +8. `packages/sw/README.md` — 현재 동작과 링크. +9. 이 검증 기록 — 신규 문서. + +Git 무시 경로 `_local/sw-speed-hover-qa/`에 시작 해시·사본, 전/후 Default/Hover PNG, `pixel-comparison.json`, `composed-hover-comparison.png`, Story·폭별 PNG, `verification.json`, `neighbors.json`, 원본 `guard.json`, 빌드 로그와 `final-summary.json`을 보존합니다. + +## 12. 기존 디자인 보존 근거 + +수정한 필드 블록·duration·주석을 원래 값으로 복원한 임시 문자열이 시작 CSS 전체와 동일합니다. 따라서 상세보기·홈·문서·인쇄/가이드·최소화/종료·반응형 CSS는 바이트 단위로 보존됐습니다. 필드 TSX도 치수 wrapper/import 외 문자열이 동일하며 기존 Callback·Props를 변경하지 않았습니다. 다른 Story, 기존 SVG, `SWHeaderWindowControls.tsx`, root package.json/Lockfile은 시작 상태를 유지합니다. + +과거 GIF 검증 문서는 시작 사본이 현재 문서의 정확한 prefix임을 확인했습니다(append-only). 다른 패키지 소스·Worktree·DWG/DXF Viewer는 수정하지 않았습니다. Root의 기존 package build에 따른 Git 무시 dist 재생성만 있습니다. 의존성 설치·공개 API 변경은 없습니다. + +## 13. 남은 차이 · NOT VERIFIED + +원본 GIF와 시간만 다릅니다(사용자 요청). 기존 Tooltip의 최소화/종료 일부 시각적 겹침은 유지하며 포인터를 차단하지 않습니다. 실제 네이티브 창 제어, 다른 브라우저·터치/펜·보조기술, 외부 CSS 커스터마이징, 독립 SW Guard coverage는 미검증입니다. 현재 Chrome 기본 테마 범위의 PASS를 전체 플랫폼 승인으로 확대하지 않습니다. + +## 14. 작업 종료 시 Git 상태 + +`feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c` 유지. status 그룹도 ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`를 유지하며 실제 이번 변경은 해당 미추적 그룹 내부에 있습니다. Index 변경·Commit·Push·PR·Merge·Publish·배포는 수행하지 않았습니다. + +작업 시간(KST): Started At 2026-10-16 13:54:54 / Completed At 2026-10-16 14:08:24 / Actual Duration 13분 30초 / Estimated Duration 15~25분 / Variance 15분 대비 −1분 30초, 25분 대비 −11분 30초. diff --git a/docs/sw/sw-header-usage.md b/docs/sw/sw-header-usage.md new file mode 100644 index 0000000..c0f05b4 --- /dev/null +++ b/docs/sw/sw-header-usage.md @@ -0,0 +1,657 @@ +# SW Header 사용 가이드 + +> **0.2.0 통합 개선(2026-10-19):** 로고 오른쪽 파일 열기(`documentOpenPlacement="header"`, `documentOpenLabel` 재사용, 실측 기반 More 이동), `leading` 슬롯, 하위 항목 숨김(`hiddenControls`의 `documentNew`·`documentOpen`·`layerFreeze`·`layerLock`), 도구 막대 `SWToolButton` / `SWToolGroup`, 속성창 프레임 `SWPopup`(자유 `children`)과 `SWHeaderPropertyPanel`의 `children`·`title`을 추가했습니다. API·예제는 패키지 [AI 카탈로그](../../packages/sw/ai/COMPONENT_CATALOG.md)와 [조합 패턴](../../packages/sw/ai/COMPOSITION_PATTERNS.md), Story는 `SW / Header`의 Document Open·Hidden Sub Controls, `SW / Tool`, `SW / Popup`, 검증은 [통합 개선 기록](./sw-integrated-improvement-2026-10-19.md)을 따릅니다. + +> **현재 기준 색인(2026-10-19 1차 정리):** 아래 날짜별 안내 중 최신 항목이 같은 주제의 이전 설명보다 우선합니다. 속성 필드 13개·필드 Dropdown(`picker`·`menus`·`decimals`)은 [속성창·K 가이드 추가 연결](#속성창k-가이드-추가-연결-2026-10-16)의 2026-10-19 항목, 표시·숨김(`hiddenControls`)·메뉴 순서(`menuOrder`)·속성창 4상태·형상 Slot은 [3차 절](#구성요소-표시메뉴-순서속성창-4상태형상-slot-2026-10-16-3차), 속성Bar·`controls`·Colorize는 [후속 절](#후속-5개-요구사항-연결-2026-10-16)을 봅니다. 현재 Storybook 33개 목록은 [§12](#12-storybook)와 [1차 정리 보고](./sw-first-pass-cleanup-review-2026-10-19.md)에 있습니다. + +> **상세 버튼 최신 기준(2026-10-16):** 레이어·색상·선·문자·치수 상세는 문자스타일 디자인의 `SWHeaderMenuDetail`을 공통 사용합니다. `on*Detail` 미전달 시 Hover 유지·클릭 무동작이며, Callback 전달 시 기존 1회 호출·닫힘·Focus 복귀를 유지합니다. 내부 공통 컴포넌트는 `label`, `icon`, `onClick`, `disabled`, `className`, `aria-label` 등 native 버튼 Props를 지원합니다. 새 공개 export는 추가하지 않았습니다. 비교 Story는 `SW/Header → Detail Buttons (Shared States)`(verification 태그, 직접 ID `sw-header--detail-buttons`)입니다. 과거의 Callback 미전달=Disabled 및 치수만 밝은 Hover 설명보다 이 기준이 우선합니다. [이번 검증 기록](./sw-header-detail-buttons-verification-2026-10-16.md). + +> **3차 기준(2026-10-16):** 로고 외 개별 제거 `hiddenControls`, 유사 메뉴 순서 `menuOrder`, 속성창 4상태 Story·비교, 형상 Slot `shapeContent`를 추가했습니다. [3차 절](#구성요소-표시메뉴-순서속성창-4상태형상-slot-2026-10-16-3차)과 [3차 검증 기록](./sw-header-composition-shape-verification-2026-10-16.md)이 같은 주제의 이전 설명보다 우선합니다. + +> **후속 5개 요구사항 기준(2026-10-16):** `SWHeaderPropertyBar`, 메뉴 단위 `controls`, `btn_colorize` Default/Hover를 추가했습니다. 상세 pill의 `solid-stroke-width`도 제거했습니다. 아래 후속 연결 절과 [새 검증 기록](./sw-header-followup-five-verification-2026-10-16.md)이 현재 기준입니다. 과거 실행 기록은 보존합니다. + +> **최신 API/동작:** 아래 [속성창·K 가이드 추가 연결](#속성창k-가이드-추가-연결-2026-10-16)을 먼저 확인하세요. 색상 기준은 정확히 하나 표시되며, 상세 버튼 Hover와 목록 Selected 정책이 변경됐습니다. 과거 예시의 `colorMode=null`은 직접 색상 의미를 유지하지만 모드 표시까지 해제하지 않습니다. + +`@hm-design/sw`의 SW Header를 화면에 연결하는 방법입니다. 디자인 값과 판정은 [디자인 명세](./sw-header-design-spec.md)를 따릅니다. + +> 패키지는 아직 npm Registry에 게시하지 않았습니다. 아래 설치 방법은 HMDesign Workspace 또는 로컬 tarball 기준입니다. + +## 1. 패키지 구조 + +```text +packages/sw/ +├── src/ +│ ├── assets/ Figma 원본 SVG와 Hover Variant (build 시 data URI로 포함, 로고 제외) +│ ├── components/ +│ │ ├── sw-header/ +│ │ │ ├── SWHeader.tsx 전체 헤더 +│ │ │ ├── components/ 하위 컨트롤 (공개 + 내부) +│ │ │ ├── types.ts Props / 값 타입 +│ │ │ └── index.ts +│ │ └── sw-theme/SWTheme.tsx 하위 컨트롤 단독 사용 시 토큰 범위 +│ ├── theme/sw.css SW 전용 토큰·스타일 +│ └── index.ts +├── build.mjs 독립 library build (Vite lib + tsc 선언) +├── package.json exports: "." , "./styles.css" +└── README.md +``` + +`@hm-design/ui`·`@hm-design/center-graphic`·OrgChart 패키지를 import하지 않습니다. Peer는 `react`·`react-dom` `^19.0.0`뿐입니다. + +## 2. 설치 + +### HMDesign Workspace 안 + +루트 `package.json`의 Workspace(`packages/*`)에 포함되어 있습니다. + +```bash +npm install +npm run build:sw +``` + +`build:packages`(typecheck·build·Storybook 전처리)도 마지막에 `build:sw`를 실행합니다. + +### 다른 React 프로젝트(로컬 tarball) + +```bash +npm pack -w @hm-design/sw --pack-destination ../packs +``` + +```bash +npm install ../packs/hm-design-sw-0.1.0.tgz +``` + +소비 프로젝트는 `src` 내부 파일을 참조하지 않고 `dist` 공개 API만 사용합니다. + +## 3. Import + +```tsx +import { SWHeader } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +- CSS는 JS에서 자동 import되지 않으므로 앱 진입점 등에서 한 번 import합니다. +- TypeScript 7에서 CSS side-effect import 타입 오류가 나면 Vite 프로젝트의 `/// `(또는 `declare module "*.css"`)를 둡니다. +- 글꼴: 패키지는 폰트 파일을 포함하지 않습니다. 앱에서 Noto Sans KR(400/700)을 로드합니다. + +## 4. 공개 API + +| Export | 용도 | +|---|---| +| `SWHeader` | 전체 헤더. `ref`는 `
    ` | +| `SWHeaderHome` | 홈 버튼(로고 영역). `logoSrc` / `logo` / `logoAlt` / `onClick` | +| `SWHeaderDocumentTitle` | 파일명 버튼. `documents`를 주면 문서 Dropdown(`title`, `onClick`, `documents`, `menuOpen`, `onMenuOpenChange`, `onDocumentSelect`, `onNew`, `onOpen`, `documentIcon`, `newLabel`, `openLabel`) | +| `SWHeaderLayerControl`, `SWHeaderColorControl`, `SWHeaderLineStyle`, `SWHeaderTextStyle`, `SWHeaderDimensionStyle` | 속성 필드 5종. `SWHeaderLayerControl`은 선택 `state`(현재 레이어의 표시·동결·잠금)로 필드 아이콘을 회색으로 표시 | +| `SWHeaderLayerMenu` | 레이어 필드 + 레이어 Dropdown(`value`, `layers`, `activeLayerId`, `open`, `onOpenChange`, `onClick`, `onLayerSelect`, `onVisibilityChange`, `onFreezeChange`, `onLockChange`, `onDetail`). `SWHeader`는 `layers`가 있을 때 이것을 사용 | +| `SWHeaderColorMenu` | 색상 필드 + 색상 Dropdown(2026-10-16, `value`, `colors`, `userColors`, `mode`, `open`, `onOpenChange`, `onClick`, `onColorSelect`, `onModeChange`, `onColorInput`, `onPick`, `onDetail`). `SWHeader`는 `colors`가 있을 때 사용 | +| `SWHeaderLineStyleMenu` | 선스타일 필드 + 3열 Dropdown(`value`, `lineTypes`, `lineWeights`, `activeLineTypeId`, `activeLineWeightId`, `onLineTypeSelect`, `onLineWeightSelect`, `onLineWeightValueChange`, `onScaleChange`, `onDetail`, 열림 Props). `SWHeader`는 `lineTypes` 또는 `lineWeights`가 있을 때 사용 | +| `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu` | 문자·치수스타일 필드 + 목록 Dropdown(`value`, `textStyles` / `dimensionStyles`, `active*Id`, `on*Select`, `onDetail`, 열림 Props) | +| `SWHeaderLinePreview`, `swHeaderLinePatterns` | 70 × 2 선 미리보기와 Figma CENTER(22·7·22·7) / HIDDEN(33·33) 패턴 | +| `SWHeaderInput` | 수정 가능한 SW Input(Figma input 26:11656 · cursor 26:11664). 레이어 상세 등 상세 영역의 값 편집용 | +| `parseSWHeaderColor`, `parseSWHeaderNumber` | Input 유효성 검사 도우미(`r,g,b` / `#rrggbb`, 소수) | +| `SWHeaderProperties` | 상세보기(속성Bar / 속성창) | +| `SWHeaderActions` | 인쇄 · 팝업 가이드 | +| `SWHeaderWindowControls` | 창 이동 · 최소화 · 종료 | +| `SWTheme` | 하위 컨트롤을 헤더 밖에서 쓸 때 토큰·글꼴·버튼 초기화 범위 | +| 타입 | `SWHeaderProps`, `SWHeaderMenuId`, `SWHeaderLayerValue`, `SWHeaderLayer`, `SWHeaderColorValue`, `SWHeaderLineStyleValue`, `SWHeaderTextStyleValue`, `SWHeaderDimensionStyleValue`, `SWHeaderDocument`, `SWHeaderColorMode`, `SWHeaderColorOption`, `SWHeaderColorInputValue`, `SWHeaderLineType`, `SWHeaderLineWeight`, `SWHeaderTextStyleOption`, `SWHeaderDimensionStyleOption`, `SWHeaderInputValueType`, 각 하위 컴포넌트 `*Props`, `SWThemeProps` | + +내부 구현(`SWHeaderField`, `SWHeaderMore`, `useSWHeaderDropdown`, `SWHeaderMenuDetail`)은 공개하지 않습니다. + +## 5. SWHeader Props + +`HTMLAttributes`(단 `title`, `children`, `color` 제외)를 함께 받습니다. `className`·`style`·`aria-*`는 `
    `에 전달됩니다. + +| Prop | 타입 | 기본값 | 설명 | +|---|---|---|---| +| `documentTitle` | `string` | 필수 | 파일명. 좁으면 말줄임, 전체 이름은 `title` 툴팁 | +| `drawingModeLabel` | `string` | `"그리기모드"` | 그리기 모드 라벨 | +| `layer` | `{ name }` | `{ name: "0" }` | 현재 레이어(`layers`에 `activeLayerId`와 같은 항목이 없을 때 필드에 표시) | +| `layers` | `SWHeaderLayer[]` | — | 레이어 필드 아래 Dropdown 목록(배열 순서 그대로). 없으면 Dropdown 없이 기존 필드 버튼, `[]`이면 하단(레이어 상세)만 | +| `activeLayerId` | `string` | — | 현재 레이어. 필드에 이름·상태 아이콘 표시, 목록에서 이름만 `#FFC600` | +| `layerMenuOpen` | `boolean` | — | 레이어 Dropdown 열림 상태(제어형). 없으면 내부에서 관리 | +| `color` | `{ value, swatch? }` | `{ value: "ByLayer", swatch: "#ffffff" }` | 색상 값 표시와 칩 색 | +| `lineStyle` | `{ name, weight, scale }` | `ByLayer / ByLayer / 1.00` | 선스타일 | +| `textStyle` | `{ font, name }` | `Arial / Standard` | 문자스타일 | +| `dimensionStyle` | `{ name }` | `Standard` | 치수스타일 | +| `activeMenu` | `"layer" \| "color" \| "lineStyle" \| "textStyle" \| "dimensionStyle" \| null` | `null` | 선택(열림) 표시 | +| `propertyBarOpen` | `boolean` | `false` | 속성Bar 눌림 | +| `propertyPanelOpen` | `boolean` | `false` | 속성창 눌림 | +| `disabled` | `boolean` | `false` | 메뉴·속성·인쇄/가이드 비활성(창 제어 제외) | +| `tools` | `ReactNode` | — | 객체 수정 영역의 필드 뒤 추가 도구 | +| `logoSrc` | `string` | — | 로고 이미지 URL. 32 × 17 로고 영역에 `contain`으로 맞춤 | +| `logo` | `ReactNode` | — | 로고 요소(인라인 SVG 등). `logoSrc`보다 우선 | +| `logoAlt` | `string` | — | 제품명. 홈 버튼 이름이 " 홈"(없으면 "홈") | +| `documents` | `SWHeaderDocument[]` | — | 파일명 아래 문서 Dropdown 목록. 없으면 Dropdown 없이 기존 버튼, `[]`이면 New / Open만 | +| `documentMenuOpen` | `boolean` | — | 문서 Dropdown 열림 상태(제어형). 없으면 내부에서 관리 | +| `activeDocumentId` | `string` | — | 현재 문서. 목록 순서는 그대로 두고 이 문서의 이름만 `#FFC600` | +| `documentIcon` | `ReactNode` | Figma 문서 아이콘 | `icon`이 없는 문서의 아이콘(29 × 12 영역) | +| `documentNewLabel` / `documentOpenLabel` | `string` | `+ New` / `Open` | 하단 버튼 글자 | +| `colors` | `SWHeaderColorOption[]` | — | 색상 Dropdown 기본 팔레트(2026-10-16). 없으면 Dropdown 없이 기존 필드 버튼 | +| `userColors` | `SWHeaderColorOption[]` | — | 사용자 색상(개수 가변, 2px 간격 줄바꿈, 4행 초과 시 팔레트 영역 스크롤) | +| `colorMode` | `"byLayer" \| "byBlock" \| null` | — | 눌린 ByLayer / ByBlock. `null`·미지정 = 명시 색 | +| `colorMenuOpen` | `boolean` | — | 색상 Dropdown 열림(제어형). 없으면 내부 관리 | +| `lineTypes` / `lineWeights` | `SWHeaderLineType[]` / `SWHeaderLineWeight[]` | — | 선스타일 Dropdown의 선 종류 / 가중치 열. 둘 다 없으면 기존 필드 버튼. 스케일 열은 `lineStyle.scale` | +| `activeLineTypeId` / `activeLineWeightId` | `string` | `lineStyle.name` / `.weight`와 같은 이름의 행 | 현재 행(이름 `#FFC600`) | +| `lineStyleMenuOpen` | `boolean` | — | 선스타일 Dropdown 열림(제어형) | +| `textStyles` / `dimensionStyles` | `SWHeaderTextStyleOption[]` / `SWHeaderDimensionStyleOption[]` | — | 문자 / 치수스타일 Dropdown 행. 없으면 기존 필드 버튼 | +| `activeTextStyleId` / `activeDimensionStyleId` | `string` | `textStyle.name` / `dimensionStyle.name`과 같은 이름의 행 | 현재 행 | +| `textStyleMenuOpen` / `dimensionStyleMenuOpen` | `boolean` | — | 각 Dropdown 열림(제어형) | + +Dropdown 데이터 타입(모두 `id`로 식별, 배열 순서 = 표시 순서, 패키지에 고정 데이터 없음): + +| 타입 | 필드 | +|---|---| +| `SWHeaderColorOption` | `{ id; color; value?; label?; disabled? }` — `color` CSS 색, `value` 보고·표시 값(기본 `color`의 `r,g,b`), `label` 접근성 이름 | +| `SWHeaderColorInputValue` | `{ value: "r,g,b"; rgb: [r, g, b]; hex: "#rrggbb" }` | +| `SWHeaderLineType` | `{ id; name; pattern?: number[]; disabled? }` — `pattern` 70px 미리보기의 대시 길이(4px 간격, 비율 맞춤), 없으면 실선 | +| `SWHeaderLineWeight` | `{ id; name; value?; editable?; disabled? }` — `value` 오른쪽 값(ByDefault 0.25), `editable` 이면 값 Input(User) | +| `SWHeaderTextStyleOption` | `{ id; name; font; disabled? }` | +| `SWHeaderDimensionStyleOption` | `{ id; name; disabled? }` | + +`SWHeaderDocument`: `{ id: string; name: string; title?: string; icon?: ReactNode; disabled?: boolean }` — `title`은 툴팁(기본 `name`). + +`SWHeaderLayer`: `{ id: string; name: string; color?: string; visible?: boolean; frozen?: boolean; locked?: boolean; disabled?: boolean }` — `color`는 16px 견본 색(기본 `#ffffff`), 기본값은 `visible: true`, `frozen: false`, `locked: false`. 확정 매핑([명세 §5.2.1](./sw-header-design-spec.md#521-아이콘-onoff와-데이터-의미)): + +| 아이콘 | 컬러 | 회색 | 클릭 시 Callback 값 | +|---|---|---|---| +| 전구 | `visible=true` | `visible=false` | `onLayerVisibilityChange(layer, !visible)` | +| 눈꽃 | `frozen=false`(동결 해제) | `frozen=true`(동결) | `onLayerFreezeChange(layer, !frozen)` | +| 자물쇠 | `locked=false`(잠금 해제) | `locked=true`(잠금) | `onLayerLockChange(layer, !locked)` | + +헤더는 값을 직접 바꾸지 않으므로 호스트가 받은 값으로 `layers`를 갱신해야 아이콘 색이 바뀝니다. + +> **로고는 확정 디자인이 아닙니다.** 로고 영역의 위치·크기는 공통 디자인이고, 로고 이미지는 사용하는 SW 프로그램이 정합니다. 패키지에는 로고가 들어 있지 않으며 `logo`·`logoSrc`를 전달하지 않으면 로고 없이 표시됩니다(배치는 그대로). Storybook의 기본 로고는 임시 자산(`sw-header-logo-placeholder.svg`)입니다. + +기본값은 Figma 표시값이 아니라 중립값입니다. Figma 샘플 값은 Storybook `figmaArgs`를 참고합니다. + +## 6. Callback + +| Callback | 호출 시점 | +|---|---| +| `onHomeClick` | 홈(로고) 클릭 | +| `onDocumentClick` | 파일명 클릭(Dropdown 열고 닫을 때도 호출) | +| `onDocumentMenuOpenChange(open)` | 문서 Dropdown 열림·닫힘 | +| `onDocumentSelect(document)` | 문서 항목 선택. 문서를 여는 동작은 호스트가 구현 | +| `onDocumentClose(document)` | 행의 X(문서 닫기). 주면 모든 행에 X가 생기고 Hover·키보드 Focus한 행에만 보입니다. 선택 Callback과 중복되지 않습니다. 실제 닫기·목록 갱신·다음 선택은 호스트가 처리 | +| `onDocumentNew`, `onDocumentOpen` | Dropdown 하단 `+ New` / `Open` | +| `onLayerOpen`, `onColorOpen`, `onLineStyleOpen`, `onTextStyleOpen`, `onDimensionStyleOpen` | 각 필드 클릭(Dropdown이 있으면 열고 닫을 때도 호출) 또는 더보기 항목 선택 1회(대표 필드 전환, §7 "반응형 More") | +| `onLayerMenuOpenChange(open)` | 레이어 Dropdown 열림·닫힘 | +| `onLayerSelect(layer)` | 레이어 행(견본·이름) 선택. 목록이 닫힙니다. 현재 레이어 변경은 호스트가 `activeLayerId`로 반영 | +| `onLayerVisibilityChange(layer, nextVisible)` | 전구 클릭. 목록 유지, 선택 Callback 없음 | +| `onLayerFreezeChange(layer, nextFrozen)` | 눈꽃 클릭. 목록 유지, 선택 Callback 없음 | +| `onLayerLockChange(layer, nextLocked)` | 자물쇠 클릭. 목록 유지, 선택 Callback 없음 | +| `onLayerDetail()` | 하단 `레이어 상세`. 호출 후 목록이 닫힙니다. 없으면 버튼은 Figma 외형 그대로 비활성 | +| `onColorMenuOpenChange(open)` 등 `on*MenuOpenChange` | 각 Dropdown 열림·닫힘(색상·선/문자/치수스타일) | +| `onColorSelect(option)` | 팔레트·사용자 색상 칩. 목록 유지 | +| `onColorModeChange(mode)` | ByLayer / ByBlock. 목록 유지. 상호 배타 표시는 호스트가 `colorMode`로 반영 | +| `onColorInput(value)` | RGB 입력 확정(Enter·Focus 이동·목록 닫힘). 유효한 `r,g,b`(0–255) 또는 `#rrggbb`만, 값이 바뀐 경우만 | +| `onColorPick()` | 색상 추출 버튼. 목록이 닫히고 실제 추출(도면 픽셀 등)은 호스트가 구현 | +| `onLineTypeSelect(type)` / `onLineWeightSelect(weight)` | 선 종류 / 가중치 행. 다른 열 값은 건드리지 않고 목록 유지 | +| `onLineWeightValueChange(weight, value)` | `editable` 가중치 Input 확정(0 이상 소수) | +| `onLineScaleChange(value)` | 스케일 Input 확정(0 초과 소수) | +| `onTextStyleSelect(style)` / `onDimensionStyleSelect(style)` | 행 선택 후 목록 닫힘 | +| `onColorDetail`, `onLineStyleDetail`, `onTextStyleDetail`, `onDimensionStyleDetail` | 하단 `… 상세`. 전달 시 호출 후 목록 닫힘. 없으면 공통 Default/Hover를 유지하고 클릭은 무동작. 상세 팝업은 패키지 범위 밖(추후 Figma 전달 후) | +| `onPropertyBarToggle`, `onPropertyPanelToggle` | 속성 토글 클릭 또는 더보기 항목 선택 | +| `onPrint`, `onPopupGuide` | 인쇄·팝업 가이드 | +| `onWindowMoveStart(event)` | 창 이동 영역 pointer down | +| `onMinimize`, `onClose` | 최소화·종료 | + +헤더는 선택·열림 상태를 스스로 저장하지 않습니다. 호스트가 Callback에서 상태를 바꾸고 Props로 다시 내려줍니다. 실제 드롭다운 목록, 파일 열기, 창 이동·최소화·종료(브라우저 / Electron / 설치형 SW마다 다름)는 호스트가 구현합니다. + +## 7. 전체 헤더 예제 + +```tsx +import { useState } from "react" +import { SWHeader, type SWHeaderMenuId } from "@hm-design/sw" +import "@hm-design/sw/styles.css" + +export function DrawingHeader({ fileName }: { fileName: string }) { + const [activeMenu, setActiveMenu] = useState(null) + const [panelOpen, setPanelOpen] = useState(false) + const toggle = (id: SWHeaderMenuId) => () => setActiveMenu(current => (current === id ? null : id)) + + return ( + setPanelOpen(open => !open)} + onClose={() => window.close()} + /> + ) +} +``` + +### 로고 지정 예 + +```tsx +import productLogo from "./assets/product-logo.svg" // 각 프로그램의 로고 파일 + + + +// React 요소로 전달(인라인 SVG 등). logoSrc보다 우선합니다. +} logoAlt="제품명" /> +``` + +- 로고 영역은 32 × 17px입니다. 가로·세로 비율이 달라도 영역 안에 맞춰지고 잘리지 않습니다. 선명하게 보이도록 SVG 또는 64 × 34px 이상 이미지를 권장합니다. +- 로고 영역 크기는 디자인 기준이므로 바꾸지 않는 것을 권장합니다(토큰 `--hm-sw-header-logo-width` / `-logo-height`). + +### 문서 Dropdown 예 + +```tsx +const [openDocuments, setOpenDocuments] = useState([]) + + activate(document.id)} + onDocumentClose={document => closeDocument(document.id)} // 목록·현재 문서는 호스트가 갱신 + onDocumentNew={createDocument} + onDocumentOpen={showOpenDialog} // 파일 열기는 호스트가 구현 +/> +``` + +- 클릭으로 열고 닫습니다(Hover로 열리지 않음). 바깥 클릭·Escape·항목 선택·New/Open 후 닫힙니다. +- Dropdown은 헤더 아래로 겹쳐 열립니다. SWHeader의 조상 요소에 `overflow: hidden`이 있으면 잘리므로, 헤더는 페이지 최상단처럼 잘리지 않는 위치에 둡니다. + +### 레이어 Dropdown 예 + +```tsx +const [layers, setLayers] = useState(() => drawing.layers.map(toHeaderLayer)) +const patch = (id: string, change: Partial) => + setLayers(list => list.map(layer => (layer.id === id ? { ...layer, ...change } : layer))) + + setCurrentLayer(layer.id)} + onLayerVisibilityChange={(layer, visible) => { viewer.setLayerVisible(layer.id, visible); patch(layer.id, { visible }) }} + onLayerFreezeChange={(layer, frozen) => { viewer.setLayerFrozen(layer.id, frozen); patch(layer.id, { frozen }) }} + onLayerLockChange={(layer, locked) => { viewer.setLayerLocked(layer.id, locked); patch(layer.id, { locked }) }} + onLayerDetail={openLayerManager} // 없으면 버튼 비활성(임의 팝업 없음) +/> +``` + +- 레이어 필드를 클릭해야 열립니다(Hover는 테두리·글자색만). 행 선택·Escape·바깥 클릭·Tab 이탈·레이어 상세 후 닫힙니다. 전구·눈꽃·자물쇠 클릭은 목록을 유지합니다. +- 헤더는 레이어 상태를 저장하지 않습니다. Callback에서 도면(`viewer.*`은 예시)과 `layers`를 함께 갱신해야 아이콘이 바뀝니다. 실제 표시·동결·잠금 처리와 편집 가능 여부 판단은 호스트 책임입니다. +- 키보드: 필드에서 ↓로 열면 현재 레이어에 Focus, ↓↑ 행 이동(같은 열), ←→ 행 안 이동, Enter/Space 실행. 상세 규격은 [디자인 명세 §5.2](./sw-header-design-spec.md#52-레이어-dropdown-figma-headermenu레이어-2610940-2026-10-16). + +### 색상 · 선/문자/치수스타일 Dropdown 예 (2026-10-16) + +```tsx +const [color, setColor] = useState({ value: "ByLayer", swatch: "#ffffff" }) +const [colorMode, setColorMode] = useState("byLayer") +const [lineStyle, setLineStyle] = useState({ name: "Continuous", weight: "0.25", scale: "1.00" }) + + { viewer.setColor(option.color); setColor({ value: option.value ?? option.color, swatch: option.color }); setColorMode(null) }} + onColorModeChange={mode => { viewer.setColorMode(mode); setColorMode(mode) }} + onColorInput={({ value, hex }) => { viewer.setColor(hex); setColor({ value, swatch: hex }); setColorMode(null) }} + onColorPick={startPickFromDrawing} // 실제 픽셀 추출은 호스트 + onColorDetail={openColorDetail} // 없으면 Hover 유지·클릭 무동작(상세 팝업 미제공) + lineStyle={lineStyle} + lineTypes={program.lineTypes} // [{ id: "center", name: "CENTER", pattern: swHeaderLinePatterns.center }, ...] + lineWeights={program.lineWeights} // [{ id: "user", name: "User", value: "0.25", editable: true }, ...] + onLineTypeSelect={type => setLineStyle(s => ({ ...s, name: type.name }))} // 가중치·스케일 유지 + onLineWeightSelect={weight => setLineStyle(s => ({ ...s, weight: weight.value ?? weight.name }))} + onLineWeightValueChange={(weight, value) => updateWeight(weight.id, value)} + onLineScaleChange={scale => setLineStyle(s => ({ ...s, scale }))} + textStyle={textStyle} + textStyles={program.textStyles} // [{ id, font: "Arial", name: "Standard" }, ...] + onTextStyleSelect={style => setTextStyle({ font: style.font, name: style.name })} + dimensionStyle={dimensionStyle} + dimensionStyles={program.dimensionStyles} // [{ id, name: "ISO - 25" }, ...] + onDimensionStyleSelect={style => setDimensionStyle({ name: style.name })} +/> +``` + +- 클릭으로 열고 닫습니다(Hover는 노란 테두리·글자만). 다른 Dropdown을 열면 앞의 것이 닫히고, 바깥 클릭·Escape·Tab 이탈로 닫힙니다. 헤더 높이(49px)와 다른 필드 위치는 변하지 않습니다. +- 색상·선스타일은 여러 속성을 이어서 바꿀 수 있도록 선택 후에도 열려 있고, 문자·치수스타일은 행 선택 후 닫힙니다. 색상 추출과 `… 상세`는 호출 후 닫힙니다. +- 헤더는 값을 저장하지 않습니다. Callback 값으로 `color` / `colorMode` / `lineStyle` 등을 갱신해야 필드가 바뀝니다. 명시 색을 고를 때 ByLayer/ByBlock을 해제할지는 호스트 정책입니다(Storybook 예제는 해제). +- 키보드: 필드에서 ↓로 열면 현재(눌린) 항목 또는 첫 항목에 Focus, ↓↑로 Dropdown 안 버튼·Input 순서대로 이동, Enter/Space 실행, Escape 닫기(필드로 Focus 복귀). +- Hover: 상세 버튼 5개는 문자스타일 상세 기준 공통 Hover(배경 .25·radius 25·아이콘 35%·글자 35%)를 적용합니다. ByLayer/ByBlock은 기존 후속 Hover 기준을 따릅니다. 색상 칩·색상 추출·목록 행(선 종류·가중치·스케일·문자·치수)·Input의 현재 동작은 유지합니다. +- 좁은 헤더: 목록은 헤더 안으로 옮겨지며, 468px 선스타일 목록은 헤더 폭 480 미만에서 세로로 쌓입니다. + +### 동적 데이터 구조 + +모든 Dropdown(문서·레이어·색상·선 종류·가중치·문자·치수스타일)은 Props 배열로만 그립니다. + +- 항목 추가·삭제·이름/값 변경·순서 변경은 배열을 바꾸면 되고 컴포넌트 소스 수정이 필요 없습니다. 각 항목은 `id`로 식별되어 바뀐 항목만 다시 그리고 다른 행의 상태(입력 중 값 등)를 보존합니다. +- 현재 항목(`active*Id`)이 배열에서 사라지면 선택 표시가 없어지고 필드는 값 Props(`layer`, `lineStyle` 등)를 그대로 표시합니다. 다음 현재 항목은 호스트가 정합니다. +- `disabled`(선택 불가), `editable`(가중치 값 Input), Input의 `readOnly` / `disabled`를 항목별로 줄 수 있습니다. +- 목록이 길면 Dropdown 안에서만 스크롤합니다(행 목록 최대 240px = 8행, 사용자 색상은 팔레트 118px). 헤더 레이아웃은 유지됩니다. +- Storybook `SW / Header / Dynamic Data`에서 추가·삭제·이름·값·순서 변경을 직접 확인할 수 있습니다. + +### 수정 가능한 Input — `SWHeaderInput` + +레이어 상세 등 상세 영역에서 속성값을 직접 고칠 때 씁니다(Figma input 26:11656, cursor 26:11664). 상세 팝업 레이아웃은 아직 없으므로 Input과 계약만 제공합니다. + +```tsx +import { SWHeaderInput, parseSWHeaderNumber, SWTheme } from "@hm-design/sw" + + + preview(draft)} // 편집 중 임시값(선택) + onCommit={next => updateEntity({ x: next })} // Enter · Focus 이동 · 감싼 Dropdown 닫힘, 유효 + 변경 시만 + onCancel={() => clearPreview()} // Escape: 확정값으로 복원 + parse={draft => parseSWHeaderNumber(draft, { min: 0 })} // 선택: 형식·범위 직접 지정 + /> + +``` + +- 상태: Default(배경·테두리 없음, 58 × 20 기준) / Hover(1px `rgba(212,203,189,.25)`, 24px) / 편집 중(`#0F0D0A`, 1px `.3`, 24px). 글자 `#E60403` 14px + 검정 Text Stroke, 글자 위치는 상태와 무관하게 고정. 폭은 값 길이에 맞춥니다. +- 커서: 네이티브 caret을 `#E60403`(`caret-color`)으로 표시하고 깜박임도 네이티브입니다(가짜 커서 없음). 선택·IME(한글 조합 중 Enter는 확정하지 않음)는 브라우저 기본 동작입니다. +- `onCommit`이 없거나 `readOnly`이면 읽기 전용(Hover·편집 표시 없음), `disabled`는 40%. +- 선택형(목록) 입력은 Figma 디자인 전달 후 같은 데이터 정의(`id`·이름·값·타입)로 확장합니다. 현재는 텍스트·숫자와 사용자 `parse`(임의 형식)를 지원합니다. + +### 반응형 More — 대표 필드 전환 + +헤더가 좁아 필드가 더보기(…)로 옮겨졌을 때, 더보기에서 필드 항목을 고르면 그 필드가 객체 수정 영역 첫 칸(레이어 필드 자리)에 표시되고 Dropdown이 바로 아래에 열립니다. Focus는 그 필드로 옮겨갑니다. + +- 레이어는 그동안 더보기로 이동하며, 더보기 → 레이어로 원래 배치로 돌아갑니다. 이미 화면에 있는 필드는 더보기에 나오지 않습니다. +- 전환은 UI 상태입니다. 데이터 Callback은 호출되지 않고, 필드 클릭과 같은 `on*Open` 1회와 `on*MenuOpenChange(true)`만 호출됩니다. 값은 그대로 유지됩니다. +- 폭이 넓어져 그 필드가 다시 보이는 단계에서는 1920 기준 배치로 돌아갑니다(Breakpoint 1800 / 1180 / 1080 / 900 / 640 / 520은 그대로). +- 실측 More(2026-10-19): Breakpoint 위에서 객체 수정 영역의 실제 남은 공간도 측정합니다. `leading`·`tools`·긴 라벨·사이드 패널 등으로 공간이 모자라면 표시할 수 없는 메뉴만 더보기로 옮기고, 공간이 다시 생기면 원래 자리·순서로 돌려놓습니다. 메뉴를 열고 닫는 것만으로는 Header 요소의 위치·폭이 바뀌지 않습니다([명세 §12.1](./sw-header-design-spec.md#121-실측-more--실제-사용-가능한-공간-기준-2026-10-19)). +- Dropdown 데이터(`colors` 등)가 없는 필드도 같은 방식으로 대표 칸에 표시됩니다(목록 없이 `on*Open`만). + +## 8. 하위 컴포넌트 재사용 + +헤더 밖에서는 `SWTheme`로 감쌉니다. 소비자가 `hm-sw-*` class를 붙이지 않습니다. + +```tsx +import { SWTheme, SWHeaderLayerControl, SWHeaderColorControl, SWHeaderProperties } from "@hm-design/sw" + + + + + + +``` + +`SWTheme`는 배치(flex 등)를 정하지 않습니다. 배치는 `className`·`style`로 소비 화면에서 정합니다. + +## 9. 테마 커스터마이징 + +`--hm-sw-header-*` 토큰만 바꿉니다. 사용자 확정 3개 면(파일명·객체 수정·속성 입력)은 기본값을 유지하는 것을 권장합니다. + +```tsx +import type { CSSProperties } from "react" + + +``` + +토큰 목록과 사용처는 [디자인 명세 §14](./sw-header-design-spec.md#14-sw-전용-토큰-목록)를 따릅니다. `@hm-design/ui` Theme Runtime(JSON)과는 연결되어 있지 않습니다. + +## 10. DWG/DXF 뷰어 연동 시 고려사항 + +- 기존 뷰어 `Toolbar.tsx`의 파일명(`fileName`)은 `documentTitle`로, 패널 토글(`propsOpen` 등)은 `propertyPanelOpen` + `onPropertyPanelToggle`로 연결할 수 있습니다. +- 뷰어의 파일 열기·샘플·Model/Layout 탭·2.5D·어두운 배경·로드 상태는 Figma SW Header에 없는 뷰어 전용 도구입니다. 필요하면 `tools` 슬롯에 호스트가 렌더링합니다(스타일은 호스트 책임). +- 헤더 높이는 49px입니다. 고정 배치(`position: fixed`)는 `className`·`style`로 호스트에서 지정합니다. +- 반응형은 모두 헤더 자신의 폭(container query)을 기준으로 하므로 사이드 패널 때문에 헤더가 좁아져도 동작합니다. 단계(1800 / 1180 / 1080 / 900 / 640 / 520)는 [디자인 명세 §12](./sw-header-design-spec.md#12-반응형)를 따르고, 그 위에서 실제 남은 공간을 측정해 부족한 메뉴만 더보기로 옮깁니다([§12.1](./sw-header-design-spec.md#121-실측-more--실제-사용-가능한-공간-기준-2026-10-19)). +- 뷰어는 현재 `@hm-design/ui`의 SWHeader 패턴을 사용합니다. 이 패키지로 바꾸는 작업은 이번 범위가 아닙니다. + +## 10.1 상호작용 상태 + +- 그룹 필드 Hover(현재 추가 기준): 레이어·색상·선/문자/치수스타일은 버튼 전체 Hover 시 라벨·값과 지정된 선/폰트/치수 미리보기가 `#FFC600`이 됩니다. 기존 Gradient Hover Border와 검정 외곽선은 유지하며 색상 견본·레이어 상태 아이콘은 바꾸지 않습니다. Disabled는 새 Hover 효과를 적용하지 않고 Selected 색은 기존대로입니다. 상세보기의 텍스트 전용 Hover는 변경하지 않습니다. [디자인 명세 §11.5](./sw-header-design-spec.md#115-현재-추가-기준--1400ms-및-그룹-필드-hover-2026-10-16). + +- Hover Border: 테두리가 있는 버튼(홈, 5개 속성 필드, 더보기, 인쇄, 팝업 가이드)은 마우스를 올리면 테두리가 Figma 홈 버튼의 노란 gradient로 바뀝니다. 5개 필드 내부 텍스트·미리보기는 위 추가 기준을 함께 적용합니다. 파일명과 속성Bar·속성창은 예외로, 테두리 없이 글자만 `#FFC600`으로 바뀝니다(파일명 Dropdown은 클릭해야 열림). 문서 Dropdown 안은 Figma hover를 따릅니다: 목록 항목은 검정 40% 배경, `+ New` / `Open`은 배경이 진해지고(20% → 30%) 글자가 검정 100%가 됩니다(노란 테두리 없음). 배경·크기·위치는 변하지 않습니다. 비활성 버튼은 바뀌지 않습니다. +- Hover(창 제어 · 바로가기 아이콘): 인쇄·팝업 가이드는 노란 테두리와 함께 아이콘의 `#B6D0C9` 부분만 `#FFC600`으로 바뀝니다(외곽선·그림자·타일 색은 그대로). 최소화는 검정 20% 배경 + 흰 막대, 종료는 `#E40000` 배경 + 흰 X로 바뀝니다(Figma 26:12156 / 26:12161, 32 × 48 유지, 노란 테두리 없음). 소비자는 class나 Prop을 추가하지 않습니다. 상세는 [디자인 명세 §11.2](./sw-header-design-spec.md#112-창-제어--바로가기-아이콘-hover-2026-10-16). +- Selected(`activeMenu`, `propertyBarOpen`, `propertyPanelOpen`): 글자만 `#FFC600`. Hover와 함께 표시됩니다. +- Focus: 키보드 Focus 윤곽선은 Hover 테두리 위에 표시됩니다. +- Hover 테두리 색은 `--hm-sw-header-hover-border-gradient` 토큰, 최소화 Hover 배경·막대 색은 `--hm-sw-header-window-button-hover-background` / `--hm-sw-header-window-icon-hover-color` 토큰으로 바꿀 수 있습니다. 종료·인쇄·팝업 가이드 Hover 아이콘은 패키지 SVG Asset입니다. 대상·제외 목록은 [디자인 명세 §11.1](./sw-header-design-spec.md#111-hover-테두리-공통-상호작용-규칙)을 따릅니다. + +- Text Stroke(2026-10-16): Figma에 Stroke가 있는 헤더·Dropdown 텍스트는 검정 외곽선(14·16px 1.3px, 12px 라벨 1px)을 표시합니다(자기 색 0.3px Stroke는 2026-10-16 추가 수정으로 제거). Hover·Selected는 채움색만 바뀌고 외곽선은 유지됩니다. 더보기 메뉴·창 이동 Tooltip은 Figma에 Stroke가 없어 적용하지 않고, `+ New` / `Open`은 요청에 따라 기존 그대로입니다. 외곽선 색은 `--hm-sw-header-text-outline-color`, 외곽선 전체는 `--hm-sw-header-text-outline` / `--hm-sw-header-label-outline`으로 바꿀 수 있습니다(`--hm-sw-header-text-stroke-width`는 제거됨)([명세 §6.1](./sw-header-design-spec.md#61-text-stroke-2026-10-16)). + +## 10.2 창 이동 Hover Motion + +별도 Prop이나 의존성 없이 Hover하면 GIF의 경로·구간 비율을 유지하면서 후속 사용자 요청에 따라 **1.4초마다 반복**합니다(원본 GIF 1.64초와 다름). 커서가 아래에서 위로 먼저 올라가고 약 444ms에 문구가 나타난 뒤 창·커서·문구가 오른쪽 위로 이동합니다. 약 888ms에 이동을 마치고 약 512ms 유지한 뒤 반복합니다. 28px / −4.5px 이동과 가속·감속 비율은 그대로이며 이탈 시 즉시 기본 SVG로 돌아갑니다. 크기·줄무늬·SVG·Tooltip 규격은 SW/Figma를 유지합니다. + +`onWindowMoveStart`는 기존 `PointerEventHandler`입니다. 예를 들어 호스트는 `event.currentTarget.setPointerCapture(event.pointerId)`로 이후 포인터를 추적할 수 있습니다. 패키지는 포인터를 캡처하거나 실제 창을 이동시키지 않습니다. 아이콘과 `창 이동` Tooltip은 `pointer-events: none`이며 Callback 이벤트와 최소화·종료 클릭을 가로채지 않습니다. 누르는 동안 CSS `:active`로 모션을 멈추고 Tooltip을 숨깁니다. Tooltip은 창 이동 영역 밖의 최소화 및 종료 왼쪽 일부에 겹칠 수 있습니다. + +- 헤더 폭 ≥1080px: 88px 영역, GIF 기준 반복 모션과 Tooltip. +- 640–1079px: 24px 드래그 영역, 그림은 숨기고 정적 Tooltip만 표시. +- <640px: 기존대로 창 이동 영역 숨김. +- Reduced Motion: 기본 아이콘과 정적 Hover Tooltip을 유지하고 애니메이션을 끕니다. 24px 단계에서는 기존대로 그림이 숨겨집니다. OS 설정을 재생 중 바꾸어도 적용됩니다. +- Focus: 창 이동 div는 기존대로 Tab 대상이 아니며 키보드 창 이동·Focus Tooltip을 제공하지 않습니다. 실제 호스트의 키보드 창 이동 대안과 보조기술 검증은 별도로 필요합니다. 최소화·종료는 이름이 있는 기본 버튼이며 Focus 표시가 유지됩니다. + +Tooltip은 45 × 17px, 검정 80% 배경과 흰색 12px/400 글자입니다. Tooltip만 Figma의 Inter를 우선하고 한글·미설치 환경은 기존 SW 글꼴로 fallback합니다. 별도 폰트 설치는 하지 않습니다. 경로·자산은 [명세 §11.4](./sw-header-design-spec.md#114-현재-창-이동-motion--ani_hover_movegif-우선-2026-10-16), 현재 시간과 필드 Hover는 [명세 §11.5](./sw-header-design-spec.md#115-현재-추가-기준--1400ms-및-그룹-필드-hover-2026-10-16), 결과는 [현재 통합 검증](./sw-header-speed-composed-hover-verification-2026-10-16.md)을 참고합니다. 원본 GIF 속도 검증과 GIF 전달 전 결과는 각각 [GIF 검증 기록](./sw-header-window-motion-gif-verification-2026-10-16.md), [과거 검증 기록](./sw-header-window-motion-verification-2026-10-16.md)에 보존합니다. + +## 11. 지원 · 미지원 + +| 지원 | 미지원(호스트 또는 후속 작업) | +|---|---| +| Figma 헤더 1개(26:8944) 표시·선택·Focus·Disabled | 색상·선스타일·문자스타일·치수·레이어 **상세 팝업**(Figma 전달 후), 색 선택 팝업(Figma "추후 디자인 진행예정") | +| 색상(26:10986 / 26:11036)·선스타일(26:11104)·문자스타일(26:11181)·치수스타일(26:11215) Dropdown, ByLayer/ByBlock, RGB·가중치·스케일 Input(2026-10-16) | 실제 색 적용·픽셀 색상 추출·선/문자/치수 스타일 적용(호스트 구현) | +| 반응형 More 대표 필드 전환, `SWHeaderInput`(Default / Hover / 편집 / 커서), Text Stroke(2026-10-16) | 선택형 상세 Input(Figma 미전달) | +| 문서 Dropdown(26:10662) 목록·선택·New/Open Callback·키보드 | 실제 파일 열기·새 문서 만들기(호스트 구현) | +| 레이어 Dropdown(26:10940) 목록·선택·전구/눈꽃/자물쇠 Callback·레이어 상세 Callback·키보드 | 실제 레이어 표시·동결·잠금과 레이어 상세 화면(호스트 구현) | +| 1800 / 1180 / 1080 / 900 / 640 / 520 반응형 + 더보기(옮긴 기능도 같은 Props·Callback) | SW 팝업(DraggablePanel) | +| SSR 문자열 렌더링(window 접근 없음) | 창 이동·최소화·종료의 실제 동작 | +| React 19, ESM, 타입 선언 | CommonJS 빌드, Light/Dark 테마, Runtime Theme JSON 연결 | + +## 12. Storybook + +```bash +npm run storybook +``` + +> **현재 기준(2026-10-20 SW Storybook 간소화):** SW 메뉴 순서는 `Header → Footer → Popup → Viewer → Theme`입니다. `SW / Header`에는 20개 Story가 있습니다(사이드바 기본 표시 10개 + `verification` 태그 10개). `Property Panel · 4개 비교`는 사이드바에서 `SW / Popup` 아래로 옮겼고 ID(`sw-header--property-panel-compare`)는 그대로입니다. `Window Move Motion`·`K Guide`는 `verification` 태그로 숨겼고, `Home Menu · 단독 사용 · 조합형`은 개별 부품 예제로 사이드바에 표시합니다. 테스트·문서에서 쓰지 않던 Home Menu Figma 비교 Story 6개(`sw-header--home-menu-figma`, `-capture-active`, `-capture-outline`, `-capture-recent`, `-variants`, `-recent-files`)와 `Home Menu`의 Figma 스크린샷 비교 섹션은 제거했습니다. Figma 원본은 `docs/sw/figma-additional/screenshots/`에 있습니다. 상세: [SW Storybook 간소화 보고](./sw-storybook-simplification-2026-10-20.md). 아래는 작성 당시 기록입니다. + +(2026-10-19 기록) 홈 메뉴 통합 후 `SW / Header`에는 27개 Story가 있습니다(사이드바 기본 표시 12개 + `verification` 태그 15개). 이전 시점의 Story 표는 [1차 정리 보고 §2](./sw-first-pass-cleanup-review-2026-10-19.md#2-storybook-전체-목록-및-분류), 홈 메뉴 통합 후 목록은 [홈 메뉴 통합·실측 More 보고](./sw-header-home-menu-responsive-2026-10-19.md)를 봅니다. 아래 문단은 Story를 추가한 시점별 설명입니다. + +2026-10-19 홈 메뉴 통합: 기존 `SW / Home Menu` 메뉴는 사이드바에서 제거하고 `SW / Header`로 옮겼습니다. 사이드바에는 `Home Menu`(`sw-header--home-menu`: 로고 클릭 열기/닫기·이벤트 기록, 헤더 폭 조절, Figma 26:10591 비교, Default/Hover/Active, 최근파일 하위 패널, 속성창·SWPopup·Escape 통합) 하나만 표시합니다. Figma 비교 캔버스·Variant·데이터 변경·단독 사용·속성Bar 비교 등은 `sw-header--home-menu-*` ID의 `verification` 태그 Story로 남아 직접 URL과 사이드바 태그 필터로 엽니다. `Overview`의 로고도 같은 홈 메뉴를 엽니다. `Responsive More` 첫 섹션 "실제 사용 가능한 공간 기준"은 헤더 폭 Range와 로고 오른쪽 버튼·추가 도구·홈 메뉴 On/Off로 실측 More의 이동·복귀를 확인합니다. 홈 메뉴는 SW 일반 모드 전용이며 `SW / Viewer`에는 없습니다. + +`SW / Header` 아래 Story: Overview, Default, Controls, Interactive States(인쇄·팝업 가이드·최소화·종료 Default/Hover 비교와 Callback 기록 포함), Responsive, Composed Controls, Logo Slot(기본 임시 로고 / 사용자 지정 로고 / 로고 미전달), Document Dropdown(Default / Hover / Open / 선택 / 여러 문서 / 문서 없음 / 긴 파일명 / 좁은 화면), Layer Dropdown(Layer Default / Hover / Open(Figma 8행) / Row Hover / 전구·눈꽃·자물쇠 4상태 3배 확대 / 선택·Toggle Callback 기록과 상태표 / 여러 상태·현재 레이어 / 긴 레이어명 / 20개 스크롤 / 레이어 없음 / 레이어 상세 / 상태 표시 전용 / 좁은 화면 1440–390). Responsive Story는 헤더 폭 18개(1920–390, 각 단계 경계 전후 포함) 프레임을 나열합니다. 모든 단계가 헤더 폭 기준이므로 Viewport를 바꾸지 않아도 확인할 수 있습니다. + +`Window Move Motion`은 GIF 주요 3상태와 속도 변경 후 약 0 / 205 / 410 / 444 / 683 / 888 / 1366 / 1400ms 프레임, 실제 Hover·Drag·최소화·종료 Callback 및 반복(`motion cycle`) 기록, 축소 폭 예제를 제공합니다. 내부 고정 시간은 원본 GIF 시간 × 1400/1640의 정확한 값입니다. 고정 프레임은 Storybook 전용 Hover attribute와 Web Animations API로 시간을 멈춥니다. Reduced Motion에서는 기본 아이콘·정적 Tooltip 정책을 따르므로 정상 타임라인 비교는 해당 설정을 끄고 Story를 다시 로드합니다. + +2026-10-16 추가 Story: `Color Dropdown`, `Line Style Dropdown`, `Text · Dimension Style Dropdown`(Default / Hover / Expanded / 행 Hover / 독립 버튼 Hover 무변화 / Callback 기록 / 좁은 화면), `Responsive More`(대표 필드 전환 Callback 기록 1440·768·390 + 16개 폭), `Text Stroke`(Figma 원본 이미지 비교 · 3배 확대 · 말줄임), `Layer Detail · Input`(Figma 참조 이미지 · 레이어 상세 Default/Hover 무변화/Disabled/Callback · Input Default/Hover/ReadOnly/Disabled/편집/확정·취소·외부 값·IME), `Dynamic Data`(항목 추가·삭제·이름·값·순서 변경). `Document Dropdown`의 첫 예제는 현재 열린 문서 1개이며, 기본 `figmaArgs`도 그 문서 1개를 전달합니다(`documents=[]`는 예외 상태 예제로만 남김). 검증 결과는 [Dropdown·More·Text Stroke·Input 검증 기록](./sw-header-dropdowns-stroke-input-verification-2026-10-16.md)에 있습니다. + +`Composed Controls`에는 기존 레이어·색상·상세보기와 공개 선/문자/치수 컨트롤, 5개 필드의 고정 Hover 비교가 있습니다. 실제 공용 컴포넌트를 렌더링하며 60 × 15px 치수 Hover SVG는 흰 foreground만 노란색으로 바꾸고 검정 mask 외곽선을 유지합니다. 기존 Story만 보완했으며 새 Story는 추가하지 않았습니다. [현재 통합 검증](./sw-header-speed-composed-hover-verification-2026-10-16.md)을 참고합니다. + +## 속성창·K 가이드 추가 연결 (2026-10-16) + +기존 공개 Props를 유지한 추가 API입니다. `propertyPanel`을 전달하면 기존 속성창 버튼에 패널이 연결됩니다. 미전달 시 기존 토글/Callback 계약만 유지하며 임의의 CAD 데이터/편집 창을 만들지 않습니다. + +```tsx +import { useState } from "react" +import { SWHeader, type SWHeaderProperty } from "@hm-design/sw" +import "@hm-design/sw/styles.css" + +function DrawingHeader() { + const [properties, setProperties] = useState([ + { id: "layer", groupId: "common", name: "레이어", type: "text", value: "층_01" }, + { id: "weight", groupId: "common", name: "선가중치", type: "number", value: "0.25", min: 0, unit: "mm" }, + ]) + return { + // 실제 CAD 반영 및 계산은 호스트에서 수행한 뒤 결과를 Props로 돌려줍니다. + setProperties(items => items.map(item => item.id === property.id ? { ...item, value } : item)) + }, + onToolActiveChange: active => console.info("호스트 선택 도구", active), + }} + onPropertyPanelOpenChange={open => console.info("속성창 열림", open)} + /> +} +``` + +- Uncontrolled: `propertyPanelOpen`을 생략합니다. Controlled: `propertyPanelOpen={open}`, `onPropertyPanelOpenChange={setOpen}`을 함께 전달합니다. 기존 `onPropertyPanelToggle`은 버튼/More 클릭 시 그대로 호출됩니다. 이전 Controlled 호스트가 새 Open Callback 없이 기존 Toggle Callback만 사용한다면 X/Escape 닫기에서도 기존 Toggle로 알립니다. +- 선택 대상이 바뀔 때 `selection.id`도 반드시 변경합니다. 같은 property id라도 이전 객체의 임시 편집값은 재사용하지 않습니다. +- `selection.kind`: none/all/single. `selection.title`·`counts`·`overviewTitle`은 호스트 데이터입니다. counts의 선택적 row/column은 Figma 집계 배치를 표현할 수 있습니다. `onOverviewClick`도 선택 변경을 요청할 뿐 내부 CAD 동작은 없습니다. +- 항목 타입: text/number/select/color/slider/computed. `id/name/value/type/groupId`가 필수이고, `order`로 표시 순서를 지정합니다. 중복 id를 사용하지 마세요. +- `options`는 select의 id/name/disabled 목록입니다. 선택은 Enter 또는 Focus 이동으로 확정하고 Escape로 취소합니다. 삭제되거나 disabled가 된 option은 새 값으로 확정하지 않습니다. 옵션 데이터가 바뀌면 임시 선택을 현재 호스트 값으로 돌립니다. +- `color`는 기존 RGB/HEX parser를 재사용합니다. `swatch`로 별도 견본을 제공할 수 있습니다. `linePreview/linePattern`은 기존 선 미리보기를 재사용합니다. `annotation`은 (ByL) 같은 보조 정보, `unit`은 mm/% 같은 단위입니다. +- number/slider는 `min/max`, slider는 `step`을 지원합니다. slider의 기본 범위는 0~100이며 Story의 0~1 등은 호스트가 지정한 범위입니다. 수치를 계산하거나 Figma의 시각적 thumb 위치에 맞춰 임의 변환하지 않습니다. +- `validate(draft)`가 false면 거부합니다. 항목의 `onCommit(value, property)`와 패널의 `onPropertyChange(property, value)`는 서로 다른 통지 지점입니다. 둘 다 연결하면 각각 통지됩니다. +- 그룹은 `layout=rows/circle/position`, `order/name/collapsedCount/positionLabel`을 받습니다. circle은 원본 SVG 위 `graphicSlot=circumference/diameter/radius/area`의 항목을 배치합니다. 다른 항목은 그래픽 아래에 배치합니다. 계산값은 computed/readOnly로 전달합니다. +- `expandedGroupIds/onExpandedGroupsChange`로 펼침을 제어하거나, Uncontrolled일 때 `defaultExpandedGroupIds`로 시작합니다. 펼침은 property Callback을 실행하지 않습니다. +- `toolActive/onToolActiveChange/toolLabel`로 내부 아이콘을 연결합니다. 현재 의미는 호스트가 정하는 선택 도구 상태 통지이며 CAD 기능을 내장하지 않습니다. +- 단독 사용: ``. 단독 배치는 호스트의 `style`로 지정할 수 있습니다. +- 동적 패널 입력은 `SWHeaderInput commitOnUnmount={false}`를 사용합니다. 기존 Input의 기본 `true` 동작은 유지합니다. +- 속성 필드 상태(2026-10-19, Figma 26:12388 ~ 26:12649): 공통 행은 200 × 28 필드(선가중치처럼 단위 없는 숫자와 투명도 값은 41px 내외 Hug)입니다. Default는 값만, Hover는 `rgba(33,29,19,.4)` 테두리, 숫자 편집 On은 `#0F0D0A` + 흰 단위, Dropdown On은 `#211D13`입니다. 하이퍼링크(text)·재료(computed)는 Figma에 On이 없어 Default/Hover만 적용합니다. [검증 기록](./sw-property-fields-verification-2026-10-19.md). +- 필드 Dropdown: `property.picker`(`"layer" | "lineStyle" | "color" | false`)와 패널 `menus`(`SWHeaderPropertyMenus`: layers·toggle Callback, lineTypes·lineWeights·lineScale, colors·colorMode·onColorPick 등)를 전달합니다. `type: "color"`는 색상, `type: "select"` + `linePreview`는 선스타일 Dropdown이 기본이며 레이어는 `picker: "layer"`를 지정합니다. 목록 선택은 해당 속성의 `onPropertyChange`(값 = 행 id)로 확정되고, 레이어 Toggle·가중치·스케일·ByLayer/ByBlock·색상 추출·상세는 `menus` Callback만 호출합니다. `menus`가 없으면 `options`로 목록을 만듭니다. `mixed`는 `다양함`으로 표시하며 현재 행을 표시하지 않습니다. +- `decimals`를 지정한 숫자는 확정값을 고정 소수 자릿수로 정규화합니다(예: 선축적 `2` → `2.0000`). 색상 입력은 기존 0~255 검증을 유지합니다. +- K 가이드는 별도 데이터를 요구하지 않습니다. 기존 K 버튼 Hover/Focus로 원본 이미지가 Pan/Zoom 반복되고, 작은 화면의 More에서도 같은 미리보기가 보입니다. Reduced Motion·Escape·재진입 초기화가 적용됩니다. 클릭은 기존 `onPopupGuide`만 호출합니다. +- 색상 모드의 null은 직접 색상 의미를 보존하고, 필수 모드 표시는 마지막 유효 모드(처음 ByLayer)를 유지합니다. 선택된 모드를 재클릭해도 onColorModeChange가 중복 호출되지 않습니다. +- 신규 Story: Property Panel / Property Panel Variants / K Guide / Additional Hover. 기존 17개 Story를 유지합니다. + +실행 결과와 제한은 [추가 검증 기록](./sw-header-additional-verification-2026-10-16.md)을 따릅니다. + +## 후속 5개 요구사항 연결 (2026-10-16) + +### 속성Bar와 공유 데이터 + +```tsx +import { SWHeader, SWHeaderPropertyBar, type SWHeaderProperty } from "@hm-design/sw" +import "@hm-design/sw/styles.css" + +const fields: SWHeaderProperty[] = [ + { id: "length", groupId: "shape", name: "길이", type: "number", value: length, min: 0 }, +] +const data = { + selection: { id: objectId, title: objectName, kind: "single" as const }, + properties: fields, + onPropertyChange: (property: SWHeaderProperty, next: string) => updateObject(property.id, next), +} + +``` + +- `propertyBar`는 `SWHeaderPropertyBarProps`: selection/properties/onPropertyChange, 전체 readOnly/disabled 및 div HTML 속성입니다. 개별 property의 readOnly/disabled/validate/min/max도 적용합니다. 컴포넌트 밖에서 단독 사용하면 `SWTheme`로 감쌉니다. +- `propertyBar` 생략 시 propertyPanel의 selection/properties/onPropertyChange만 공유합니다. 두 데이터를 모두 생략하면 토글 상태만 제공하며 임의 속성이나 CAD 수치를 만들지 않습니다. +- `propertyBarOpen` 생략 시 내부 상태, `defaultPropertyBarOpen`으로 초기값을 정합니다. Controlled는 `propertyBarOpen/onPropertyBarOpenChange`를 함께 사용합니다. 기존 `onPropertyBarToggle`도 클릭마다 보존됩니다. 속성창 열림과 독립적입니다. +- properties는 id로 식별하고 `order` 오름차순(같은 값은 배열 순서)으로 표시합니다. 객체 교체 시 selection.id를 바꿉니다. name/value/항목 추가·제거·외부 변경을 반영합니다. +- 값 편집은 `SWHeaderInput`을 사용합니다. Enter/Blur 확정, Escape 취소, 유효하지 않은 입력 복원, 외부 value 반영, 편집 중 삭제 draft 폐기를 지원합니다. 바의 select 타입은 option id를 입력하고 해당 options로 검사합니다. slider 타입은 숫자로 편집합니다. computed는 읽기 전용입니다. 속성창의 select/range UI를 바에 복제하지 않습니다. +- 헤더는 49px, 바는 별도 28px입니다. 폭은 최대 1222px이며 객체 수정 영역의 실제 위치부터 부모의 남은 폭을 사용합니다. x=377 고정값은 없습니다. 좁으면 focus 가능한 region 안에서 가로 스크롤하며 input focus로 해당 값에 접근할 수 있습니다. 호스트 콘텐츠는 열림 상태에 따라 필요한 28px 공간을 예약하세요. 기존 Dropdown은 바 위에 표시됩니다. + +### 메뉴 컴포넌트 자체 구성 + +```tsx + +``` + +- `controls?: readonly SWHeaderControlConfig[]`는 전체 allowlist입니다. 미전달하면 승인된 기존 구성·계층·1920px 디자인을 유지합니다. `[]`는 선택적 컨트롤 전부 제거입니다. 홈/로고·창 제어는 유지합니다. +- id: document / drawingMode / layer / color / lineStyle / textStyle / dimensionStyle / details / propertyBar / propertyPanel / print / popupGuide. `details`는 상세보기 안내 caption이며 필수 액션이 아닙니다. +- 배열에서 빼거나 `visible:false`로 숨기며, 배열 순서가 실제 DOM·키보드·배치 순서입니다. 중복 id는 첫 번째 표시 항목만 사용합니다. 숨김 해제/재추가할 수 있습니다. `label`은 필드 라벨·버튼 이름·More 이름을 바꿉니다. 문서는 실제 documentTitle을 유지하고 접근성 이름 접두사를 바꿉니다. K는 아이콘을 유지하고 접근성 이름을 바꿉니다. +- 구성 모드는 각 컨트롤을 하나의 객체 수정 영역 안에서 재배치합니다. 기본 모드의 그룹 외곽 배치를 바꾸지 않습니다. 파일·색상 등을 제거한 공간은 고정 슬롯으로 남지 않습니다. +- 기존 1800/1180/1080/900/640/520px 기준은 유지합니다. 남은 필드 중 레이어(없으면 배열의 첫 필드)를 대표 슬롯으로 사용하고 More 선택으로 대체합니다. 대표 요소 삭제 시 남은 필드로 대체합니다. 표시 중인 대표는 More에서 제외되고, 구성에서 빠진 요소는 More에서도 사라집니다. +- 값은 기존 Props/Callback으로 계속 호스트가 소유합니다. 재정렬은 keyed 컴포넌트를 유지하고, 제거된 Dropdown과 draft는 정리하며 데이터 Callback을 생성하지 않습니다. 내부 열림 상태는 제거 후 재추가 시 닫힘입니다. Controlled 열림은 호스트가 전달한 값이 우선합니다. 일반적인 Dropdown 닫힘 시 기존 입력 확정 계약은 유지합니다. +- 구성요소 배열과 Dropdown 내부 옵션 배열은 별개입니다. layers/colors/userColors/lineTypes/lineWeights/textStyles/dimensionStyles의 동적 기능은 그대로 사용합니다. + +### Colorize와 CSS 경로 + +- 색상 메뉴의 기존 `색상 추출` 위치에 Figma `26:11302`/`26:11305` 원본 SVG를 연결했습니다. 버튼 24×24, 아이콘 18×18, Hover는 주황 경계와 검정 25% overlay입니다. Hover는 Callback을 실행하지 않으며 클릭/Enter는 기존 `onColorPick`을 호출하고 메뉴를 닫습니다. +- `26:11338 color_돋보기` Overlay는 패키지에 구현되어 있지 않습니다. 호스트가 onColorPick에서 연결할 대상이며 임의 대체 색상창은 만들지 않았습니다. +- CSS 편집 원본은 `packages/sw/src/theme/sw.css`입니다. SW build가 dist/styles.css를 만들고 Story가 공개 `@hm-design/sw/styles.css`를 읽습니다. dist만 편집하면 다음 빌드에서 원본이 다시 포함됩니다. 원본 상세 span의 Stroke 선언과 미사용 solid-stroke-width 변수를 제거했으므로 산출물 override는 필요하지 않습니다. 외부 소비 앱에는 SW를 다시 빌드한 뒤 산출물을 갱신하세요. +- Text Stroke Story의 지정 원본 스크린샷·제목·전용 import를 제거했습니다. 이미지 파일과 나머지 비교 Story·text-shadow는 보존했습니다. +- 기존 21개 Story에 Property Bar / Dynamic Controls / Colorize를 추가했습니다. 현재 실행 결과는 [후속 검증 기록](./sw-header-followup-five-verification-2026-10-16.md)을 따릅니다. + + + +## 구성요소 표시·메뉴 순서·속성창 4상태·형상 Slot (2026-10-16 3차) + +이 절이 같은 주제의 이전 설명보다 우선합니다. 검증 결과는 [3차 검증 기록](./sw-header-composition-shape-verification-2026-10-16.md)에 별도로 기록했습니다. + +### 로고 필수, 나머지 개별 제거 — `hiddenControls` + +```tsx + +``` + +- `hiddenControls?: readonly SWHeaderHideableControlId[]`. 대상 id: `home`, `document`, `drawingMode`, `layer`, `color`, `lineStyle`, `textStyle`, `dimensionStyle`, `details`, `propertyBar`, `propertyPanel`, `print`, `popupGuide`, `windowMove`, `minimize`, `close`. 로고는 대상이 아니며 항상 표시합니다(`logo` / `logoSrc` / `logoAlt` Props 유지). +- `home`을 제거하면 홈 동작만 사라지고 로고는 같은 32×17 슬롯에 정적 이미지로 남습니다(Hover·`onHomeClick` 없음). +- 전체 `controls` 목록 없이 쓸 수 있으며, 남은 요소는 기본 디자인의 크기·계층·Breakpoint를 유지합니다. `controls`와 함께 쓰면 두 조건을 모두 적용합니다(`controls`의 `visible:false`와 같은 의미). +- 제거한 요소는 렌더링하지 않습니다: 공간 없음, Dropdown·속성창·속성Bar·K 가이드 표시 안 함, Callback 없음. 열린 상태에서 제거하면 내부 열림 상태만 조용히 닫힙니다(데이터 Callback 없음). +- 배열에서 다시 빼면 재표시됩니다. 선택값은 호스트 Props이므로 그대로이고, 내부 Dropdown은 닫힌 상태로 돌아옵니다. +- 미전달 또는 `[]`이면 승인된 기본 Header와 동일합니다(1920~390px DOM 위치·크기·색 비교 차이 0). +- 객체 영역 요소를 제거하면 More 이동은 CSS 대신 스크립트가 같은 Breakpoint(1800/1180/1080/900/640)로 결정합니다. 표시할 항목이 없는 폭에서는 More 버튼을 만들지 않습니다. 창 영역은 남은 요소 폭만 차지합니다. +- 로고만 남겨도 Header 높이 49px와 녹색 객체 영역 배경은 유지합니다. + +### 유사 메뉴 순서 — `menuOrder` + +```tsx + +``` + +- 대상: `layer`, `color`, `lineStyle`, `textStyle`, `dimensionStyle`(`SWHeaderMenuId`). 메뉴는 메뉴가 이미 차지한 자리 안에서만 서로 바뀌며 홈·파일·로고·그리기모드·상세보기·창 제어는 움직이지 않습니다. +- 미전달: 승인된 기본 순서 `레이어 → 색상 → 선스타일 → 문자스타일 → 치수스타일`(`controls`를 쓰면 그 배열 순서). +- 누락 규칙: 지정한 id가 먼저 지정 순서로 오고, 빠진 id는 그 뒤에 기본 순서로 붙습니다. 중복 id는 첫 번째만, 알 수 없는 id는 무시합니다. 숨긴 메뉴가 들어 있어도 오류 없이 건너뜁니다. +- 순서는 DOM·Tab 순서·More 목록 순서에 함께 반영됩니다. React key는 메뉴 id라 재정렬해도 값·Callback·Dropdown·Focus가 유지되며, 순서 변경만으로는 어떤 Callback도 호출하지 않습니다. +- 대표 슬롯: 레이어가 표시 중이면 레이어, 아니면 순서상 첫 메뉴가 기본 대표입니다. More에서 고른 메뉴가 대표 자리를 대신하며, 그 메뉴가 제거되면 기본 대표로 돌아갑니다. + +### 속성창 4가지 상태 + +새 팝업 없이 기존 `SWHeaderPropertyPanel` 하나를 호스트 데이터로 바꿉니다. + +| 상태 | Figma | selection.kind | 데이터 | +|---|---|---|---| +| 선택된 객체 없음 | 26:11886 · 314×256 | `none` | common 그룹만 | +| 전체 객체 선택 | 26:11823 · 314×361 | `all` + `counts` | common 그룹, 혼합값 `mixed` | +| 원 1개 선택 | 26:11932 · 314×658 | `single` + `overviewTitle` | common(collapsedCount) + shape(circle) + position | +| 모든 항목 펼침 | 26:12035 · 314×754 | `single` | 위와 같고 `expandedGroupIds={["common"]}` | + +Storybook: `Property Panel · 선택 없음 / 전체 선택 / 원 1개 / 모두 펼침` 개별 Story와 `Property Panel · 4개 비교`(디자인 검증용, 실측 크기 표시, 좁으면 줄바꿈). 실제 Header는 현재 선택에 맞는 패널 하나만 표시합니다. + +### 형상 영역 Slot — `shapeContent` + +```tsx + , +}} /> +``` + +- `layout: "circle"` 그룹의 208×208 영역(그룹 260px 안 39, 26)에 렌더링합니다. `SWHeaderPropertyPanel`과 `SWHeader.propertyPanel` 모두 같은 Prop입니다. +- `undefined`(미지정): Figma 원형 그림(기존 기본). `null` / `false`: 빈 영역 — 크기·치수 라벨 위치·패널 높이 유지. ReactNode: 외부 컴포넌트. 함수: `{ selection, group, properties }`(해당 그룹 항목)를 받아 렌더링 — 객체 유형별 교체에 사용합니다. +- 내용은 영역 안에 맞춰지고(overflow hidden) 원주·지름·반지름·면적 입력은 그 위에 그대로 표시됩니다. 값은 `properties`로만 전달되며 형상 Slot과 독립입니다. 입력은 기존 SWHeaderInput 검증·Enter/Blur 확정·Escape 취소를 사용합니다. +- 패키지는 CAD 계산·형상 렌더링 엔진을 포함하지 않습니다. Storybook의 사각형/점선 원 SVG는 Story 전용 샘플입니다. + +## 로고 클릭 메뉴 — `homeMenu` (2026-10-19) + +Figma 26:10591의 2단 Header 메뉴입니다. 기본 숨김, 로고 클릭으로 열고 다시 클릭하면 닫힙니다. + +```tsx + {}} /> // reason: home | escape | background | outside | select | file | document +``` + +- `sections`: `{ id, title, items: [{ id, label, icon, hoverIcon?, toggle?, panel?, disabled?, hidden?, onSelect? }] }[]`. 최근파일은 타일의 `panel: `(선택). `panel`이 없는 항목은 실행 버튼입니다(클릭 시 `onSelect`/`onItemSelect`, 클릭 후 ON 유지 없음). 최근파일만 목록이 열린 동안 Active이며, 유지형이 필요하면 `toggle: true`. +- 이벤트 우선순위: `homeMenu`가 있으면 로고 클릭은 메뉴 토글만 하고 `onHomeClick`은 호출되지 않습니다. `homeMenu`가 없으면 기존과 같이 `onHomeClick`만 호출됩니다. +- New / Open은 문서 Dropdown 안 그대로입니다(`documentOpenPlacement` 기본 `"menu"`). 메뉴가 열리면 필드·문서 Dropdown이 닫히고, 문서 Dropdown을 열면 메뉴가 닫힙니다. +- 위치: 객체 수정 영역 −2px ~ 창 영역(DOM 측정, 1920에서 x 375 · 폭 1305). 좁은 폭에서는 가로 스크롤 없이 들어가는 섹션만 표시하고 나머지는 끝의 더보기(⋯) 섹션으로 옮깁니다(Dropdown은 섹션 제목 + 기능 텍스트 목록, 타일과 같은 Hover·Active·클릭, 폭이 넓어지면 자동 복귀, 배지 문구 `homeMenu.moreLabel`). +- Escape: 하위 패널 → 메뉴 순서, 닫히면 로고로 Focus. 속성창·`SWPopup`과 같은 Escape 순서(Focus가 모두 밖이면 최근 사용 하나). +- 상세: 패키지 [카탈로그 5절](../../packages/sw/ai/COMPONENT_CATALOG.md), [통합 검증 기록](./sw-home-menu-integration-2026-10-19.md). diff --git a/docs/sw/sw-header-window-motion-gif-verification-2026-10-16.md b/docs/sw/sw-header-window-motion-gif-verification-2026-10-16.md new file mode 100644 index 0000000..c1f41b8 --- /dev/null +++ b/docs/sw/sw-header-window-motion-gif-verification-2026-10-16.md @@ -0,0 +1,101 @@ +# SW Header 창 이동 Motion — GIF 기준 최종 검증 (2026-10-16) + +## 1. 최종 판정: PARTIAL + +GIF 기준 모션 수정과 Chrome 브라우저 검증 **PASS**, Root Typecheck / SW Build / Root Build / Storybook Build **PASS**입니다. 실제 호스트의 OS 창 이동·최소화·종료, 다른 브라우저·보조기술과 독립 SW 패키지의 Guard coverage는 **NOT VERIFIED**이므로 전체 PASS로 확대하지 않습니다. GIF 이전 검증은 [과거 기록](./sw-header-window-motion-verification-2026-10-16.md)으로 보존합니다. + +## 2. 시작 Git 상태 + +- Worktree: `D:\디자인시스템\HMDesign-SW`, branch `feature/sw-package`. +- HEAD: `9407c8567f57301659e591c03451cca1b828733c`. +- 기존 변경: ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`. +- `_local/sw-motion-gif-qa/baseline.json`에 기존 SW·Story·문서와 root manifest/Lockfile의 SHA-256을 보존하고, 변경 전 CSS·창 제어 TSX·Story 사본도 저장했습니다. 기존 미추적 파일을 삭제·초기화하지 않았습니다. + +## 3. 기존 구현과 GIF의 차이 + +기존 구현은 2.7265658초 1회 재생이며, 커서가 이미 위쪽에 있는 별도 SVG로 fade-in하고 창을 축소한 뒤 오른쪽으로 이동했습니다. 문구가 이른 시점부터 나타났고 마지막에 dissolve로 Default로 복귀했습니다. 이 방식은 이번 GIF의 ‘아래쪽 커서 상승 → 문구 → 전체 이동 → 유지 → 즉시 반복’과 달랐습니다. 수정 전에 같은 40ms 간격의 41개 실제 브라우저 프레임을 캡처했습니다. + +## 4. 추가 수정 범위 + +기존 모션 CSS만 GIF 표본으로 바꾸고 기존 `Window Move Motion` Story의 설명·고정 시간·반복 로그를 갱신했습니다. 기존 Default SVG, Hover용 SVG 두 개, 줄무늬, Tooltip box·색상·크기, 공개 API와 TSX 이벤트 연결은 유지했습니다. Tooltip 글꼴 선언만 Figma의 Inter를 우선하고 기존 SW 글꼴을 fallback하도록 명시했습니다. 폰트 파일이나 의존성은 추가하지 않았습니다. + +누르는 동안 CSS `:active`로 3개 애니메이션을 일시정지하고 Tooltip을 숨깁니다. 전역 이벤트·포인터 캡처·preventDefault·React 상태는 추가하지 않았습니다. + +## 5. 프레임별 비교 결과 + +기준 파일: `D:\디자인시스템\ani_hover_move.gif`, SHA-256 `c7d22819cfb8f8cd8593684ce1e5c676a545fa09fa9fc7573d59f0f237d28026`. 640 × 192px, 41프레임, 각 40ms, 1640ms, 무한 반복입니다. + +GIF 높이 192px를 48px Header bar의 4배로 환산했습니다. 창의 녹색 폭도 96 / 4 = 24px로 기존 SVG와 일치합니다. GIF의 여분 가로 캔버스는 UI에 넣지 않았습니다. 비교 이미지에서만 가로 여백 32px를 잘라 기존 아이콘의 시작 위치를 정렬했습니다. 비교 결과는 Header 크기의 CSS px로 표시합니다. + +- 0–520ms: 창은 제자리, 커서는 오른쪽 아래에서 위로 약 12.5px 이동하고 왼쪽으로 0.75px 이동합니다. +- 520ms: 문구가 처음 나타납니다. 41개 프레임 전체에서 문구 표시 여부가 일치했습니다. +- 약 600–1040ms: 창은 오른쪽 28px / 위 4.5px 이동합니다. 커서는 최초 위치 대비 오른쪽 27.25px / 위 17px입니다. 40ms 표본 사이를 선형 보간하여 원본의 가속·감속을 따라가며 GIF에 없는 spring overshoot를 제거했습니다. +- 1040–1640ms: 600ms 동안 창·커서·문구의 끝 자세를 유지합니다. 1640ms에 첫 프레임으로 즉시 반복합니다. +- 최종 41개 캡처의 녹색 도형 좌상단 비교: 창 위치 최대 오차 0px, 커서 최대 오차 0.5px. 문구 glyph 좌상단 최대 오차 0.5px입니다. +- 커서와 문구의 보이는 간격: GIF 9px, 구현 9.25–9.5px이며 프레임별 차이는 0.5px 이내입니다. + +위 수치는 색이 있는 도형/glyph의 경계 좌표 비교이며 전체 픽셀 동일성 판정은 아닙니다. 기존 Figma SVG의 검정 외곽선·녹색 줄무늬·Tooltip 배경을 유지했으므로 GIF의 검정 캔버스와 외관 전체를 복제하지 않았습니다. 현재 동작은 Figma Prototype의 1.022/0.744/0.958초 spring·1회 정책보다 GIF의 시간과 반복을 우선합니다. + +## 6. Drag 검증 + +실제 공개 `@hm-design/sw`를 React로 렌더링한 QA fixture에서 확인했습니다. `onWindowMoveStart`가 원래 div의 PointerEvent를 한 번 받았고 `target/currentTarget`, `pointerId`, `pointerType=mouse`, `buttons=1`, `defaultPrevented=false`를 유지했습니다. 호스트 모의 코드가 설정한 Pointer Capture를 통해 Tooltip·창 제어 버튼 위로 이동해도 pointermove와 pointerup이 전달됐습니다. + +포인터를 누르는 동안 애니메이션은 paused이며 200ms가 지나도 currentTime이 변하지 않았고 Tooltip은 숨겨졌습니다. Drag 중 최소화·종료 콜백은 발생하지 않았고, 이후 각 버튼 클릭은 자신의 콜백만 호출했습니다. Reduced Motion에서도 드래그 콜백·해제가 유지됐습니다. 실제 OS 창 이동과 네이티브 호스트 통합은 NOT VERIFIED입니다. + +## 7. Tooltip · 반복 · Reduced Motion · Focus + +- PASS: 45 × 17px, 검정 80% 배경, 흰색 12px/400, Inter 우선 + SW fallback 선언. 한글 또는 Inter가 없는 환경은 기존 Noto Sans KR 등으로 표시되며 Inter 파일 로드를 보증하지 않습니다. +- PASS: 장식 자식 전체의 `pointer-events: none`, Tooltip 겹침 위치에서 최소화 버튼 hit test, 최소화·종료 Callback 전달. +- PASS: 실제 Hover를 유지해 1.64초 간격의 iteration 2회, 중복 animationstart 없음. 12회 빠른 진입·이탈에서 start/cancel 각 12회, 잔여 애니메이션 0개. +- PASS: Hover 해제 즉시 Default SVG·위치·문구 숨김, 재진입 시 처음부터 시작. +- PASS: 재생 중 reduce 전환 시 애니메이션 0개, 원래 Default SVG와 정적 Tooltip 유지. 누르는 동안 Tooltip 숨김, 이탈하면 숨김. 24px 단계의 기존 그림 숨김 정책도 유지. +- PASS: 최소화 → 종료 Tab 이동, 2px Focus 윤곽선, Enter로 종료 콜백. +- 기존 제한: 이동 div는 role=presentation/Tab 비대상이며 키보드 창 이동·Focus Tooltip을 제공하지 않습니다. 호스트의 키보드 대안과 보조기술은 미검증입니다. + +## 8. 반응형 + +1920 / 1440 / 1280(추가) / 1080 / 1079 / 768 / 640 / 639 / 390px에서 실제 viewport와 Header 폭을 검사했습니다. 모두 높이 49px, Header 및 문서의 가로 overflow 0px, Tooltip은 Header 경계 안이었습니다. 1080px 이상 이동 영역 88px, 640–1079px는 24px와 정적 Tooltip만, 639px 이하는 영역 숨김을 유지합니다. 최소화·종료의 배치와 클릭은 유지했습니다. + +Tooltip은 기존처럼 이동 영역 밖으로 나와 최소화·종료 일부에 시각적으로 겹칩니다. 시각적 겹침이 없다고 판정하지 않았으며, 포인터 차단이나 가로 스크롤이 없음을 확인했습니다. 기존 문서명·레이어명의 말줄임 구조는 변경하지 않았습니다. + +## 9. Typecheck · Build · Storybook · Guard + +- PASS: `npm.cmd run typecheck` — root·SW를 포함한 workspace 타입 검사와 기존 pretypecheck의 theme 확인·package build. 최종 CSS와 Story 변경 뒤 실행했습니다. +- PASS: `npm.cmd run build:sw` 및 최종 pretypecheck에 포함된 SW Build. +- PASS: `npm.cmd --ignore-scripts run build`, `npm.cmd --ignore-scripts run build-storybook`. 이미 통과한 공통 prerequisite을 중복 실행하지 않았습니다. +- PASS: Chrome `155.0.8059.79`, 실제 CSS 애니메이션·9개 Story 단계·520ms 등장/1640ms 반복 경계·motion cycle/Drag/최소화/종료 로그·Reduced Motion. 브라우저 통합 검사 41개 PASS, pageerror 0건, HTTP 오류 0건. +- 기존 경고: 문서 예시 `bg-[var(...)]` CSS 최적화, Storybook `:host-context` minifier, 500kB 초과 chunk와 plugin timing 안내. exit 0이며 범위 밖의 기존 코드를 수정하지 않았습니다. +- 개발 서버의 기존 포트·프로세스를 건드리지 않고 빌드된 Storybook과 QA fixture를 임시 localhost 서버에서 검사하고 종료했습니다. +- Guard 1회: `node scripts/ai-generation-guard.mjs --target . --profile STORYBOOK --scope PARTIAL --files src/sw/sw-header.stories.tsx,packages/sw/src/theme/sw.css --json`. 원본 status/staticStatus **NOT VERIFIED**, FAIL 없음. SW styles export 미해석 `ENTRY-002`, 패키지 graph 밖 `SCOPE-001`, 연결에 의존한 Token/동적 값 미검증이 남았습니다. Guard를 수정하거나 PASS로 덮어쓰지 않았습니다. +- Guard 원본 styleEvidence는 STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED이며 checks=[]입니다. SW 실검사 완료라는 뜻은 아닙니다. 별도 Runtime은 위 Chrome 범위 PASS, 디자인 의도는 GIF 프레임 좌표·순서 및 Figma 자산·Tooltip 규격 범위에서 확인했고, 전체 검증은 호스트 등의 미검증 때문에 PARTIAL입니다. + +## 10. 변경 파일 · 근거 + +1. `packages/sw/src/theme/sw.css` — 창 이동 모션 블록만 수정. +2. `src/sw/sw-header.stories.tsx` — 기존 모션 Story 블록만 갱신. +3. `docs/sw/sw-header-design-spec.md` — 과거 §11.3을 보존하고 현재 GIF 기준 §11.4 추가. +4. `docs/sw/sw-header-usage.md` — 현재 모션·Drag·반복·Story 사용법 반영. +5. `packages/sw/README.md` — 현재 GIF 기준과 검증 링크 반영. +6. 이 검증 기록 — 신규 문서. + +Git 무시 경로 `_local/sw-motion-gif-qa/`에 원본 분석 JSON, 전/후 41개 PNG 및 좌표 JSON, `frame-comparison.json`, 비교 이미지 `gif-before-after.png`, 실제 React 캡처 미리보기 `window-move-preview.gif`, 폭별 PNG, `storybook-final.png`, `verification.json`, build 로그, 원본 `guard.json`, 시작 해시와 사본을 보존합니다. GIF는 QA 미리보기일 뿐 제품 Header에 사용하지 않습니다. + +## 11. 기존 디자인 · 작업 보호 + +모션 블록 밖 CSS와 기존 TSX/이벤트 연결이 시작 사본과 동일함을 확인했습니다. SVG·나머지 Story·기존 반응형·다른 Header 요소·root package.json/Lockfile·과거 검증 문서도 시작 해시와 일치합니다. 다른 패키지 소스·다른 Worktree·DWG/DXF 뷰어를 변경하지 않았습니다. Root의 기존 package build는 Git 무시 dist만 재생성했습니다. 의존성 설치는 없습니다. + +## 12. 남은 항목 + +실제 Electron/설치형 호스트의 OS 창 이동·최소화·종료, 터치/펜, 다른 브라우저, 키보드 창 이동 대안과 스크린리더, 전용 SW Guard coverage는 NOT VERIFIED입니다. Tooltip의 기존 시각적 버튼 겹침은 명시한 채 유지했습니다. + +## 13. 종료 Git 상태 + +브랜치 `feature/sw-package`, HEAD `9407c8567f57301659e591c03451cca1b828733c`를 유지합니다. 기존 status 그룹 ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`도 유지하며 이번 변경은 그 미추적 그룹 내부에 포함됩니다. Index 변경·Commit·Push·PR·Merge·Publish·배포는 수행하지 않았습니다. `git diff --check`와 문서 링크/공백 검사를 확인했습니다. + +작업 시간(KST, GIF 수신 후 실제 작업): Started At 2026-10-16 13:38:28 / Completed At 2026-10-16 13:52:16 / Actual Duration 13분 48초 / Estimated Duration 20~30분 / Variance 20분 대비 −6분 12초, 30분 대비 −16분 12초. + +## 14. 후속 변경 — 1400ms 및 Composed Controls Hover + +위 1.64초·41프레임 검증은 당시 결과로 보존합니다. 이후 사용자 요청으로 경로·Keyframes 비율을 유지한 채 주기만 1400ms로 변경했습니다. 현재 문구 등장 약 444ms, 이동 완료 약 888ms, 유지 약 512ms입니다. 원본 GIF의 시간과 다른 의도적인 변경입니다. + +같은 후속 작업에서 그룹 필드의 Hover 텍스트 및 지정 선/폰트/치수 미리보기를 `#FFC600`으로 추가 강조했습니다. 검정 외곽선과 기존 Gradient Hover Border·색상 견본·레이어 상태를 유지하고 상세보기는 제외했습니다. 이 변경의 새로운 검증 결과와 미검증 범위는 [속도·Composed Hover 통합 검증](./sw-header-speed-composed-hover-verification-2026-10-16.md)에 별도로 기록합니다. 위 과거 수치와 판정을 소급 변경하지 않습니다. diff --git a/docs/sw/sw-header-window-motion-verification-2026-10-16.md b/docs/sw/sw-header-window-motion-verification-2026-10-16.md new file mode 100644 index 0000000..03153c0 --- /dev/null +++ b/docs/sw/sw-header-window-motion-verification-2026-10-16.md @@ -0,0 +1,85 @@ +# SW Header 창 이동 Motion 최종 검증 — 2026-10-16 + +## 1. 최종 판정: PARTIAL + +요청 범위의 Chrome 브라우저 검증과 빌드는 통과했습니다. Reduced Motion의 실제 CSS 오류 한 건을 수정하고 영향 범위를 재검증했습니다. 실제 호스트 창 제어, Figma player의 반복 정책·수치 곡선 동등성, 전용 SW Guard 검증은 미완료이므로 전체 PASS로 처리하지 않습니다. + +## 2. 작업 시작 시 Git 상태 + +- 경로: `D:\디자인시스템\HMDesign-SW`, 브랜치 `feature/sw-package`. +- HEAD: `9407c8567f57301659e591c03451cca1b828733c`. +- origin: `https://gitea.hmac.kr/b25027/HMDesign.git`. +- 기존 변경: ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`. SW는 미추적 상태이므로 일반 `git diff`만으로 기존 구현과 이번 작업을 구분할 수 없습니다. +- 이 작업은 사용자 지정 SW Worktree에서만 수행했고 Git 이력·Index·원격을 변경하지 않았습니다. 시작 파일의 SHA-256은 `_local/sw-motion-qa/baseline.json`에 보존했습니다. + +## 3. 기존 Claude 구현에서 확인한 사항 + +`SWHeaderWindowControls.tsx`의 기존 div / `onPointerDown`, 3개 SVG, 4개 CSS Keyframes, 직접 선언된 `linear()` easing, 1회 재생·즉시 이탈 복귀, Tooltip, 88px / 24px / 숨김 단계, `Window Move Motion` Story와 7개 고정 프레임이 실제로 존재했습니다. 300ms의 Hover 창·커서·Tooltip opacity는 `0.930667`로 측정했습니다. 모션과 Drag 코드를 다시 작성하지 않았습니다. + +## 4. 이번 추가 수정 + +기존 Reduced Motion 규칙 `.hm-sw-header__motion:hover > *`보다 레이어별 애니메이션 선택자의 specificity가 높아 모션 해제가 적용되지 않았습니다. 이 규칙만 동일 specificity의 `:is(.레이어...)` 선택자로 바꿨습니다. 일반 Keyframes·시간·SVG·좌표·공개 Props·Callback·Breakpoint는 그대로입니다. 나머지 수정은 문서 추가입니다. + +초기 검증 JSON의 두 FAIL은 보존했습니다. 수정 후 해당 Reduced Motion 검사와 영향 범위만 별도로 재검사했으며, 성공했던 일반 모션·반응형 검사를 형식적으로 반복하지 않았습니다. + +## 5. Figma 3단계 비교 + +Figma `rj6wpsfk24lOWvWiVRAANP` / `26:10220`의 디자인 컨텍스트·스크린샷·Prototype reactions를 읽었습니다. Default `26:10221`, Hover `26:10258`, Hover2 `26:10295`의 크기와 좌표는 [명세 §11.3](./sw-header-design-spec.md#113-창-이동-hover-motion--figma-2610220-2026-10-16)에 기록했습니다. + +- PASS: 1022ms의 창 (32, 15), 24 × 18.857px; 1767ms의 창 (59, 12), 커서 (72, 10), Tooltip (89, 11). CSS subpixel 오차 0.05px 이내로 비교했습니다. +- PASS: GENTLE / QUICK / BOUNCY preset 이름, SMART_ANIMATE / DISSOLVE, 1.0220938 / 0.7442555 / 0.9582165초와 두 1ms 대기는 원본 reactions와 일치합니다. QUICK overshoot, DISSOLVE 혼합, 실제 1회 재생 완료·Default 복귀도 확인했습니다. +- PASS: Hover SVG 두 개는 원본과 일치하며 Default SVG는 마스크 ID 차이만 있습니다. 원본 파일을 교체하지 않았습니다. +- PARTIAL: Figma motion API의 animated-node 결과는 비어 있었고 preset의 수치 곡선은 반환되지 않았습니다. 기존 spring 표본 근사와 opacity용 단조 BOUNCY를 유지했으며, 중간 프레임의 완전 동일성은 검증하지 않았습니다. Tooltip 글꼴은 기존 SW 정책인 Noto Sans KR이며 Figma의 Inter와 다릅니다. +- NOT VERIFIED: Figma Prototype player에서 Default 복귀 뒤 포인터 유지 중 자동 재시작하는지. 구현은 1회 재생 정책을 유지했습니다. + +## 6. Drag 검증 + +공개 `@hm-design/sw` 패키지를 실제 React로 렌더링한 로컬 QA fixture에서 PointerEvent를 받았습니다. `onWindowMoveStart` 1회, `currentTarget`과 `target`이 기존 div임, `pointerId`·`pointerType=mouse`·`buttons=1` 전달, `defaultPrevented=false`를 확인했습니다. 호스트 모의 코드가 Pointer Capture를 설정한 뒤 Tooltip·최소화 영역 위로 이동해도 pointermove와 pointerup이 전달됐습니다. Drag 중 최소화·종료 콜백이 발생하지 않았고, 이후 각 버튼 클릭은 자신의 콜백만 호출했습니다. Reduced Motion에서도 같은 전달을 확인했습니다. + +실제 Electron/설치형 호스트의 OS 창 이동·최소화·종료, 터치·펜 입력과 네이티브 Drag 중 애니메이션은 **NOT VERIFIED**입니다. 브라우저 검증은 호스트 통합 완료 판정이 아닙니다. + +## 7. Tooltip · Reduced Motion · Focus + +- PASS: Tooltip과 내부 그래픽의 `pointer-events: none`; Tooltip이 겹친 위치의 hit test는 최소화 버튼에 도달합니다. 실제 버튼 콜백도 전달됩니다. +- PASS: Hover 종료 즉시 기본 상태; 빠른 진입·이탈 12회에서 start/cancel 각각 12회, 잔여 애니메이션 0개; 포인터를 4초 이상 유지해도 비정상 반복 없음. +- PASS(수정 후): reduce에서 애니메이션 0개, 기본 아이콘과 정적 Tooltip 유지, 이탈 시 숨김, 재생 중 reduce 전환 즉시 정지. 24px 영역은 기존대로 그림을 숨기고 Tooltip만 표시합니다. +- PASS: 최소화 → 종료 Tab 이동, 접근성 이름과 2px Focus 윤곽선, Enter로 종료 콜백. +- 기존 제한: 창 이동 div는 `role=presentation`, `tabIndex=-1`이며 키보드 이동·Focus Tooltip을 제공하지 않습니다. 키보드 이동 대안과 보조기술 검증은 호스트 과제입니다. 접근성 전체 PASS를 선언하지 않습니다. + +## 8. 반응형 + +실제 viewport와 독립 Header 폭으로 1920 / 1440 / 1280(추가) / 1080 / 1079 / 768 / 640 / 639 / 390px를 검사했습니다. 모든 폭에서 높이 49px, 문서와 Header의 가로 overflow 0px, Tooltip은 Header의 세로·가로 경계 안이었습니다. 1080px 이상 move 88px, 640–1079px move 24px와 정적 Tooltip, 639px 이하 숨김을 확인했습니다. + +Tooltip은 원본 좌표 관계상 최소화와 종료 왼쪽 일부에 **시각적으로 겹칩니다**. 클릭을 차단하거나 가로 스크롤을 만들지는 않으나, 이를 ‘시각적 겹침 없음’으로 판정하지 않았고 승인된 배치를 임의로 바꾸지 않았습니다. 390px의 기존 문서명·레이어명 말줄임도 유지됩니다. + +## 9. Typecheck · Build · Storybook · Guard + +- PASS: `npm.cmd run typecheck` — root와 SW를 포함한 workspace typecheck. 기존 pretypecheck의 theme 확인·package build도 통과했습니다. +- PASS: `npm.cmd run build:sw` — CSS 수정 후 최종 산출물 생성. +- PASS: `npm.cmd --ignore-scripts run build`, `npm.cmd --ignore-scripts run build-storybook` — 이미 통과한 공통 prerequisite의 중복 실행을 생략했습니다. CSS 변경 후 관련 build 결과를 다시 생성했습니다. 의존성 설치·Lockfile 수정은 없습니다. +- PASS: 빌드된 Storybook의 실제 CSS animation, 단계별 7개 프레임 고정 시간, 기존 pointer/animation/callback log, 정상·reduce 모드. Chrome `155.0.8059.79`, headless mouse/keyboard에서 확인했습니다. 6024 개발 서버의 포트 불가 안내 뒤 기존 프로세스를 건드리지 않고 임시 localhost 서버를 사용했으며 종료했습니다. +- 기존 경고: 문서 예시 `bg-[var(...)]`의 CSS 최적화, Storybook의 `:host-context` minifier, 500kB 초과 chunk 및 plugin timing 안내. 관련 과거 문서에도 기록된 경고이며 이번 오류로 분류하지 않았습니다. runtime pageerror는 0건입니다. 초기 fixture에서 404 console 경고 1건이 있었고 최종 동일 fixture의 HTTP 오류 재확인에서는 0건이었습니다(초기 경고 URL은 기록하지 않아 원인 단정 안 함). +- Guard 1회: `node scripts/ai-generation-guard.mjs --target . --profile STORYBOOK --scope PARTIAL --files src/sw/sw-header.stories.tsx,packages/sw/src/theme/sw.css --json`. 원본 `status` / `staticStatus`는 **NOT VERIFIED**입니다. `@hm-design/sw/styles.css` 연결 미해석(`ENTRY-002`), 패키지 구현이 Storybook graph 밖(`SCOPE-001`), 해당 연결에 의존한 Token/동적 값 미확인이 남았습니다. Guard를 변경하거나 원본 결과를 PASS로 덮어쓰지 않았습니다. +- Guard `styleEvidence`: STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT PASS / FINAL NOT VERIFIED, `checks=[]`. SW CSS 실검사 완료를 뜻하지 않습니다. 별도 브라우저 Runtime은 위 범위 PASS, 디자인 의도는 정적 좌표 확인과 spring/반복 미검증을 합쳐 PARTIAL, 최종은 PARTIAL입니다. + +## 10. 변경 파일 + +1. `packages/sw/src/theme/sw.css` — Reduced Motion 해제 선택자 수정. +2. `docs/sw/sw-header-design-spec.md` — §11.3 추가. +3. `docs/sw/sw-header-usage.md` — §10.2와 기존 Story 설명 보완. +4. `packages/sw/README.md` — 모션 사용·검증 링크 추가. +5. 이 검증 기록 — 신규 문서. + +로컬 QA fixture·JSON·캡처·로그는 Git 무시 경로 `_local/sw-motion-qa/`에 있습니다. 원본 FAIL을 포함한 `verification.json`, 수정 후 `reduced-final.json`, 종합 `final-summary.json`, 원본 `guard.json`, `baseline.json`, build 로그와 폭별 PNG를 보존합니다. 이 파일들은 패키지 배포·공개 API에 포함하지 않습니다. + +## 11. 기존 디자인 · 작업 보호 + +시작 해시와 비교해 기존 파일 중 변경된 것은 위 CSS·문서 4개뿐입니다. 새 선택자를 원래 한 줄로 되돌린 임시 사본의 SHA-256이 시작 CSS와 일치하여, CSS의 다른 바이트는 보존됨을 확인했습니다. 기존 TSX·SVG·Story·package.json·Lockfile은 시작 상태와 일치합니다. 다른 패키지의 소스·DWG/DXF 뷰어·다른 Worktree는 수정하지 않았습니다. Root의 기존 prerequisite build에 의해 Git 무시 dist는 재생성됐습니다. + +## 12. 남은 문제 · NOT VERIFIED + +실제 네이티브 창 제어, Figma player 반복 및 수치 easing의 완전 동등성, `linear()` 미지원 브라우저, 다른 브라우저·터치·펜·스크린리더, 키보드 창 이동 대안, 전용 SW Guard coverage는 미검증/후속 범위입니다. Tooltip의 시각적 버튼 겹침은 위와 같이 명시하며 변경하지 않았습니다. + +## 13. 작업 종료 시 Git 상태 + +브랜치와 HEAD는 시작 상태를 유지합니다. 변경 그룹도 ` M package-lock.json`, ` M package.json`, `?? docs/sw/`, `?? packages/sw/`, `?? src/sw/`이며, 기존 미추적 그룹 내부에 이번 CSS·문서 변경이 포함됩니다. Stage·Commit·Push·PR·Merge·Publish·배포는 수행하지 않았습니다. Git 상태만으로 이번 변경이 0개라는 뜻은 아니며 파일별 시작 해시 비교를 함께 사용합니다. diff --git a/docs/sw/sw-home-menu-integration-2026-10-19.md b/docs/sw/sw-home-menu-integration-2026-10-19.md new file mode 100644 index 0000000..102cc32 --- /dev/null +++ b/docs/sw/sw-home-menu-integration-2026-10-19.md @@ -0,0 +1,38 @@ +# SW Task A + B 통합 — 로고 클릭 메뉴 (2026-10-19) + +> 통합 Worktree `HMDesign-SW-Integration`, 브랜치 `integration/sw-home-menu`(기준 Task A `e8409ef`) + Task B `396539d`의 신규 파일 84개. 미커밋. + +## 결합 방식 + +- Task B 파일 84개는 모두 신규이며 Task A 파일과 겹치지 않아 Git 충돌이 없습니다(`5faa1f1` → `e8409ef` 조상 관계). +- 공유 파일 수정은 연결에 필요한 최소 범위입니다. + +| 파일 | 변경 | +|---|---| +| `packages/sw/src/index.ts` | `export * from "./components/sw-home-menu"` | +| `sw-header/types.ts`, `index.ts` | `homeMenu`, `homeMenuOpen`, `defaultHomeMenuOpen`, `onHomeMenuOpenChange`, 타입 `SWHeaderHomeMenu`, `SWHeaderHomeMenuChangeReason` | +| `sw-header/SWHeader.tsx` | `homeMenu`가 있을 때만: 로고 클릭 = 메뉴 토글(`onHomeClick` 미호출), DOM 측정 배치(객체 수정 영역 −2px ~ 창 영역), 메뉴와 문서·필드 Dropdown 상호 닫기. `homeMenu`가 없으면 기존 동작 그대로 | +| `components/SWHeaderHome.tsx` | `aria-expanded`·`aria-controls` 전달(시각 변화 없음) | +| `components/SWHeaderPropertyPanel.tsx` | 내부 `useSWPopupStack`에 `export`만 추가(패키지 공개 아님) | +| `theme/sw.css` | `.hm-sw-header__home-menu` 레이어 1줄(top 0, z-index 20) | +| `sw-home-menu/SWHomeMenu.tsx`(Task B) | 열린 동안 Popup Escape 스택에 합류(하위 패널 → 메뉴 순서는 그대로) | +| Story·Fixture(Task B) | `@hm-design/sw` 공식 Import, `SWHeader homeMenu` 사용, `통합 · Popup · Escape` Story 추가 | +| AI 문서·README·사용 가이드 | 카탈로그 5절, 조합 패턴 7절, 디자인 규칙 11절, 예제 G | + +## 검증 (실행 결과) + +| 항목 | 결과 | +|---|---| +| SW typecheck / 앱 `tsc -b` / SW build / Storybook build | PASS / PASS / PASS / PASS | +| `dist/styles.css` 홈 메뉴 스타일, `dist/index.d.ts` 공개 Export | 포함 / 포함 | +| AI 문서·공개 API 정합성(`ai-docs.check.mjs`) | 22/22 PASS | +| 기존 SW Story 28장 픽셀 비교(통합 전 기준선 대비, threshold 0) | 28/28 동일 | +| 기존 Header·Tool·Popup 기능 회귀(`integrated-improvement.browser.mjs`) | 96 PASS / 0 FAIL(통합 전과 동일) | +| 홈 메뉴 통합(`home-menu-integration.browser.mjs`) | 22/22 PASS | + +## 남은 항목 + +- 미실행: 독립 React 19 Tarball 소비 설치, SW + HM UI CSS 동시 사용, Figma 스크린샷 픽셀 비교(배치·크기는 DOM 실측으로만 확인), Firefox·Safari. +- 좁은 폭: (2026-10-19 후속 수정) 가로 스크롤 대신 측정형 더보기(⋯). 들어가는 섹션만 앞에서부터 Figma 타일로 표시하고 나머지는 더보기 Dropdown의 텍스트 메뉴(섹션 제목 + 항목, 구분선)로 이동, 폭이 넓어지면 복귀. 실측(capture-responsive): 1920 5개, 1680 3+더보기, 1440·1280·1180 2+더보기, 1080·960 1+더보기, 768 이하 더보기만. 메뉴 행·페이지 가로 스크롤 0. +- 디자인 승인 대기(미적용): 속성Bar 차이 3건, 폰트 차이. 열림 상태 Header 상·하단 `#5F4B0F` 선과 로고 Home On은 2026-10-19 사용자 요청으로 적용(Figma 662:67267). +- Task A의 기존 제한(넓은 `tools` + 390px에서 파일명·레이어 폭 0)은 이번 통합 범위 밖입니다. diff --git a/docs/sw/sw-home-menu-merge-2026-10-19.md b/docs/sw/sw-home-menu-merge-2026-10-19.md new file mode 100644 index 0000000..dcbc3c6 --- /dev/null +++ b/docs/sw/sw-home-menu-merge-2026-10-19.md @@ -0,0 +1,49 @@ +# 홈 메뉴 Merge — `integration/sw-home-menu` → `feature/sw-package` (2026-10-19) + +> 로컬 `git merge --no-commit --no-ff integration/sw-home-menu` (기준 `b434f27`, 대상 `1472e51`). **Merge Commit·Push는 하지 않았습니다(승인 대기).** + +## 적용 범위 (사용자 정정 반영) + +- 홈 메뉴(Figma 45개 노드, `SWHeader homeMenu` / `SWHomeMenu` / `SWRecentFiles`)는 **SW 일반 모드 전용**입니다. +- SW 뷰어 모드(`SWViewer*`)에는 홈 메뉴를 적용하지 않습니다. 뷰어 코드·Story는 변경하지 않았습니다(`sw-viewer` 소스에 홈 메뉴 참조 없음). +- AI 지침: AI_USAGE §0.2 표에 "로고(홈) 버튼 메뉴" 행(일반 = `homeMenu`, 뷰어 = 사용하지 않음), §0.3 혼합 금지 항목, 카탈로그 §5·DESIGN_RULES §12·PATTERNS 8의 "일반 모드 전용" 표기, VIEWER.md 잘못된 사용 행, 공통 AI_GUIDE 예시 B/B2. + +## 충돌 해결 + +| 파일 | 해결 | +|---|---| +| `packages/sw/src/index.ts` | 두 Export 모두 유지(`sw-home-menu`, `sw-viewer`) | +| `ai/AI_USAGE.md` | 뷰어 모드 문장 유지 + 홈 메뉴 문장 추가 | +| `ai/COMPONENT_CATALOG.md` | 홈 메뉴 §5 추가, 이후 6 타입·7 비공개·8 제약, **뷰어 §8 → §9**(참조 갱신: AI_USAGE, VIEWER.md, DESIGN_RULES §11) | +| `ai/COMPOSITION_PATTERNS.md` | 뷰어 7 유지, **홈 메뉴 7 → 8**, 하지 말 것 8 → 9 | +| `ai/DESIGN_RULES.md` | 뷰어 §11 유지, **홈 메뉴 §11 → §12** | + +`docs/sw/sw-home-menu-integration-2026-10-19.md`의 "패턴 7절, 디자인 규칙 11절"은 통합 당시 기록이라 그대로 둡니다(현재 번호는 위 표). + +## Merge 중 추가 수정 + +| 파일 | 내용 | 이유 | +|---|---|---| +| `sw-header/SWHeader.tsx` | 홈 메뉴 시작 위치 = max(객체 수정 영역, `controls` 안 파일명 오른쪽) − 2px | `controls`로 파일명이 객체 수정 영역 안에 있는 Header(실제 SW 화면)에서 메뉴가 파일명을 덮음(x 63 → 378). 기본 Header 배치는 동일(캡처 바이트 동일) | +| `tests/ai-docs.check.mjs` | `` `SWViewer*` `` 같은 와일드카드 표기를 Export 이름으로 보지 않음 | Merge 전 뷰어 문서에서도 실패하던 오탐 | +| `tests/home-menu-integration.browser.mjs` | Story 목록 기대값에서 `SW/Tool` 제외, `SW/Viewer` 포함 | `SW/Tool`은 뷰어 작업(7f42923)에서 사용자 요청으로 삭제됨 | + +## 검증 + +| 항목 | 결과 | +|---|---| +| SW typecheck / 앱 `tsc -b` / SW build / Storybook build | PASS / PASS / PASS / PASS | +| AI 문서(`check:ai-docs`, `ai-docs.check.mjs`) | PASS / 32/32 | +| 홈 메뉴 Storybook(`home-menu-integration.browser.mjs`, 배치 수정 후 재실행) | 22/22 | +| 기존 Header·Popup 기능(`integrated-improvement` options·popup) | 89/0 | +| 뷰어 Story 기능(`viewer.browser.mjs`, 참고 뷰어 없이) | 70/70 | +| Merge 전(b434f27) 대비 픽셀: Header·Popup 요소(`viewer-regression`) / SW Header·Popup·Viewer 전체 Story 48장(1440·768, threshold 0) | 39/39 / 48/48 동일 (배치 수정 전 측정, 수정은 메뉴가 열린 동안만 실행) | +| Figma 26:10591 | 현재 Figma 원본 = 저장 이미지(바이트 동일). 섹션 5·타일 15·크기 80×46·메뉴 1305×77·색·아이콘 일치. 글자는 Figma Dotum 14/12px vs HM Noto Sans KR(기존 "폰트 차이 · 디자인 승인 대기") | +| 실제 SW 화면(`D:\디자인시스템\HMDesignSwTest`, 0.2.0 로컬 tarball) | typecheck·build PASS, 브라우저 14/14(열기·다시 클릭 닫기·Hover `#FF5C00`·최근파일·Escape 순서·문서 Dropdown·속성 패널 토글). 콘솔 404 1건은 앱의 `/favicon.ico` 없음(기존) | + +## NOT VERIFIED + +- `SW/Tool` 섹션 회귀(Story 삭제됨), 참고 DWG/DXF 뷰어 대비 비교, Firefox·Safari, SW + HM UI CSS 동시 사용, Registry Publish. +- 배치 수정 후 Header·Popup·Viewer 픽셀 회귀 재실행(코드 경로상 메뉴가 닫혀 있으면 실행되지 않아 재사용). +- 실제 SW 화면의 미연결 타일 12개(저장·복사저장·내보내기·도면묶기·복구하기·임시파일·Display·저장하기·불러오기·설명보기·문의하기·S/W정보): 뷰어 앱에 해당 기능이 없어 실행 동작 없음(`toggle: false`, 툴팁 "뷰어에서 지원하지 않는 기능"). +- 실제 SW 화면은 `logoSrc`를 주지 않아 로고 면이 비어 있음(기존 상태). diff --git a/docs/sw/sw-hover-stability-2026-10-20.md b/docs/sw/sw-hover-stability-2026-10-20.md new file mode 100644 index 0000000..aebbdb6 --- /dev/null +++ b/docs/sw/sw-hover-stability-2026-10-20.md @@ -0,0 +1,48 @@ +# SW Header 필드 400 · Footer 말줄임 · Hover 위치 고정 (2026-10-20) + +> **글꼴 기준 변경:** 이 기록의 측정 글꼴은 Dotum이었습니다. 이후 SW 기본 글꼴이 Noto Sans KR로 확정되어 재측정 결과는 [sw-noto-bold-2026-10-20.md](./sw-noto-bold-2026-10-20.md)를 따릅니다. Hover 위치 고정·Footer 말줄임 정책은 유지됩니다. + +사용자 승인(2026-10-20) 범위의 수정·검증 기록이다. 증거: [hover-stability-qa](hover-stability-qa/) (`before/` = 수정 전 빌드, `after/` = 수정 후 빌드). + +## 변경 + +| 영역 | 변경 | 기준 | +|---|---|---| +| Header 필드 값 | `.hm-sw-header__field-value` 700 → 400 | Figma 텍스트 속성 Dotum Regular 14 · 자간 0.56px. 레이어 스타일 이름 `Dotum/bold/14`는 겹침·외곽선 표현이며 Stroke·겹침은 복제하지 않음 | +| Footer 명령 라벨 | `text-overflow: clip` → `ellipsis`, `title`이 없으면 잘린 동안만 전체 라벨 Tooltip(Hover·Focus) | 68 × 47 칸·14px·라벨 이름 그대로, 접근성 이름 = 전체 라벨 또는 `ariaLabel`. 공개 Props 변경 없음 | +| Home Menu 타일 | Hover·Pressed·Active의 아이콘 `translate(-1px, -1px)`, 라벨 `top: 24px` 제거 | **사용자 최종 기준: Hover에서 아이콘·텍스트 이동 0px** | + +## Figma와의 차이(기록, Figma 원본 변경 없음) + +- Home Menu 타일 Variant2/Variant3은 Figma에서 아이콘·라벨이 1px 위·왼쪽으로 이동한다. 사용자 결정(2026-10-20)으로 구현은 이동하지 않는다. 색·Hover 아이콘·주황 테두리만 바뀐다. Figma 분석 기록([analysis-report.md](figma-additional/analysis-report.md))은 Figma 사실로 보존한다. + +## 측정 결과 + +| 항목 | 수정 전 | 수정 후 | +|---|---|---| +| Home Menu 42타일(5개 Story 위치) Hover·Active | 아이콘 (-1, -1)px, 텍스트 Y -1px | 0px (크기·간격·타일 크기 동일) | +| Footer 명령 135칸(전체 Footer·도구 그룹·변경 예제 전 분류 + ▲ 패널) | 이동 0 | 이동 0 | +| `0_Layer_Cludmark` 텍스트/상자 (Chromium) | 142.97 / 142 (잘림) | 126.97 / 126.97 | +| 치수 `Standard` | 70.48 / 69 (잘림) | 62.48 / 62.48 | +| `POLYGON` · `WIPEOUT` | 잘린 글자(clip), Tooltip 없음 | `…` + Hover·Focus `title` | +| Header Open/More 520 ↔ 1920 (141단계) | — | 700과 400 배치 차이 0 | + +SVG Hover 자산 25쌍(Home Menu 15, Footer 10)은 내부 도형 좌표가 Default와 같다(캔버스 8배 측정, 차이 0). + +## 남은 문제 + +1. **Firefox `Continuous` 0.6px 잘림(미해결):** Firefox 158에서 선스타일 필드 첫 칸(`.hm-sw-header__line-values > :first-child`, `flex: 0 1 auto`)의 상자가 글자보다 0.6px 작게 계산되어 `Continuo…`로 표시된다(`hover-stability-qa/firefox-continuous/`). Chromium은 정상. 열 구조 grid/flex 변경, 자간·커닝·외곽선 조정으로는 해결되지 않았고, `flex: none`은 좁은 More 칸 말줄임을 깨고 끝 여백 추가는 Chromium 배치를 바꾼다. 사용자 지시로 이번에는 레이아웃 변경을 하지 않았으며, Chromium 반응형에 영향이 없는 수정안을 별도 검토한다. 참고: 수정 전(700) Firefox는 `0.25`·`1.00`·`0_Layer_Cludmark`가 잘렸다. +2. **`ByLayer`(가중치 38px 고정 칸):** 57.92px로 칸보다 길어 말줄임 + `title`. 사용자 결정으로 38px 칸·말줄임·Tooltip 유지. + +## 검증 + +| 검사 | 결과 | +|---|---| +| `hover-stability.browser.mjs` (Chromium) | 201/201 PASS | +| `hover-stability-firefox.browser.mjs` (Firefox 158, BiDi) | 58/59 — FAIL 1 = 위 남은 문제 1 | +| footer-popup-viewer-refinement | 47/47 | +| integrated-improvement (Open 히스테리시스 포함) | 89 PASS / 0 FAIL | +| footer-design-review · theme-inheritance | 21/21 · 23/23 | +| home-menu-integration | 22/23 — 기존 실패(`without homeMenu…`, 이전 보고와 동일) | +| dropdown-consolidation | 223 PASS / 5 FAIL — 기존 스냅샷 실패(이전 보고와 동일) | +| `typecheck:sw` · `build:sw` · `build-storybook` · `check:ai-docs` · `ai-docs.check` 37/37 | PASS | diff --git a/docs/sw/sw-integrated-improvement-2026-10-19.md b/docs/sw/sw-integrated-improvement-2026-10-19.md new file mode 100644 index 0000000..1381eff --- /dev/null +++ b/docs/sw/sw-integrated-improvement-2026-10-19.md @@ -0,0 +1,79 @@ +# SW 패키지 통합 개선 구현·검증 기록 (2026-10-19) + +- 대상: `@hm-design/sw` 0.1.0 → **0.2.0**, 브랜치 `feature/sw-package`, 기준 Commit `5faa1f1`(작업 시작 시 로컬 = 원격). +- 범위: 승인된 통합 계획 1~8단계(빌드 재현성, 숨김 API, 도구 버튼, 로고 옆 파일 열기·실측 반응형, `SWPopup` 자유 콘텐츠·Escape 스택, Popup 안 Dropdown, 조합형 반응형, 문서·Storybook·소비 검증). +- Commit·Push·Publish 없음. 증거: [integrated-improvement-qa/](./integrated-improvement-qa/). + +## 1. 단계별 결과 + +| 단계 | 내용 | 판정 | +|---|---|---| +| 1 빌드 재현성 | 원인: 체크아웃 줄바꿈. 작업 폴더의 `ai/`·README 등 16개 파일이 CRLF였고(`core.autocrlf=true`), CSS에 base64로 들어가는 SVG도 CRLF 체크아웃이면 바이트가 달라짐. `//#region` 경로는 경로가 달라도 동일(원인 아님). 조치: `build.mjs`가 dist 텍스트를 LF로 정규화하고 `dist/build-info.json`(commit, dirty, vite·rolldown·typescript 버전, 시각 없음) 기록, `packages/sw/.gitattributes`(`eol=lf`), 작업 폴더 16개 파일 LF 변환(내용 diff 없음), 0.2.0 | PASS | +| 2 숨김 API | `hiddenControls`에 `documentNew`·`documentOpen`·`layerFreeze`·`layerLock`(`SWHeaderSubControlId`). 하위 Props `showNew`/`showOpen`, `showFreeze`/`showLock`, 속성창 `menus.showLayerFreeze`/`showLayerLock`. 동결·잠금은 20px 자리 유지 + 그리지 않음(가짜 버튼 없음). 하위 항목 숨김은 레이아웃 모드·Breakpoint를 바꾸지 않음 | PASS | +| 3 도구 버튼 | `SWToolButton`(`text` = 속성Bar/속성창 토글, `pill` = 인쇄·K, `document` = 파일명 면), `SWToolGroup`(`text` 상세보기 묶음 / `pill`, `selection="single"` radiogroup). 새 디자인 값 없음 | PASS | +| 4 파일 열기 | `documentOpenPlacement="header"`: Home 바로 뒤에 `hm-sw-header__document-button` 면으로 Open, Dropdown Open 숨김, `onDocumentOpen`·`documentOpenLabel` 재사용. `leading` 슬롯. 측정 폭을 `--hm-sw-header-leading-width`로 파일명 clamp에서 빼고, Open이 보이는 동안 다른 필드는 줄지 않게 해 실제 넘침이 생기면 Open을 More로 이동(되돌릴 때 Open 폭 히스테리시스). D-1 12px 여백 | PASS | +| 5 SWPopup | 속성창 프레임을 `SWPopupFrame`(내부)으로 분리해 `SWPopup`과 `SWHeaderPropertyPanel`이 같은 DOM 사용. `children`·`title`·`autoFocus`, `selection`/`properties`/`groups` 선택형. Escape 스택(안 = 그 Popup, 밖 = 최근 사용 Popup 하나, `defaultPrevented` 존중), autoFocus 시 안에서 닫히면 Focus 복귀 | PASS | +| 6 Popup 안 Dropdown | 실측: 짧은 Popup에서 레이어 목록이 본문 경계에서 잘림 확인 → 속성창 Picker의 고정 위치 계산을 `useSWFixedDropdownPosition`으로 추출해 Picker와 공개 Dropdown 5종이 공유(중복 구현 없음). `SWPopupSection` / `SWPopupRow` 추가 | PASS | +| 7 조합형 반응형 | 새 More 로직 없음. `SWHeader`의 `controls`·`documentOpenPlacement`·`leading`·`tools`로 조합형 구성이 기존 More·실측 판단을 그대로 사용. `SWTheme` 직접 배치에는 More 없음(문서화) | PARTIAL(도구 막대 자체는 More로 이동하지 않음, §6) | +| 8 문서·Storybook·소비 검증 | AI 가이드 4종·예제 E/F·README·사용 가이드, Story 3개 파일(5 Story: `SW/Header`의 Document Open·Hidden Sub Controls, `SW/Tool` 1, `SW/Popup` 2. 별도 Options 메뉴 없음), 독립 소비 프로젝트(SW + HM UI) | PASS | + +## 2. 추가·변경 공개 API (모두 선택, 기본 동작 동일) + +| 대상 | 추가 | +|---|---| +| `SWHeader` | `documentOpenPlacement?: "menu" \| "header"`, `leading?: ReactNode`, `hiddenControls`의 `SWHeaderSubControlId` 4개 | +| `SWHeaderDocumentTitle` | `showNew`, `showOpen`(둘 다 false → 하단 없음, 문서도 없으면 Dropdown 없음) | +| `SWHeaderLayerMenu` · `SWHeaderLayerControl` | `showFreeze`, `showLock` | +| `SWHeaderPropertyPanel` | `children`, `title`, `autoFocus`, `selection`·`properties`·`groups` 선택형, `menus.showLayerFreeze`/`showLayerLock` | +| 신규 | `SWPopup`, `SWPopupSection`, `SWPopupRow`, `SWToolButton`, `SWToolGroup` 및 `*Props`, `SWToolButtonAppearance`, `SWHeaderSubControlId` | +| 내부(비공개) | `SWPopupFrame`, `useSWFixedDropdownPosition`, `SWHeaderMore.forceVisible` | + +호환성: 기존 Props·Export 제거·이름 변경 없음. 동작 변경은 Escape 하나(여러 Popup이 동시에 열린 경우 바깥 Escape가 모두가 아니라 최근 사용 Popup 하나만 닫음, Popup 안에서 이미 처리된 Escape 무시). Header 단일 속성창의 Escape 닫기·Focus 복귀는 기존 overview 회귀로 확인. + +## 3. 기존 디자인 유지 + +- 기존 SW Story 10개 × 1920 + Overview·Responsive More × 9개 폭 = 28장, 변경 전 기준선과 **픽셀 단위 28/28 동일**(threshold 0, 기준선 자체 2회 캡처 28/28 동일). [compare-result](./integrated-improvement-qa/visual-diff/compare-result.json) +- 소비 프로젝트에서 SW·HM UI CSS 순서를 바꿔도(SW 먼저 / UI 먼저) 대표 SW·UI 요소 15종 computed style 동일. Tailwind 4 preflight는 `@layer base`, SW CSS는 layer 밖이라 충돌 없음. + +## 4. 반응형 (Chrome, 실측) + +| 폭 | 1920 | 1800 | 1440 | 1180 | 1080 | 900 | 768 | 640 | 520 | 390 | +|---|---|---|---|---|---|---|---|---|---|---| +| 기본 Header + Open: Open | 표시 | 표시 | 표시 | 표시 | 표시 | 표시 | 표시 | 표시 | More | More | +| 파일명 폭(px) | 250 | 190 | 310 | 120 | 120 | 120 | 179 | 96 | 103 | 96 | +| 레이어 필드(px) | 234 | 234 | 234 | 234 | 234 | 234 | 234 | 234 | 234 | 113 | +| 조합형(controls) Open | 표시 | 표시 | 표시 | 표시 | 표시 | 표시 | More | More | More | More | + +- 모든 폭: Header 49px, 막대·객체 영역 넘침 ≤ 1px, 부품 겹침 없음, 오른쪽 끝 밖으로 나가는 부품 없음, More의 Open 실행 확인. +- 히스테리시스: 520 → 1080 확대 시 600px에서 한 번만 복귀(깜빡임 없음). D-2는 고정 640px 대신 실측으로 결정(기본 520 미만·조합형 768 이하에서 이동). +- 사선 접점: Open은 기존 파일명과 같은 위치(로고 오른쪽 − 15px, 48px)에서 시작, 파일명은 Open 뒤에서 12px 여백. 조합형(`SWHeaderHome` → `SWToolButton document` → `SWHeaderDocumentTitle`)도 같은 값. + +## 5. Popup 자유 콘텐츠·Dropdown + +- `SWPopup` 3종 프레임 = 속성창 프레임(314, `#E4DBC9`, `#A67D03`, 4px, 제목 `#FFC600`, 제목줄 30, dialog / aria-modal=false) 동일. +- children: SW `SWHeaderInput` 행(확정·잘못된 값 복원), compact 41px 필드, 읽기 전용 행, SW 레이어·색상 Dropdown, HM UI Switch·Select(Portal)·Slider·Button 모두 동작. 기존 `SWHeaderPropertyPanel`에 children 추가 시 그룹 뒤 같은 본문에 배치. +- Dropdown: Popup 안에서 `position: fixed`로 필드 바로 아래 열림, Popup 밖으로 나가도 끝까지 보임(elementFromPoint), Escape는 Dropdown만 닫음. +- 여러 Popup: 편집 중 Input Escape = 편집 취소만, Popup 안 Escape = 그 Popup만, 바깥 Escape = 최근 사용(Focus·클릭) Popup 하나. 긴 콘텐츠는 본문 스크롤로 마지막 행 도달. + +## 6. 남은 문제·미검증 + +- **[미해결] 좁은 화면에서 문서명·레이어 필드가 사라짐:** `tools`·`leading`의 소비 콘텐츠(`SWToolGroup` 포함)는 More로 이동하지 않고 폭을 유지합니다. 그래서 넓은 도구 막대가 있으면 `controls` 필드가 대신 줄어듭니다. 예제 F(도구 237px) 실측: 1080px에서 Open은 More로 이동, 640px 문서명 64 · 레이어 93px, 520px 33 · 48px, **390px 문서명·레이어 필드 폭 0(사실상 사라짐)**. 막대 넘침은 없지만 필드를 쓸 수 없습니다. 도구 막대 항목을 More로 옮기는 기능이 필요하며 이번 범위에서는 해결하지 않았습니다(해결 계획: 커밋 보고 §남은 문제 1). +- **Popup 안 Header Dropdown 외형:** 동작은 정상이지만 어두운 Header 필드가 밝은 Popup 면 위에 그대로 그려집니다(디자인 미정). 행 모양 선택이 필요하면 속성창 `picker`. +- **디자인 미확정 보류:** `SWToolStatus`, Popup 하단 버튼(적용·취소) 전용 스타일. +- `index.ts`의 `SWHeaderSubControlId` export 한 줄은 다른 세션(Figma 병렬 작업)이 같은 폴더에 같은 내용으로 추가한 것으로 보이며, 이 계획과 같아 유지했습니다. +- NOT VERIFIED: Firefox·Safari, 실제 모바일 기기, 스크린 리더 음성, 실제 Registry publish, Popup `anchorRef` 경로의 새 Story(기존 Header 속성창 경로는 overview 회귀로 확인). + +## 7. 실행한 검증 + +| 검증 | 결과 | +|---|---| +| `tsc -b`(루트) / `npm run typecheck -w @hm-design/sw` | exit 0 / exit 0 | +| [integrated-improvement.browser.mjs](../../packages/sw/tests/integrated-improvement.browser.mjs) (옵션·조합형·도구·Popup) | 97/97 PASS, 콘솔 오류 0 | +| [integrated-consumer.mjs](../../packages/sw/tests/integrated-consumer.mjs) + browser (React 19.3 · TS 7.0 · Vite 8.3 · Tailwind 4.3, SW + UI Tarball, CSS 2순서) | tsc·build 성공, 42/42 PASS | +| 기존 A~D 소비([ai-template-consumer](../../packages/sw/tests/ai-template-consumer.mjs)) | 27/27 PASS | +| [ai-docs.check.mjs](../../packages/sw/tests/ai-docs.check.mjs) | 21/21 PASS(예제 E·F 포함) | +| [integrated-visual.browser.mjs](../../packages/sw/tests/integrated-visual.browser.mjs) | 28/28 픽셀 동일 | +| [build-reproducibility.mjs](../../packages/sw/tests/build-reproducibility.mjs) | PASS: LF 2경로 × 2회 dist·Tarball 동일(`e98cc5ed…`), CRLF 복사본 dist 동일, 비-LF 파일 0 | +| storybook-unused-removal / overview(기존 회귀) | 처음 실행 78/81 · 51/54: 6건 중 4건은 이 작업이 의도적으로 바꾼 범위 단언(Story 수 증가, SW 소스·AI 문서), 2건은 변경 전 기준선에서도 실패하던 overview 과거 단언. 4건은 검사 의미를 유지해 범위를 갱신(SW/Header 10개·다른 항목 동일, 추가는 승인된 5개 Story만, 다른 패키지·설정·자산 무변경, SW 변경은 통합 개선 파일 목록 안에서만) → **81/81 · 52/54**. Options 메뉴를 `SW/Header`로 통합한 뒤(Story 2개 렌더 검사 추가) **83/83 · 52/54** | +| overview 남은 실패 2건 — **기존 실패, 신규 결함 아님** | "24 retained Story IDs…", "retained non-Overview declarations byte-identical…": 이미 은퇴한 Dropdown Story 시점(24개, 기준 Commit `50bf5bd`)을 고정 비교하는 과거 단언입니다. 이 작업을 시작하기 전 기준선(HEAD `5faa1f1`)에서도 같은 2건이 실패했습니다([baseline-overview/chrome-result.json](./integrated-improvement-qa/baseline-overview/chrome-result.json) `checks`의 FAIL 2건, 실행 로그 `baseline-overview.log`는 Git 제외(`*.log`) 로컬 기록). 현재 인벤토리는 storybook-unused-removal이 검증하며, overview 기능 검사 52건은 모두 PASS | +| font-weight 정책 테스트 | 3/3 PASS | diff --git a/docs/sw/sw-noto-bold-2026-10-20.md b/docs/sw/sw-noto-bold-2026-10-20.md new file mode 100644 index 0000000..9b113b1 --- /dev/null +++ b/docs/sw/sw-noto-bold-2026-10-20.md @@ -0,0 +1,77 @@ +# SW Noto Sans KR 복귀 + 지정 텍스트 Bold (2026-10-20) + +범위: `feature/sw-package`, 기준 HEAD `032fcdc`(원격 `454472d` + 로컬 8 Commit). SW 패키지·SW Story·SW 테스트·AI 문서·README만 변경. Web UI·OrgChart 코드는 변경하지 않음(공통 `AI_GUIDE.md`는 공식 `sync:ai-docs`로 사본 동기화). 증거: [sw-noto-bold-qa/](./sw-noto-bold-qa/). Dotum 시점 기록([sw-dotum-font-2026-10-20.md](./sw-dotum-font-2026-10-20.md))은 이력으로 보존. + +## 1. 글꼴 정책 + +| 영역 | 기본 글꼴 | +|---|---| +| SW | **Noto Sans KR** (`--hm-sw-header-font-family: "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif`) — 2026-10-20 Dotum 기본값 철회 | +| Web UI | Noto Sans KR (변경 없음, 토큰 별개) | +| OrgChart | 기존 설정 유지 | + +- Dotum 전용 보정 정리: Header 그리기모드 칸 padding 4px → **8px 복원**(Noto 700 "그리기모드" 67.2px ≤ 내용 폭 74px). +- Storybook은 Web UI theme의 Noto Sans KR 가변 글꼴(100–900)을 로드: 700은 실제 Bold 면(합성 Bold 아님). + +## 2. Bold 적용 범위 (Chromium·Firefox 계산값 동일) + +| 대상 | 선택자 | 전 → 후 | +|---|---|---| +| SWHeader 파일명 | `.hm-sw-header__document-name` (버튼 상속) | 700 → 700 (이미 Bold, CSS 추가 없음) | +| Composed Controls 필드 값 | `.hm-sw-header__field-value:not(.hm-sw-header .hm-sw-header__field-value)` | 400 → **700** | +| SWHeader 안 필드 값 (More 포함) | `.hm-sw-header__field-value` | 400 유지 | +| Footer 보조기능·명령어 제목 | `.hm-sw-footer-side__title` | 400 → **700** | +| Footer 분류 탭 12개 | `.hm-sw-footer-menu__tab` | 400 → **700** (Default·Hover·Selected) | +| Footer 전체보기 · Model/Layout · 명령 · 보조기능 라벨 | 각 클래스 | 400 유지 | +| Viewer 파일명·버튼 라벨 6개·Model/Layout | `.hm-sw-viewer-header :is(__document-name, __label, __tab)` | 500 → **700** (탭 숫자 11px 400 유지) | +| 최근파일 이름 | `.hm-sw-recent-files__name` | 700 + 1.3px 외곽선 (이미 적용, 변경 없음) | +| 최근파일 경로 | `.hm-sw-recent-files__path` | 400 → **700**, 기존 12px 1px 외곽선 유지 | +| 미리보기 제목 | `.hm-sw-recent-files__preview-title` | 400·외곽선 없음 → **700 + 1.3px 외곽선**(`--hm-sw-header-text-outline`), `overflow: clip` + 외곽선 여백. 폭 294px·말줄임 유지 | + +외곽선은 기존 토큰만 사용(14px = 1.3px, 12px = 1px). 크기·색·위치·말줄임 변화 없음. + +## 3. 재측정 (Noto Sans KR) + +| 항목 | Dotum 700 | Noto 700 | +|---|---|---| +| Footer 분류 탭 전체 / 영역 (1920) | 801 / 759px → ◀▶ 표시 | **727 / 727.3px → 모두 표시, ◀▶ 없음** | +| Footer 1440 · 1280 · 950 · 860 · 760 | 영역 487 · 351 · 283 · 215 · 79px, ◀▶ 스크롤 | 같은 영역, 내용 727px → ◀▶ 스크롤(기존 정책) | +| 분류 행 높이 | 24px | 24px (Bold 전후 동일) | +| Composed `0.25` / `Standard` | 38.25/38 · 70.48/69 (잘림) | 29.5/38 · 64.2 (표시) | +| Composed `1.0000`(스케일 값, 38px 칸) | 59.4/38 | **49.2/38 — 말줄임 + title (디자인 검토)** | +| Viewer 파일명 말줄임 끝나는 폭 | 500: 1365px / 700: 1420px | 500: 1315px / 700: **1320px** | +| Viewer 375–1920 (310단계) | — | 넘침 0, 메뉴·More 배치 500과 동일 | +| SWHeader `ByLayer`(38px 칸) | 57.9/38 | 56.0/38 — 말줄임 + title 유지(정책) | + +## 4. 남은 문제 + +- **Firefox `Continuous`(미해결, 악화):** Chromium·Firefox 모두 글자 81.3px인데 Firefox만 선스타일 첫 칸을 74.9px로 계산해 6.4px 부족(Dotum 400에서는 0.6px). 같은 Firefox flex 내재 폭 문제로 판단. 지시대로 Chromium에 영향을 주는 보정은 하지 않음 — 별도 검토. +- Composed `1.0000`: 38px 스케일 칸보다 넓음(필드 크기 확대 안 함). +- Figma 차이: Home Menu Hover 1px 이동 미적용(사용자 기준), Figma Dotum → Noto Sans KR 대체. + +## 5. 검증 + +| 검사 | 결과 | +|---|---| +| `text-weight.browser.mjs` (신규, Chromium) | 43/43 (행 높이 기대값 24px로 수정, ◀▶ = Overflow 일 때만 검사 추가) | +| `hover-stability.browser.mjs` (Chromium, Home Menu 42타일 · Footer 135칸) | 201/201 | +| `hover-stability-firefox.browser.mjs` | 58/59 — FAIL 1 = Firefox `Continuous`(위 남은 문제) | +| Firefox 계산값(Header·Composed·Footer·Viewer 12개 선택자, 분류 영역) | Chromium과 동일, 콘솔 오류 0 | +| viewer | 70/70 (라벨 weight 기대값 500 → 700, 요청 변경) | +| footer-popup-viewer 47/47 · integrated-improvement 89/0 FAIL(Open 히스테리시스) · footer-design-review 21/21 · theme-inheritance 23/23 | PASS | +| home-menu-integration 22/23 · dropdown-consolidation 223/5 FAIL | 기존 기준선 실패(이전 보고와 동일 항목) | +| `typecheck:sw` · `build-storybook`(패키지 build 포함) · `check:ai-docs` · `ai-docs.check` 37/37 | PASS | +| ai-template-consumer | 미실행(소비 프로젝트 빌드 필요). 글꼴 기대값만 Noto로 복원 | + +## 6. Git 미포함 로그 요약 (Commit 시점) + +`*.log`는 `.gitignore` 대상이라 `sw-noto-bold-qa/regression/*.log`는 저장소에 들어가지 않습니다. FAIL 항목만 아래에 남깁니다(모두 기존 기준선 또는 §4 남은 문제, 신규 회귀 아님). + +| 로그 | FAIL 항목 | +|---|---| +| dropdown-consolidation (5) | 28 → 24 Story 수, 24 ID 유지, 비 SW index 동일, 선언 동일, runtime/API/Overview 무변경 — 이후 Story 정리로 바뀐 기준선 | +| home-menu-integration (1) | `homeMenu` 없음일 때 logo 클릭 → `homeMenuOpen(true, home)` 호출 기록 — 기존 기준선 | +| hover-firefox (1) | Firefox `Continuous` 81.32 / 74.92px 잘림 — §4 | +| integrated-improvement | 89 PASS / 0 FAIL(보고서의 "Open 히스테리시스"는 측정 메모) | + +Commit 분리 후(2026-10-20) 같은 소스로 `typecheck:sw` · `build:sw` · `build-storybook` PASS, `text-weight` 43/43, `hover-stability`(Chromium) 201/201 재실행 PASS. 그 외 브라우저 결과는 Commit 전 동일 소스 실행분을 재사용합니다. 새 PC 인수인계는 [sw-pc-handoff-2026-10-20.md](./sw-pc-handoff-2026-10-20.md). diff --git a/docs/sw/sw-noto-bold-qa/chromium/footer-chromium.png b/docs/sw/sw-noto-bold-qa/chromium/footer-chromium.png new file mode 100644 index 0000000..57615aa Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/chromium/footer-chromium.png differ diff --git a/docs/sw/sw-noto-bold-qa/chromium/footer.png b/docs/sw/sw-noto-bold-qa/chromium/footer.png new file mode 100644 index 0000000..5504bc4 Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/chromium/footer.png differ diff --git a/docs/sw/sw-noto-bold-qa/chromium/home-menu-chromium.png b/docs/sw/sw-noto-bold-qa/chromium/home-menu-chromium.png new file mode 100644 index 0000000..a63d7be Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/chromium/home-menu-chromium.png differ diff --git a/docs/sw/sw-noto-bold-qa/chromium/hover-stability-chromium.json b/docs/sw/sw-noto-bold-qa/chromium/hover-stability-chromium.json new file mode 100644 index 0000000..f8c3172 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/chromium/hover-stability-chromium.json @@ -0,0 +1,27823 @@ +{ + "checks": [ + { + "n": "Header: every field value is Noto Sans KR 400 / 14px / 0.56px", + "ok": true, + "d": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 13, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 13, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 14, + "width": 1800, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 14, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + } + ] + }, + { + "n": "Header: \"Standard\" is shown whole (text width ≤ box)", + "ok": true, + "d": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + } + ] + }, + { + "n": "Header: \"0_Layer_Cludmark\" is shown whole (text width ≤ box)", + "ok": true, + "d": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + } + ] + }, + { + "n": "Header: \"1.00\" is shown whole (text width ≤ box)", + "ok": true, + "d": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + } + ] + }, + { + "n": "Header: \"255,229,0\" is shown whole (text width ≤ box)", + "ok": true, + "d": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 13, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 14, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + } + ] + }, + { + "n": "Header: no field value is cut in a full-width (≥ 1800px) header (except fixed 38px 가중치 / 스케일 slots)", + "ok": true, + "d": [] + }, + { + "n": "Header: buttons / menu text / font sample keep their own weight (700)", + "ok": true, + "d": [ + "700" + ] + }, + { + "n": "Home Menu: tiles measured (42)", + "ok": true, + "d": [ + "저장", + "복사저장", + "내보내기", + "도면묶기", + "찾아열기", + "최근파일", + "새파일", + "3개 그룹", + "저장", + "복사저장", + "내보내기", + "도면묶기", + "찾아열기", + "최근파일", + "새파일", + "복구하기", + "임시파일", + "Display...", + "저장하기", + "불러오기", + "1개 그룹", + "저장", + "복사저장", + "내보내기", + "도면묶기", + "찾아열기", + "최근파일", + "새파일", + "복구하기", + "임시파일", + "Display...", + "저장하기", + "불러오기", + "1개 그룹", + "저장", + "복사저장", + "내보내기", + "도면묶기", + "찾아열기", + "최근파일", + "새파일", + "3개 그룹" + ] + }, + { + "n": "Home Menu \"저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복사저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"내보내기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"도면묶기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"찾아열기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"최근파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"새파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"3개 그룹\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복사저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"내보내기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"도면묶기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"찾아열기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"최근파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"새파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복구하기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"임시파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"Display...\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"저장하기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"불러오기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"1개 그룹\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복사저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"내보내기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"도면묶기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"찾아열기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"최근파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"새파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복구하기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"임시파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"Display...\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"저장하기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"불러오기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"1개 그룹\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"복사저장\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"내보내기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"도면묶기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"찾아열기\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"최근파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"새파일\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu \"3개 그룹\": icon · text · gap · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": {} + }, + { + "n": "Home Menu: hover still shows the accent (#FF5C00 text, hover icon, orange ring)", + "ok": true, + "d": [ + [ + "저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "복사저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "내보내기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "도면묶기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "찾아열기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "최근파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "새파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "3개 그룹", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "복사저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "내보내기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "도면묶기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "찾아열기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "최근파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "새파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "복구하기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "임시파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "Display...", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "저장하기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "불러오기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "1개 그룹", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "저장", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "복사저장", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "내보내기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "도면묶기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "찾아열기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "최근파일", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "새파일", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "복구하기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "임시파일", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "Display...", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "저장하기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "불러오기", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "1개 그룹", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "복사저장", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "내보내기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "도면묶기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "찾아열기", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "최근파일", + "rgb(255, 92, 0)", + "rgb(255, 92, 0)" + ], + [ + "새파일", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ], + [ + "3개 그룹", + "rgb(246, 244, 242)", + "rgb(255, 92, 0)" + ] + ] + }, + { + "n": "Home Menu: Active tiles (13) = Default tiles: same icon / text offset inside the tile", + "ok": true, + "d": [ + { + "name": "저장", + "active": "30.75,5.75,26.555,23", + "def": "30.75,5.75,26.555,23" + }, + { + "name": "복사저장", + "active": "31,6.5,13.117,23", + "def": "31,6.5,13.117,23" + }, + { + "name": "내보내기", + "active": "31,6.64,13.117,23", + "def": "31,6.64,13.117,23" + }, + { + "name": "도면묶기", + "active": "31,6,13.117,23", + "def": "31,6,13.117,23" + }, + { + "name": "찾아열기", + "active": "30.85,5,13.117,23", + "def": "30.85,5,13.117,23" + }, + { + "name": "최근파일", + "active": "32,7.25,13.117,23", + "def": "32,7.25,13.117,23" + }, + { + "name": "새파일", + "active": "31,6,19.836,23", + "def": "31,6,19.836,23" + }, + { + "name": "복구하기", + "active": "31,5.5,13.117,23", + "def": "31,5.5,13.117,23" + }, + { + "name": "임시파일", + "active": "31.125,6.25,13.117,23", + "def": "31.125,6.25,13.117,23" + }, + { + "name": "Display...", + "active": "32,8,5.359,23", + "def": "32,8,5.359,23" + }, + { + "name": "저장하기", + "active": "32.15,7.25,13.117,23", + "def": "32.15,7.25,13.117,23" + }, + { + "name": "불러오기", + "active": "32,6,13.117,23", + "def": "32,6,13.117,23" + }, + { + "name": "최근파일", + "active": "32,7.25,13.117,23", + "def": "32,7.25,13.117,23" + } + ] + }, + { + "n": "Home Menu: ring hidden at rest", + "ok": true, + "d": "0" + }, + { + "n": "Home Menu: ArrowRight moves focus to the next tile", + "ok": true, + "d": "복사저장" + }, + { + "n": "Footer: command slots measured (135)", + "ok": true, + "d": 135 + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · LINE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1389, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · PLINE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1457, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · ARC\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1492, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · CIRCLE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 926, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · ELLIPSE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 994, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · RECTA...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1062, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · POLYGON\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1130, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · POINT\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1198, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · HATCH\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1266, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 도형 · WIPEOUT\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1334, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--full-footer · footer0 · 수정 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 722, + 1026.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도형 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 수정 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 편집 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 문자 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 레이어 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 블록 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 뷰 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 선택/조회 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 도로/횡단 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1028, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1096, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1164, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1232, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer0 · 구조/배근 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1300, + 307, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 도형 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 수정 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 편집 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 문자 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 레이어 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 블록 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 뷰 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 선택/조회 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 도로/횡단 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer1 · 구조/배근 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 508, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 360, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 428, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 496, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 564, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Ellipse\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 632, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Rect...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 700, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Poly\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 768, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Point\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 836, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 도형 · Hatch\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 904, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--tool-groups · footer3 · 수정 · NCopy\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 360, + 934, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 측량 · Move\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 측량 · Rotate\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 측량 · Trim\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 그리기 · Line\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 756, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 그리기 · PLine\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 824, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 그리기 · Arc\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 892, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--custom-content · footer0 · 그리기 · Circle\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 960, + 374.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · CIRCLE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 873, + 689.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · ELLIPSE\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 941, + 689.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · RECTA...\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1009, + 689.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · POLYGON\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1077, + 689.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · POINT\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 873, + 736.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · HATCH\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 941, + 736.5, + 68, + 47 + ] + } + }, + { + "n": "Footer \"sw-footer--responsive · ▲ panel · WIPEOUT\": icon · text · gap · 68 × 47 unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "moved": {}, + "box": [ + 1009, + 736.5, + 68, + 47 + ] + } + }, + { + "n": "Footer: hover still colors the command (#FF5C00) and swaps to the orange icon where one is given", + "ok": true, + "d": [] + }, + { + "n": "Footer: Selected (aria-pressed) POLYGON keeps the Default geometry, accent color", + "ok": true, + "d": {} + }, + { + "n": "Footer: label ends in an ellipsis (text-overflow: ellipsis), font stays 14px, slot 68 × 47", + "ok": true, + "d": { + "POLYGON": { + "rest": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + }, + "hover": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + } + }, + "WIPEOUT": { + "rest": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": "WIPEOUT", + "w": 68, + "h": 47 + } + }, + "ELLIPSE": { + "rest": { + "text": "ELLIPSE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "ELLIPSE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + } + }, + "LINE": { + "rest": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + } + } + } + }, + { + "n": "Footer: POLYGON — cut → ellipsis, hover title = full name", + "ok": true, + "d": { + "rest": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + }, + "hover": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + } + } + }, + { + "n": "Footer: WIPEOUT — cut → ellipsis, hover title = full name", + "ok": true, + "d": { + "rest": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": "WIPEOUT", + "w": 68, + "h": 47 + } + } + }, + { + "n": "Footer: a command that fits (LINE) gets no automatic tooltip", + "ok": true, + "d": { + "rest": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + } + } + }, + { + "n": "Footer: POLYGON / WIPEOUT accessible names are the full command names", + "ok": true + }, + { + "n": "Footer: ariaLabel still wins (RECTA... = Rectangle)", + "ok": true + }, + { + "n": "Footer: keyboard focus on WIPEOUT exposes the same title", + "ok": true, + "d": "WIPEOUT" + }, + { + "n": "Footer: Enter on WIPEOUT selects it (aria-pressed)", + "ok": true + }, + { + "n": "No page errors", + "ok": true, + "d": [] + } + ], + "report": { + "engine": "chromium", + "headerFields": [ + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 5, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 6, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 7, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 8, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 9, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 10, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 11, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 12, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 132.34, + "boxW": 132.34, + "client": 132, + "scroll": 132, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--interactive-states", + "header": 14, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 1, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 2, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 3, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 56.03, + "client": 56, + "scroll": 56, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "ByLayer", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 56.03, + "boxW": 38, + "client": 38, + "scroll": 56, + "cut": true + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 4, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 13, + "width": 1920, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 13, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 14, + "width": 1800, + "text": "WALL", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 38.25, + "boxW": 38.25, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--document-open", + "header": 14, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 0, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 4, + "width": 1920, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Sample-Center", + "field": "layer", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 105.31, + "boxW": 105.31, + "client": 105, + "scroll": 105, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "255,229,0", + "field": "color", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 67.22, + "boxW": 67.22, + "client": 67, + "scroll": 67, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Continuous", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 81.27, + "boxW": 81.27, + "client": 81, + "scroll": 81, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "0.25", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "1.00", + "field": "line-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 29.45, + "boxW": 38, + "client": 38, + "scroll": 38, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "text-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + }, + { + "story": "sw-header--responsive-more", + "header": 5, + "width": 1800, + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "size": "14px", + "spacing": "0.56px", + "family": "\"Noto Sans KR\"", + "textW": 64.23, + "boxW": 64.23, + "client": 64, + "scroll": 64, + "cut": false + } + ], + "fixedSlotCut": [ + "ByLayer (56.03 / 38px)" + ], + "homeMenu": [ + { + "name": "저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 607, + 906.5, + 80, + 46 + ], + "icon": [ + 637.75, + 912.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 929.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 931.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 607, + 906.5, + 80, + 46 + ], + "icon": [ + 637.75, + 912.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 929.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 931.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 607, + 906.5, + 80, + 46 + ], + "icon": [ + 637.75, + 912.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 929.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 931.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "복사저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 687, + 906.5, + 80, + 46 + ], + "icon": [ + 718, + 913, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 687, + 906.5, + 80, + 46 + ], + "icon": [ + 718, + 913, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 687, + 906.5, + 80, + 46 + ], + "icon": [ + 718, + 913, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "내보내기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 767, + 906.5, + 80, + 46 + ], + "icon": [ + 798, + 913.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 767, + 906.5, + 80, + 46 + ], + "icon": [ + 798, + 913.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 767, + 906.5, + 80, + 46 + ], + "icon": [ + 798, + 913.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 931.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "도면묶기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 847, + 906.5, + 80, + 46 + ], + "icon": [ + 878, + 912.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 931.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 847, + 906.5, + 80, + 46 + ], + "icon": [ + 878, + 912.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 931.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 847, + 906.5, + 80, + 46 + ], + "icon": [ + 878, + 912.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 931.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "찾아열기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 947, + 906.5, + 80, + 46 + ], + "icon": [ + 977.85, + 911.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 931.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 947, + 906.5, + 80, + 46 + ], + "icon": [ + 977.85, + 911.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 931.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 947, + 906.5, + 80, + 46 + ], + "icon": [ + 977.85, + 911.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 931.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "최근파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1027, + 906.5, + 80, + 46 + ], + "icon": [ + 1059, + 913.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 931.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1027, + 906.5, + 80, + 46 + ], + "icon": [ + 1059, + 913.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 931.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1027, + 906.5, + 80, + 46 + ], + "icon": [ + 1059, + 913.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 929.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 931.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "새파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1107, + 906.5, + 80, + 46 + ], + "icon": [ + 1138, + 912.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 929.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 931.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1107, + 906.5, + 80, + 46 + ], + "icon": [ + 1138, + 912.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 929.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 931.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1107, + 906.5, + 80, + 46 + ], + "icon": [ + 1138, + 912.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 929.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 931.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "3개 그룹", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1208, + 906.5, + 80, + 46 + ], + "icon": [ + 1240, + 919.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 929.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 931.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1208, + 906.5, + 80, + 46 + ], + "icon": [ + 1240, + 919.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 929.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 931.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1208, + 906.5, + 80, + 46 + ], + "icon": [ + 1240, + 919.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 929.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 931.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 388, + 526.5, + 80, + 46 + ], + "icon": [ + 418.75, + 532.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 549.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 551.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 388, + 526.5, + 80, + 46 + ], + "icon": [ + 418.75, + 532.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 549.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 551.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 388, + 526.5, + 80, + 46 + ], + "icon": [ + 418.75, + 532.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 549.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 551.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "복사저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 468, + 526.5, + 80, + 46 + ], + "icon": [ + 499, + 533, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 468, + 526.5, + 80, + 46 + ], + "icon": [ + 499, + 533, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 468, + 526.5, + 80, + 46 + ], + "icon": [ + 499, + 533, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "내보내기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 548, + 526.5, + 80, + 46 + ], + "icon": [ + 579, + 533.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 548, + 526.5, + 80, + 46 + ], + "icon": [ + 579, + 533.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 548, + 526.5, + 80, + 46 + ], + "icon": [ + 579, + 533.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 551.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "도면묶기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 628, + 526.5, + 80, + 46 + ], + "icon": [ + 659, + 532.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 551.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 628, + 526.5, + 80, + 46 + ], + "icon": [ + 659, + 532.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 551.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 628, + 526.5, + 80, + 46 + ], + "icon": [ + 659, + 532.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 551.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "찾아열기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 728, + 526.5, + 80, + 46 + ], + "icon": [ + 758.85, + 531.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 551.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 728, + 526.5, + 80, + 46 + ], + "icon": [ + 758.85, + 531.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 551.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 728, + 526.5, + 80, + 46 + ], + "icon": [ + 758.85, + 531.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 551.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "최근파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 808, + 526.5, + 80, + 46 + ], + "icon": [ + 840, + 533.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 808, + 526.5, + 80, + 46 + ], + "icon": [ + 840, + 533.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 808, + 526.5, + 80, + 46 + ], + "icon": [ + 840, + 533.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "새파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 888, + 526.5, + 80, + 46 + ], + "icon": [ + 919, + 532.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 549.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 551.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 888, + 526.5, + 80, + 46 + ], + "icon": [ + 919, + 532.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 549.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 551.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 888, + 526.5, + 80, + 46 + ], + "icon": [ + 919, + 532.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 549.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 551.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "복구하기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 988, + 526.5, + 80, + 46 + ], + "icon": [ + 1019, + 532, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 551.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 988, + 526.5, + 80, + 46 + ], + "icon": [ + 1019, + 532, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 551.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 988, + 526.5, + 80, + 46 + ], + "icon": [ + 1019, + 532, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 551.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "임시파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1068, + 526.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 532.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 551.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1068, + 526.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 532.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 551.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1068, + 526.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 532.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 551.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "Display...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1168, + 526.5, + 80, + 46 + ], + "icon": [ + 1200, + 534.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 549.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 551.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1168, + 526.5, + 80, + 46 + ], + "icon": [ + 1200, + 534.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 549.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 551.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1168, + 526.5, + 80, + 46 + ], + "icon": [ + 1200, + 534.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 549.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 551.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "저장하기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1248, + 526.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 533.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": ".1:5120/assets/setting-save-CtdE0td9.svg", + "text": [ + 1261.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1248, + 526.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 533.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": "0/assets/setting-save-hover-vsJlaada.svg", + "text": [ + 1261.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1248, + 526.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 533.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": "0/assets/setting-save-hover-vsJlaada.svg", + "text": [ + 1261.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 551.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "불러오기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1328, + 526.5, + 80, + 46 + ], + "icon": [ + 1360, + 532.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 551.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1328, + 526.5, + 80, + 46 + ], + "icon": [ + 1360, + 532.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 551.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1328, + 526.5, + 80, + 46 + ], + "icon": [ + 1360, + 532.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 549.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 551.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "1개 그룹", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1429, + 526.5, + 80, + 46 + ], + "icon": [ + 1461, + 539.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 549.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 551.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1429, + 526.5, + 80, + 46 + ], + "icon": [ + 1461, + 539.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 549.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 551.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1429, + 526.5, + 80, + 46 + ], + "icon": [ + 1461, + 539.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 549.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 551.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "저장", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 388, + 635.5, + 80, + 46 + ], + "icon": [ + 418.75, + 641.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 658.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 660.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 388, + 635.5, + 80, + 46 + ], + "icon": [ + 418.75, + 641.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 658.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 660.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 388, + 635.5, + 80, + 46 + ], + "icon": [ + 418.75, + 641.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 414.555, + 658.5, + 26.891, + 20 + ], + "labelBox": [ + 412.555, + 660.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "복사저장", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 468, + 635.5, + 80, + 46 + ], + "icon": [ + 499, + 642, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 468, + 635.5, + 80, + 46 + ], + "icon": [ + 499, + 642, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 468, + 635.5, + 80, + 46 + ], + "icon": [ + 499, + 642, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 481.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 479.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "내보내기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 548, + 635.5, + 80, + 46 + ], + "icon": [ + 579, + 642.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 548, + 635.5, + 80, + 46 + ], + "icon": [ + 579, + 642.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 548, + 635.5, + 80, + 46 + ], + "icon": [ + 579, + 642.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 561.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 559.117, + 660.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "도면묶기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 628, + 635.5, + 80, + 46 + ], + "icon": [ + 659, + 641.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 660.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 628, + 635.5, + 80, + 46 + ], + "icon": [ + 659, + 641.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 660.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 628, + 635.5, + 80, + 46 + ], + "icon": [ + 659, + 641.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 641.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 639.117, + 660.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "찾아열기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 728, + 635.5, + 80, + 46 + ], + "icon": [ + 758.85, + 640.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 660.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 728, + 635.5, + 80, + 46 + ], + "icon": [ + 758.85, + 640.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 660.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 728, + 635.5, + 80, + 46 + ], + "icon": [ + 758.85, + 640.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 741.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 739.117, + 660.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "최근파일", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 808, + 635.5, + 80, + 46 + ], + "icon": [ + 840, + 642.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 808, + 635.5, + 80, + 46 + ], + "icon": [ + 840, + 642.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 808, + 635.5, + 80, + 46 + ], + "icon": [ + 840, + 642.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 821.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 819.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "새파일", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 888, + 635.5, + 80, + 46 + ], + "icon": [ + 919, + 641.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 658.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 660.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 888, + 635.5, + 80, + 46 + ], + "icon": [ + 919, + 641.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 658.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 660.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 888, + 635.5, + 80, + 46 + ], + "icon": [ + 919, + 641.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 907.836, + 658.5, + 40.328, + 20 + ], + "labelBox": [ + 905.836, + 660.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "복구하기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 988, + 635.5, + 80, + 46 + ], + "icon": [ + 1019, + 641, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 660.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 988, + 635.5, + 80, + 46 + ], + "icon": [ + 1019, + 641, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 660.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 988, + 635.5, + 80, + 46 + ], + "icon": [ + 1019, + 641, + 21, + 22.359 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1001.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 999.117, + 660.5, + 57.766, + 16 + ], + "gap": -4.859, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "임시파일", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 1068, + 635.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 641.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 660.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1068, + 635.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 641.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 660.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1068, + 635.5, + 80, + 46 + ], + "icon": [ + 1099.125, + 641.75, + 22.25, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1081.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1079.117, + 660.5, + 57.766, + 16 + ], + "gap": -7.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "Display...", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 1168, + 635.5, + 80, + 46 + ], + "icon": [ + 1200, + 643.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 658.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 660.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1168, + 635.5, + 80, + 46 + ], + "icon": [ + 1200, + 643.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 658.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 660.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1168, + 635.5, + 80, + 46 + ], + "icon": [ + 1200, + 643.5, + 24, + 22 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1173.359, + 658.5, + 69.281, + 20 + ], + "labelBox": [ + 1171.359, + 660.5, + 73.281, + 16 + ], + "gap": -7, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "저장하기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 1248, + 635.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 642.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": "0/assets/setting-save-hover-vsJlaada.svg", + "text": [ + 1261.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1248, + 635.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 642.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": "0/assets/setting-save-hover-vsJlaada.svg", + "text": [ + 1261.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1248, + 635.5, + 80, + 46 + ], + "icon": [ + 1280.15, + 642.75, + 24.297, + 24.484 + ], + "iconCount": 1, + "iconSrc": "0/assets/setting-save-hover-vsJlaada.svg", + "text": [ + 1261.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1259.117, + 660.5, + 57.766, + 16 + ], + "gap": -8.734, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "불러오기", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 1328, + 635.5, + 80, + 46 + ], + "icon": [ + 1360, + 641.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 660.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1328, + 635.5, + 80, + 46 + ], + "icon": [ + 1360, + 641.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 660.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1328, + 635.5, + 80, + 46 + ], + "icon": [ + 1360, + 641.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1341.117, + 658.5, + 53.766, + 20 + ], + "labelBox": [ + 1339.117, + 660.5, + 57.766, + 16 + ], + "gap": -1, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "1개 그룹", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1429, + 635.5, + 80, + 46 + ], + "icon": [ + 1461, + 648.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 658.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 660.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1429, + 635.5, + 80, + 46 + ], + "icon": [ + 1461, + 648.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 658.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 660.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1429, + 635.5, + 80, + 46 + ], + "icon": [ + 1461, + 648.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1442.555, + 658.5, + 52.891, + 20 + ], + "labelBox": [ + 1440.555, + 660.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 607, + 1033.5, + 80, + 46 + ], + "icon": [ + 637.75, + 1039.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 1056.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 1058.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 607, + 1033.5, + 80, + 46 + ], + "icon": [ + 637.75, + 1039.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 1056.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 1058.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 607, + 1033.5, + 80, + 46 + ], + "icon": [ + 637.75, + 1039.25, + 21.5, + 21.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 633.555, + 1056.5, + 26.891, + 20 + ], + "labelBox": [ + 631.555, + 1058.5, + 30.891, + 16 + ], + "gap": -4.25, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "복사저장", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 687, + 1033.5, + 80, + 46 + ], + "icon": [ + 718, + 1040, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 687, + 1033.5, + 80, + 46 + ], + "icon": [ + 718, + 1040, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 687, + 1033.5, + 80, + 46 + ], + "icon": [ + 718, + 1040, + 23.297, + 22.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 700.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 698.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.484, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "내보내기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 767, + 1033.5, + 80, + 46 + ], + "icon": [ + 798, + 1040.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 767, + 1033.5, + 80, + 46 + ], + "icon": [ + 798, + 1040.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 767, + 1033.5, + 80, + 46 + ], + "icon": [ + 798, + 1040.14, + 22.516, + 23.266 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 780.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 778.117, + 1058.5, + 57.766, + 16 + ], + "gap": -6.906, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "도면묶기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 847, + 1033.5, + 80, + 46 + ], + "icon": [ + 878, + 1039.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 1058.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 847, + 1033.5, + 80, + 46 + ], + "icon": [ + 878, + 1039.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 1058.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 847, + 1033.5, + 80, + 46 + ], + "icon": [ + 878, + 1039.5, + 23, + 22 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 860.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 858.117, + 1058.5, + 57.766, + 16 + ], + "gap": -5, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "찾아열기", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 947, + 1033.5, + 80, + 46 + ], + "icon": [ + 977.85, + 1038.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 1058.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 947, + 1033.5, + 80, + 46 + ], + "icon": [ + 977.85, + 1038.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 1058.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 947, + 1033.5, + 80, + 46 + ], + "icon": [ + 977.85, + 1038.5, + 24.688, + 19.984 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 960.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 958.117, + 1058.5, + 57.766, + 16 + ], + "gap": -1.984, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "최근파일", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 1027, + 1033.5, + 80, + 46 + ], + "icon": [ + 1059, + 1040.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 1058.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1027, + 1033.5, + 80, + 46 + ], + "icon": [ + 1059, + 1040.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 1058.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1027, + 1033.5, + 80, + 46 + ], + "icon": [ + 1059, + 1040.75, + 22, + 24.5 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1040.117, + 1056.5, + 53.766, + 20 + ], + "labelBox": [ + 1038.117, + 1058.5, + 57.766, + 16 + ], + "gap": -8.75, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": true + }, + { + "name": "새파일", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1107, + 1033.5, + 80, + 46 + ], + "icon": [ + 1138, + 1039.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 1056.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 1058.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1107, + 1033.5, + 80, + 46 + ], + "icon": [ + 1138, + 1039.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 1056.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 1058.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1107, + 1033.5, + 80, + 46 + ], + "icon": [ + 1138, + 1039.5, + 20, + 23 + ], + "iconCount": 1, + "iconSrc": "e'/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1126.836, + 1056.5, + 40.328, + 20 + ], + "labelBox": [ + 1124.836, + 1058.5, + 44.328, + 16 + ], + "gap": -6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + }, + { + "name": "3개 그룹", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1208, + 1033.5, + 80, + 46 + ], + "icon": [ + 1240, + 1046.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 1056.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 1058.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "none" + }, + "hover": { + "box": [ + 1208, + 1033.5, + 80, + 46 + ], + "icon": [ + 1240, + 1046.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 1056.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 1058.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "active": { + "box": [ + 1208, + 1033.5, + 80, + 46 + ], + "icon": [ + 1240, + 1046.5, + 16, + 4 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1221.555, + 1056.5, + 52.891, + 20 + ], + "labelBox": [ + 1219.555, + 1058.5, + 56.891, + 16 + ], + "gap": 6, + "font": "\"Noto Sans KR\"|14px|700|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "none" + }, + "activeAtRest": false + } + ], + "homeActiveRelative": [ + { + "name": "저장", + "active": "30.75,5.75,26.555,23", + "def": "30.75,5.75,26.555,23" + }, + { + "name": "복사저장", + "active": "31,6.5,13.117,23", + "def": "31,6.5,13.117,23" + }, + { + "name": "내보내기", + "active": "31,6.64,13.117,23", + "def": "31,6.64,13.117,23" + }, + { + "name": "도면묶기", + "active": "31,6,13.117,23", + "def": "31,6,13.117,23" + }, + { + "name": "찾아열기", + "active": "30.85,5,13.117,23", + "def": "30.85,5,13.117,23" + }, + { + "name": "최근파일", + "active": "32,7.25,13.117,23", + "def": "32,7.25,13.117,23" + }, + { + "name": "새파일", + "active": "31,6,19.836,23", + "def": "31,6,19.836,23" + }, + { + "name": "복구하기", + "active": "31,5.5,13.117,23", + "def": "31,5.5,13.117,23" + }, + { + "name": "임시파일", + "active": "31.125,6.25,13.117,23", + "def": "31.125,6.25,13.117,23" + }, + { + "name": "Display...", + "active": "32,8,5.359,23", + "def": "32,8,5.359,23" + }, + { + "name": "저장하기", + "active": "32.15,7.25,13.117,23", + "def": "32.15,7.25,13.117,23" + }, + { + "name": "불러오기", + "active": "32,6,13.117,23", + "def": "32,6,13.117,23" + }, + { + "name": "최근파일", + "active": "32,7.25,13.117,23", + "def": "32,7.25,13.117,23" + } + ], + "footer": [ + { + "name": "sw-footer--full-footer · footer0 · 도형 · LINE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1389, + 1026.5, + 68, + 47 + ], + "icon": [ + 1414, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1406.844, + 1030.5, + 32.313, + 20 + ], + "labelBox": [ + 1391, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1389, + 1026.5, + 68, + 47 + ], + "icon": [ + 1414, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1406.844, + 1030.5, + 32.313, + 20 + ], + "labelBox": [ + 1391, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1389, + 1026.5, + 68, + 47 + ], + "icon": [ + 1414, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1406.844, + 1030.5, + 32.313, + 20 + ], + "labelBox": [ + 1391, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "LINE" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · PLINE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1457, + 1026.5, + 68, + 47 + ], + "icon": [ + 1482, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1470.125, + 1030.5, + 41.734, + 20 + ], + "labelBox": [ + 1459, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1457, + 1026.5, + 68, + 47 + ], + "icon": [ + 1482, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1470.125, + 1030.5, + 41.734, + 20 + ], + "labelBox": [ + 1459, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1457, + 1026.5, + 68, + 47 + ], + "icon": [ + 1482, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1470.125, + 1030.5, + 41.734, + 20 + ], + "labelBox": [ + 1459, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLINE" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · ARC", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1492, + 1026.5, + 68, + 47 + ], + "icon": [ + 1517, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1511.984, + 1030.5, + 28.016, + 20 + ], + "labelBox": [ + 1494, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1492, + 1026.5, + 68, + 47 + ], + "icon": [ + 1517, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1511.984, + 1030.5, + 28.016, + 20 + ], + "labelBox": [ + 1494, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1492, + 1026.5, + 68, + 47 + ], + "icon": [ + 1517, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1511.984, + 1030.5, + 28.016, + 20 + ], + "labelBox": [ + 1494, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "ARC" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · CIRCLE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 926, + 1026.5, + 68, + 47 + ], + "icon": [ + 951, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 934.953, + 1030.5, + 50.078, + 20 + ], + "labelBox": [ + 928, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 926, + 1026.5, + 68, + 47 + ], + "icon": [ + 951, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 934.953, + 1030.5, + 50.078, + 20 + ], + "labelBox": [ + 928, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 926, + 1026.5, + 68, + 47 + ], + "icon": [ + 951, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 934.953, + 1030.5, + 50.078, + 20 + ], + "labelBox": [ + 928, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "CIRCLE" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · ELLIPSE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 994, + 1026.5, + 68, + 47 + ], + "icon": [ + 1019, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 999.625, + 1030.5, + 56.734, + 20 + ], + "labelBox": [ + 996, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 994, + 1026.5, + 68, + 47 + ], + "icon": [ + 1019, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 999.625, + 1030.5, + 56.734, + 20 + ], + "labelBox": [ + 996, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 994, + 1026.5, + 68, + 47 + ], + "icon": [ + 1019, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 999.625, + 1030.5, + 56.734, + 20 + ], + "labelBox": [ + 996, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "ELLIPSE" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · RECTA...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1062, + 1026.5, + 68, + 47 + ], + "icon": [ + 1087, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1066.922, + 1030.5, + 58.156, + 20 + ], + "labelBox": [ + 1064, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1062, + 1026.5, + 68, + 47 + ], + "icon": [ + 1087, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1066.922, + 1030.5, + 58.156, + 20 + ], + "labelBox": [ + 1064, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1062, + 1026.5, + 68, + 47 + ], + "icon": [ + 1087, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1066.922, + 1030.5, + 58.156, + 20 + ], + "labelBox": [ + 1064, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "RECTA..." + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · POLYGON", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1130, + 1026.5, + 68, + 47 + ], + "icon": [ + 1155, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1132, + 1030.5, + 66.891, + 20 + ], + "labelBox": [ + 1132, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1130, + 1026.5, + 68, + 47 + ], + "icon": [ + 1155, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1132, + 1030.5, + 66.891, + 20 + ], + "labelBox": [ + 1132, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1130, + 1026.5, + 68, + 47 + ], + "icon": [ + 1155, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1132, + 1030.5, + 66.891, + 20 + ], + "labelBox": [ + 1132, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "POLYGON" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · POINT", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1198, + 1026.5, + 68, + 47 + ], + "icon": [ + 1223, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1209.656, + 1030.5, + 44.672, + 20 + ], + "labelBox": [ + 1200, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1198, + 1026.5, + 68, + 47 + ], + "icon": [ + 1223, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1209.656, + 1030.5, + 44.672, + 20 + ], + "labelBox": [ + 1200, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1198, + 1026.5, + 68, + 47 + ], + "icon": [ + 1223, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1209.656, + 1030.5, + 44.672, + 20 + ], + "labelBox": [ + 1200, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "POINT" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · HATCH", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1266, + 1026.5, + 68, + 47 + ], + "icon": [ + 1291, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1276.125, + 1030.5, + 47.734, + 20 + ], + "labelBox": [ + 1268, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1266, + 1026.5, + 68, + 47 + ], + "icon": [ + 1291, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1276.125, + 1030.5, + 47.734, + 20 + ], + "labelBox": [ + 1268, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1266, + 1026.5, + 68, + 47 + ], + "icon": [ + 1291, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1276.125, + 1030.5, + 47.734, + 20 + ], + "labelBox": [ + 1268, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "HATCH" + }, + { + "name": "sw-footer--full-footer · footer0 · 도형 · WIPEOUT", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1334, + 1026.5, + 68, + 47 + ], + "icon": [ + 1360, + 1053.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1336, + 1030.5, + 66.297, + 20 + ], + "labelBox": [ + 1336, + 1032.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1334, + 1026.5, + 68, + 47 + ], + "icon": [ + 1360, + 1053.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1336, + 1030.5, + 66.297, + 20 + ], + "labelBox": [ + 1336, + 1032.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1334, + 1026.5, + 68, + 47 + ], + "icon": [ + 1360, + 1053.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1336, + 1030.5, + 66.297, + 20 + ], + "labelBox": [ + 1336, + 1032.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "WIPEOUT" + }, + { + "name": "sw-footer--full-footer · footer0 · 수정 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 722, + 1026.5, + 68, + 47 + ], + "icon": [ + 747, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 732.891, + 1030.5, + 46.219, + 20 + ], + "labelBox": [ + 724, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 722, + 1026.5, + 68, + 47 + ], + "icon": [ + 747, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 732.891, + 1030.5, + 46.219, + 20 + ], + "labelBox": [ + 724, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 722, + 1026.5, + 68, + 47 + ], + "icon": [ + 747, + 1052.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 732.891, + 1030.5, + 46.219, + 20 + ], + "labelBox": [ + 724, + 1032.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도형 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 수정 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 편집 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 문자 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 레이어 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 블록 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 뷰 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 선택/조회 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 도로/횡단 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 307, + 68, + 47 + ], + "icon": [ + 781, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 311, + 30, + 20 + ], + "labelBox": [ + 758, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 307, + 68, + 47 + ], + "icon": [ + 849, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 311, + 39.422, + 20 + ], + "labelBox": [ + 826, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 307, + 68, + 47 + ], + "icon": [ + 917, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 311, + 22.578, + 20 + ], + "labelBox": [ + 894, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 307, + 68, + 47 + ], + "icon": [ + 985, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 311, + 40.25, + 20 + ], + "labelBox": [ + 962, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1028, + 307, + 68, + 47 + ], + "icon": [ + 1053, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1038.547, + 311, + 46.891, + 20 + ], + "labelBox": [ + 1030, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1096, + 307, + 68, + 47 + ], + "icon": [ + 1121, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1107.828, + 311, + 44.344, + 20 + ], + "labelBox": [ + 1098, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1164, + 307, + 68, + 47 + ], + "icon": [ + 1189, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1182.781, + 311, + 30.438, + 20 + ], + "labelBox": [ + 1166, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1232, + 307, + 68, + 47 + ], + "icon": [ + 1257, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1247.297, + 311, + 37.406, + 20 + ], + "labelBox": [ + 1234, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer0 · 구조/배근 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1300, + 307, + 68, + 47 + ], + "icon": [ + 1325, + 333, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1313.344, + 311, + 41.297, + 20 + ], + "labelBox": [ + 1302, + 313, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer1 · 도형 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 수정 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 편집 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 문자 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 레이어 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 블록 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 뷰 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 선택/조회 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 도로/횡단 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer1 · 구조/배근 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 508, + 68, + 47 + ], + "icon": [ + 781, + 534, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 766.891, + 512, + 46.219, + 20 + ], + "labelBox": [ + 758, + 514, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 379, + 938, + 30, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 379, + 938, + 30, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 379, + 938, + 30, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 428, + 934, + 68, + 47 + ], + "icon": [ + 453, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 442.281, + 938, + 39.422, + 20 + ], + "labelBox": [ + 430, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 428, + 934, + 68, + 47 + ], + "icon": [ + 453, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 442.281, + 938, + 39.422, + 20 + ], + "labelBox": [ + 430, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 428, + 934, + 68, + 47 + ], + "icon": [ + 453, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 442.281, + 938, + 39.422, + 20 + ], + "labelBox": [ + 430, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 496, + 934, + 68, + 47 + ], + "icon": [ + 521, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 518.703, + 938, + 22.578, + 20 + ], + "labelBox": [ + 498, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 496, + 934, + 68, + 47 + ], + "icon": [ + 521, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 518.703, + 938, + 22.578, + 20 + ], + "labelBox": [ + 498, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 496, + 934, + 68, + 47 + ], + "icon": [ + 521, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 518.703, + 938, + 22.578, + 20 + ], + "labelBox": [ + 498, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 564, + 934, + 68, + 47 + ], + "icon": [ + 589, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 577.875, + 938, + 40.25, + 20 + ], + "labelBox": [ + 566, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 564, + 934, + 68, + 47 + ], + "icon": [ + 589, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 577.875, + 938, + 40.25, + 20 + ], + "labelBox": [ + 566, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 564, + 934, + 68, + 47 + ], + "icon": [ + 589, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 577.875, + 938, + 40.25, + 20 + ], + "labelBox": [ + 566, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Ellipse", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 632, + 934, + 68, + 47 + ], + "icon": [ + 657, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 642.547, + 938, + 46.891, + 20 + ], + "labelBox": [ + 634, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 632, + 934, + 68, + 47 + ], + "icon": [ + 657, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 642.547, + 938, + 46.891, + 20 + ], + "labelBox": [ + 634, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 632, + 934, + 68, + 47 + ], + "icon": [ + 657, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 642.547, + 938, + 46.891, + 20 + ], + "labelBox": [ + 634, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Ellipse" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Rect...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 700, + 934, + 68, + 47 + ], + "icon": [ + 725, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 711.828, + 938, + 44.344, + 20 + ], + "labelBox": [ + 702, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 700, + 934, + 68, + 47 + ], + "icon": [ + 725, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 711.828, + 938, + 44.344, + 20 + ], + "labelBox": [ + 702, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 700, + 934, + 68, + 47 + ], + "icon": [ + 725, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 711.828, + 938, + 44.344, + 20 + ], + "labelBox": [ + 702, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rect..." + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Poly", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 768, + 934, + 68, + 47 + ], + "icon": [ + 793, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 786.781, + 938, + 30.438, + 20 + ], + "labelBox": [ + 770, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 768, + 934, + 68, + 47 + ], + "icon": [ + 793, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 786.781, + 938, + 30.438, + 20 + ], + "labelBox": [ + 770, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 768, + 934, + 68, + 47 + ], + "icon": [ + 793, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 786.781, + 938, + 30.438, + 20 + ], + "labelBox": [ + 770, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Poly" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Point", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 836, + 934, + 68, + 47 + ], + "icon": [ + 861, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 851.297, + 938, + 37.406, + 20 + ], + "labelBox": [ + 838, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 836, + 934, + 68, + 47 + ], + "icon": [ + 861, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 851.297, + 938, + 37.406, + 20 + ], + "labelBox": [ + 838, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 836, + 934, + 68, + 47 + ], + "icon": [ + 861, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 851.297, + 938, + 37.406, + 20 + ], + "labelBox": [ + 838, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Point" + }, + { + "name": "sw-footer--tool-groups · footer3 · 도형 · Hatch", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 904, + 934, + 68, + 47 + ], + "icon": [ + 929, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 917.344, + 938, + 41.297, + 20 + ], + "labelBox": [ + 906, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 904, + 934, + 68, + 47 + ], + "icon": [ + 929, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 917.344, + 938, + 41.297, + 20 + ], + "labelBox": [ + 906, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 904, + 934, + 68, + 47 + ], + "icon": [ + 929, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 917.344, + 938, + 41.297, + 20 + ], + "labelBox": [ + 906, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Hatch" + }, + { + "name": "sw-footer--tool-groups · footer3 · 수정 · NCopy", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 370.891, + 938, + 46.219, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 370.891, + 938, + 46.219, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 360, + 934, + 68, + 47 + ], + "icon": [ + 385, + 960, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 370.891, + 938, + 46.219, + 20 + ], + "labelBox": [ + 362, + 940, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "NCopy" + }, + { + "name": "sw-footer--custom-content · footer0 · 측량 · Move", + "ok": true, + "moved": {}, + "colorChanged": false, + "iconSwap": false, + "default": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 782, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 771.516, + 378.5, + 36.953, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 782, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 771.516, + 378.5, + 36.953, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 782, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 771.516, + 378.5, + 36.953, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Move" + }, + { + "name": "sw-footer--custom-content · footer0 · 측량 · Rotate", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 850, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 835.219, + 378.5, + 45.547, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 850, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 835.219, + 378.5, + 45.547, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 850, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 835.219, + 378.5, + 45.547, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Rotate" + }, + { + "name": "sw-footer--custom-content · footer0 · 측량 · Trim", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 918, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 909.938, + 378.5, + 32.109, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 918, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 909.938, + 378.5, + 32.109, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 918, + 401.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 909.938, + 378.5, + 32.109, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Trim" + }, + { + "name": "sw-footer--custom-content · footer0 · 그리기 · Line", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 781, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 378.5, + 30, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 781, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 378.5, + 30, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 756, + 374.5, + 68, + 47 + ], + "icon": [ + 781, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 775, + 378.5, + 30, + 20 + ], + "labelBox": [ + 758, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Line" + }, + { + "name": "sw-footer--custom-content · footer0 · 그리기 · PLine", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 849, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 378.5, + 39.422, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 849, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 378.5, + 39.422, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 824, + 374.5, + 68, + 47 + ], + "icon": [ + 849, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 838.281, + 378.5, + 39.422, + 20 + ], + "labelBox": [ + 826, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "PLine" + }, + { + "name": "sw-footer--custom-content · footer0 · 그리기 · Arc", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 917, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 378.5, + 22.578, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 917, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 378.5, + 22.578, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 892, + 374.5, + 68, + 47 + ], + "icon": [ + 917, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 914.703, + 378.5, + 22.578, + 20 + ], + "labelBox": [ + 894, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Arc" + }, + { + "name": "sw-footer--custom-content · footer0 · 그리기 · Circle", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 960, + 374.5, + 68, + 47 + ], + "icon": [ + 985, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 378.5, + 40.25, + 20 + ], + "labelBox": [ + 962, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 960, + 374.5, + 68, + 47 + ], + "icon": [ + 985, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 378.5, + 40.25, + 20 + ], + "labelBox": [ + 962, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 960, + 374.5, + 68, + 47 + ], + "icon": [ + 985, + 400.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 973.875, + 378.5, + 40.25, + 20 + ], + "labelBox": [ + 962, + 380.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "Circle" + }, + { + "name": "sw-footer--responsive · ▲ panel · CIRCLE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 873, + 689.5, + 68, + 47 + ], + "icon": [ + 898, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 881.953, + 693.5, + 50.078, + 20 + ], + "labelBox": [ + 875, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 873, + 689.5, + 68, + 47 + ], + "icon": [ + 898, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 881.953, + 693.5, + 50.078, + 20 + ], + "labelBox": [ + 875, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 873, + 689.5, + 68, + 47 + ], + "icon": [ + 898, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 881.953, + 693.5, + 50.078, + 20 + ], + "labelBox": [ + 875, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "CIRCLE" + }, + { + "name": "sw-footer--responsive · ▲ panel · ELLIPSE", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 941, + 689.5, + 68, + 47 + ], + "icon": [ + 966, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 946.625, + 693.5, + 56.734, + 20 + ], + "labelBox": [ + 943, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 941, + 689.5, + 68, + 47 + ], + "icon": [ + 966, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 946.625, + 693.5, + 56.734, + 20 + ], + "labelBox": [ + 943, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 941, + 689.5, + 68, + 47 + ], + "icon": [ + 966, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 946.625, + 693.5, + 56.734, + 20 + ], + "labelBox": [ + 943, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "ELLIPSE" + }, + { + "name": "sw-footer--responsive · ▲ panel · RECTA...", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1009, + 689.5, + 68, + 47 + ], + "icon": [ + 1034, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1013.922, + 693.5, + 58.156, + 20 + ], + "labelBox": [ + 1011, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1009, + 689.5, + 68, + 47 + ], + "icon": [ + 1034, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1013.922, + 693.5, + 58.156, + 20 + ], + "labelBox": [ + 1011, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1009, + 689.5, + 68, + 47 + ], + "icon": [ + 1034, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 1013.922, + 693.5, + 58.156, + 20 + ], + "labelBox": [ + 1011, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "RECTA..." + }, + { + "name": "sw-footer--responsive · ▲ panel · POLYGON", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": true, + "default": { + "box": [ + 1077, + 689.5, + 68, + 47 + ], + "icon": [ + 1102, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23D4CBBD'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1079, + 693.5, + 66.891, + 20 + ], + "labelBox": [ + 1079, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1077, + 689.5, + 68, + 47 + ], + "icon": [ + 1102, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1079, + 693.5, + 66.891, + 20 + ], + "labelBox": [ + 1079, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1077, + 689.5, + 68, + 47 + ], + "icon": [ + 1102, + 715.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "stroke='%23FF5C00'/%3e%3c/g%3e%3c/svg%3e", + "text": [ + 1079, + 693.5, + 66.891, + 20 + ], + "labelBox": [ + 1079, + 695.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "POLYGON" + }, + { + "name": "sw-footer--responsive · ▲ panel · POINT", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 873, + 736.5, + 68, + 47 + ], + "icon": [ + 898, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 884.656, + 740.5, + 44.672, + 20 + ], + "labelBox": [ + 875, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 873, + 736.5, + 68, + 47 + ], + "icon": [ + 898, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 884.656, + 740.5, + 44.672, + 20 + ], + "labelBox": [ + 875, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 873, + 736.5, + 68, + 47 + ], + "icon": [ + 898, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "city='0.3'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", + "text": [ + 884.656, + 740.5, + 44.672, + 20 + ], + "labelBox": [ + 875, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "POINT" + }, + { + "name": "sw-footer--responsive · ▲ panel · HATCH", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 941, + 736.5, + 68, + 47 + ], + "icon": [ + 966, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 951.125, + 740.5, + 47.734, + 20 + ], + "labelBox": [ + 943, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 941, + 736.5, + 68, + 47 + ], + "icon": [ + 966, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 951.125, + 740.5, + 47.734, + 20 + ], + "labelBox": [ + 943, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 941, + 736.5, + 68, + 47 + ], + "icon": [ + 966, + 762.5, + 18, + 18 + ], + "iconCount": 1, + "iconSrc": "-rule='evenodd'/%3e%3c/defs%3e%3c/svg%3e", + "text": [ + 951.125, + 740.5, + 47.734, + 20 + ], + "labelBox": [ + 943, + 742.5, + 64, + 16 + ], + "gap": 2, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "HATCH" + }, + { + "name": "sw-footer--responsive · ▲ panel · WIPEOUT", + "ok": true, + "moved": {}, + "colorChanged": true, + "iconSwap": false, + "default": { + "box": [ + 1009, + 736.5, + 68, + 47 + ], + "icon": [ + 1035, + 763.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1011, + 740.5, + 66.297, + 20 + ], + "labelBox": [ + 1011, + 742.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(246, 244, 242)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "hover": { + "box": [ + 1009, + 736.5, + 68, + 47 + ], + "icon": [ + 1035, + 763.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1011, + 740.5, + 66.297, + 20 + ], + "labelBox": [ + 1011, + 742.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "active": { + "box": [ + 1009, + 736.5, + 68, + 47 + ], + "icon": [ + 1035, + 763.5, + 16, + 16 + ], + "iconCount": 1, + "iconSrc": "svg", + "text": [ + 1011, + 740.5, + 66.297, + 20 + ], + "labelBox": [ + 1011, + 742.5, + 64, + 16 + ], + "gap": 3, + "font": "\"Noto Sans KR\"|14px|400|16px|0.56px", + "color": "rgb(255, 92, 0)", + "iconTransform": "matrix(1, 0, 0, 1, -9, 0)" + }, + "label": "WIPEOUT" + } + ], + "footerLabels": [ + "LINE", + "PLINE", + "ARC", + "CIRCLE", + "ELLIPSE", + "RECTA...", + "POLYGON", + "POINT", + "HATCH", + "WIPEOUT", + "NCopy", + "Line", + "PLine", + "Arc", + "Circle", + "Ellipse", + "Rect...", + "Poly", + "Point", + "Hatch", + "Move", + "Rotate", + "Trim" + ], + "ellipsis": { + "POLYGON": { + "rest": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + }, + "hover": { + "text": "POLYGON", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 67, + "size": "14px", + "title": "POLYGON", + "w": 68, + "h": 47 + } + }, + "WIPEOUT": { + "rest": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "WIPEOUT", + "overflow": "ellipsis", + "cut": true, + "client": 64, + "scroll": 66, + "size": "14px", + "title": "WIPEOUT", + "w": 68, + "h": 47 + } + }, + "ELLIPSE": { + "rest": { + "text": "ELLIPSE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "ELLIPSE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + } + }, + "LINE": { + "rest": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + }, + "hover": { + "text": "LINE", + "overflow": "ellipsis", + "cut": false, + "client": 64, + "scroll": 64, + "size": "14px", + "title": null, + "w": 68, + "h": 47 + } + } + }, + "explicitTitles": [ + [ + "POLYGON", + "POLYGON" + ], + [ + "WIPEOUT", + "WIPEOUT" + ] + ] + } +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/chromium/recent-files.png b/docs/sw/sw-noto-bold-qa/chromium/recent-files.png new file mode 100644 index 0000000..7161c9e Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/chromium/recent-files.png differ diff --git a/docs/sw/sw-noto-bold-qa/chromium/styles.json b/docs/sw/sw-noto-bold-qa/chromium/styles.json new file mode 100644 index 0000000..396cdab --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/chromium/styles.json @@ -0,0 +1,149 @@ +{ + "sw-header--overview": { + ".hm-sw-header__document-name": { + "\"Noto Sans KR\" | 14px | 700 | rgb(240, 247, 245) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(240, 247, 245)": [ + "Sample-Drawing-01. " + ] + }, + ".hm-sw-header__field-value": { + "\"Noto Sans KR\" | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "0_Layer_Cludmark ", + "255,229,0 " + ] + }, + ".hm-sw-header__field-label": { + "\"Noto Sans KR\" | 12px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "레이어 ", + "색상 " + ] + } + }, + "sw-header--composed-controls": { + ".hm-sw-header__document-name": {}, + ".hm-sw-header__field-value": { + "\"Noto Sans KR\" | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "0 ", + "255,229,0 ", + "Continuous ", + "0.25 " + ] + }, + ".hm-sw-header__field-label": { + "\"Noto Sans KR\" | 12px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "레이어 ", + "색상 ", + "선스타일 ", + "가중치 " + ] + }, + ".hm-sw-header__font-name": { + "\"Noto Sans KR\" | 16px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "Arial " + ] + } + }, + "sw-footer--full-footer": { + ".hm-sw-footer-side__title": { + "\"Noto Sans KR\" | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "보조기능 ", + "명령어 " + ] + }, + ".hm-sw-footer-side__subtitle": { + "\"Noto Sans KR\" | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "전체보기 ", + "전체보기 " + ] + }, + ".hm-sw-footer-menu__tab": { + "\"Noto Sans KR\" | 14px | 700 | rgb(255, 92, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 92, 0)": [ + "도형 " + ], + "\"Noto Sans KR\" | 14px | 700 | rgb(212, 203, 189) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(212, 203, 189)": [ + "수정 ", + "편집 ", + "문자 ", + "치수/연산 " + ] + }, + ".hm-sw-footer-tab__label, .hm-sw-footer-tab__select": { + "\"Noto Sans KR\" | 12px | 400 | rgb(22, 20, 16) | none | 0px rgb(22, 20, 16)": [ + "Layout 02 ", + "Layout 02 ", + "Layout 01 ", + "Layout 01 " + ] + }, + ".hm-sw-footer-aux__label": { + "\"Noto Sans KR\" | 13px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "객체스냅 ", + "직각교차 ", + "선가중치 ", + "격자스냅 " + ], + "\"Noto Sans KR\" | 13px | 400 | rgb(255, 92, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 92, 0)": [ + "격자배경 ", + "객체스냅추적 " + ] + }, + ".hm-sw-footer-tool__label": { + "\"Noto Sans KR\" | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "LINE ", + "PLINE ", + "ARC ", + "CIRCLE " + ] + } + }, + "sw-viewer--viewer-header": { + ".hm-sw-viewer-header__brand-mark": {}, + ".hm-sw-viewer-header__document-name": { + "\"Noto Sans KR\" | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "C0060202-001-평면및종단 " + ] + }, + ".hm-sw-viewer-header__label": { + "\"Noto Sans KR\" | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "파일 열기 ", + "샘플 ", + "전체 보기 ", + "레이어 " + ] + }, + ".hm-sw-viewer-header__tab": { + "\"Noto Sans KR\" | 14px | 700 | rgb(255, 198, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 198, 0)": [ + "Model17,377 " + ], + "\"Noto Sans KR\" | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "Layout237 " + ] + }, + ".hm-sw-viewer-header__count": { + "\"Noto Sans KR\" | 11px | 400 | rgb(255, 198, 0) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(255, 198, 0)": [ + "17,377 " + ], + "\"Noto Sans KR\" | 11px | 400 | rgb(255, 255, 255) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(255, 255, 255)": [ + "237 " + ] + } + }, + "sw-header--home-menu": { + ".hm-sw-recent-files__name": { + "\"Noto Sans KR\" | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "001-연결종합 계획평면도2222 ", + "03.암발파공법적용도_231011 ", + "1.배수공-일반사항_231004. ", + "00.시공상세도 분석 및 목차_2 " + ] + }, + ".hm-sw-recent-files__path": { + "\"Noto Sans KR\" | 12px | 700 | rgb(212, 203, 189) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(212, 203, 189)": [ + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 " + ] + }, + ".hm-sw-recent-files [class*=\"preview\"] *": {} + } +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/chromium/sweep-viewer500.json b/docs/sw/sw-noto-bold-qa/chromium/sweep-viewer500.json new file mode 100644 index 0000000..afe3fe7 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/chromium/sweep-viewer500.json @@ -0,0 +1,2892 @@ +{ + "viewer": [ + { + "w": 375, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 380, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 385, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 390, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 395, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 400, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 405, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 410, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 415, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 420, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 425, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 430, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 435, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 440, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 445, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 450, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 455, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 460, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 465, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 470, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 475, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 480, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 485, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 490, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 495, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 500, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 505, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 510, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 515, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 520, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 525, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 530, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 535, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 540, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 545, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 550, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 555, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 560, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 565, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 99.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 570, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 101, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 575, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 102.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 580, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 103.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 585, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 104.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 590, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 106, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 595, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 600, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 108.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 605, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 109.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 610, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 111, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 615, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 112.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 620, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 113.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 625, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 114.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 630, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 116, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 635, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 117.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 640, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 118.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 645, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 119.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 650, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 121, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 655, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 122.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 660, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 123.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 665, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 124.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 670, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 126, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 675, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 127.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 680, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 128.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 685, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 129.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 690, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 131, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 695, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 132.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 700, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 133.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 705, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 134.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 710, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 136, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 715, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 137.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 720, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 138.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 725, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 139.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 730, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 141, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 735, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 142.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 740, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 143.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 745, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 144.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 750, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 146, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 755, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 147.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 760, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 148.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 765, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 149.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 770, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 151, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 775, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 152.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 780, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 153.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 785, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 154.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 790, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 156, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 795, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 157.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 800, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 158.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 805, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 159.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 810, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 161, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 815, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 162.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 820, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 163.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 825, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 164.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 830, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 166, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 835, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 167.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 840, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 168.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 845, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 169.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 850, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 171, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 855, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 172.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 860, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 173.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 865, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 174.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 870, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 176, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 875, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 177.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 880, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 178.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 885, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 179.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 890, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 181, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 895, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 182.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 900, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 183.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 905, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 184.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 910, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 915, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 187.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 920, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 188.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 925, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 189.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 930, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 935, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 192.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 940, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 193.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 945, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 194.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 950, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 955, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 197.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 960, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 198.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 965, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 199.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 970, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 975, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 202.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 980, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 203.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 985, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 204.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 990, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 995, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 207.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1000, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 208.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1005, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 209.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1010, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1015, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 212.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1020, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 213.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1025, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 214.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1030, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1035, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 217.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1040, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 218.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1045, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 219.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1050, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1055, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1060, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1065, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1070, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1075, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1080, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1085, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1090, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1095, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1100, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1105, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1110, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1115, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1120, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1125, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1130, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1135, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1140, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1145, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1150, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1155, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1160, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1165, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1170, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1175, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1180, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 139.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1185, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 88.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1190, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 93.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1195, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 98.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1200, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 103.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1205, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 108.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1210, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 113.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1215, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 118.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1220, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 123.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1225, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 128.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1230, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 133.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1235, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 138.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1240, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 143.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1245, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 148.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1250, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 153.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1255, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 158.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1260, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 163.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1265, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 168.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1270, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 173.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1275, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 178.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1280, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 183.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1285, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 188.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1290, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 193.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1295, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 198.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1300, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 203.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1305, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 208.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1310, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 213.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1315, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 218.7, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1320, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1325, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1330, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1335, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1340, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1345, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1350, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1355, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1360, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1365, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1370, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1375, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1380, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1385, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1390, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1395, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1400, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1405, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1410, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1415, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1420, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1425, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1430, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1435, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1440, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1445, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1450, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1455, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1460, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1465, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1470, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1475, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1480, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1485, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1490, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1495, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1500, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1505, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1510, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1515, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1520, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1525, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1530, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1535, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1540, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1545, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1550, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1555, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1560, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1565, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1570, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1575, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1580, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1585, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1590, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1595, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1600, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1605, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1610, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1615, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1620, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1625, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1630, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1635, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1640, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1645, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1650, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1655, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1660, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1665, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1670, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1675, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1680, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1685, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1690, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1695, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1700, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1705, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1710, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1715, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1720, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1725, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1730, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1735, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1740, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1745, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1750, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1755, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1760, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1765, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1770, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1775, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1780, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1785, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1790, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1795, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1800, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1805, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1810, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1815, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1820, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1825, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1830, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1835, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1840, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1845, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1850, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1855, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1860, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1865, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1870, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1875, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1880, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1885, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1890, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1895, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1900, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1905, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1910, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1915, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1920, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221.7, + "docCut": false, + "more": false, + "scroll": false + } + ], + "footer": { + "sw-footer--full-footer": [ + { + "w": 1920, + "viewport": [ + 1389, + 727.3 + ], + "scroll": [ + 727, + 727 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + } + ], + "sw-footer--responsive": [ + { + "w": 1920, + "viewport": [ + 1389, + 727.3 + ], + "scroll": [ + 727, + 727 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 1440, + "viewport": [ + 1181, + 487 + ], + "scroll": [ + 727, + 487 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 1280, + "viewport": [ + 1157, + 351 + ], + "scroll": [ + 727, + 351 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 950, + "viewport": [ + 895, + 283 + ], + "scroll": [ + 727, + 283 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 860, + "viewport": [ + 873, + 215 + ], + "scroll": [ + 727, + 215 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 760, + "viewport": [ + 909, + 79 + ], + "scroll": [ + 727, + 79 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + } + ] + }, + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/chromium/sweep.json b/docs/sw/sw-noto-bold-qa/chromium/sweep.json new file mode 100644 index 0000000..6d2e824 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/chromium/sweep.json @@ -0,0 +1,2892 @@ +{ + "viewer": [ + { + "w": 375, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 380, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 385, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 390, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 395, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 400, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 405, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 410, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 415, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 420, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 425, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 430, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 435, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 440, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 445, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 450, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 455, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 460, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 465, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 470, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 475, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 480, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 485, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 490, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 495, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 500, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 505, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 510, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 515, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 520, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 525, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 530, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 535, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 540, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 545, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 550, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 555, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 560, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 565, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 99.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 570, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 101, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 575, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 102.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 580, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 103.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 585, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 104.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 590, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 106, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 595, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 600, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 108.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 605, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 109.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 610, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 111, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 615, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 112.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 620, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 113.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 625, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 114.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 630, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 116, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 635, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 117.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 640, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 118.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 645, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 119.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 650, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 121, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 655, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 122.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 660, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 123.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 665, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 124.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 670, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 126, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 675, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 127.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 680, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 128.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 685, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 129.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 690, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 131, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 695, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 132.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 700, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 133.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 705, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 134.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 710, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 136, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 715, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 137.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 720, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 138.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 725, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 139.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 730, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 141, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 735, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 142.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 740, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 143.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 745, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 144.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 750, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 146, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 755, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 147.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 760, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 148.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 765, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 149.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 770, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 151, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 775, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 152.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 780, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 153.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 785, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 154.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 790, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 156, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 795, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 157.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 800, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 158.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 805, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 159.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 810, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 161, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 815, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 162.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 820, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 163.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 825, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 164.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 830, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 166, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 835, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 167.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 840, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 168.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 845, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 169.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 850, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 171, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 855, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 172.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 860, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 173.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 865, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 174.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 870, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 176, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 875, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 177.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 880, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 178.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 885, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 179.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 890, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 181, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 895, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 182.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 900, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 183.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 905, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 184.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 910, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 915, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 187.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 920, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 188.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 925, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 189.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 930, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 935, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 192.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 940, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 193.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 945, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 194.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 950, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 955, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 197.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 960, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 198.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 965, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 199.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 970, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 975, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 202.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 980, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 203.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 985, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 204.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 990, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 995, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 207.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1000, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 208.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1005, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 209.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1010, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1015, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 212.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1020, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 213.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1025, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 214.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1030, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1035, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 217.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1040, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 218.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1045, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 219.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1050, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1055, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 222.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1060, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 223.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1065, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 224.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1070, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1075, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1080, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1085, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1090, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1095, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1100, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1105, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1110, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1115, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1120, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1125, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1130, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1135, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1140, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1145, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1150, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1155, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1160, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1165, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1170, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1175, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1180, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 136.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1185, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 85.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1190, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 90.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1195, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 95.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1200, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 100.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1205, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 105.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1210, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 110.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1215, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 115.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1220, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 120.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1225, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 125.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1230, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 130.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1235, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 135.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1240, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 140.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1245, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 145.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1250, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 150.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1255, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 155.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1260, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 160.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1265, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 165.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1270, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 170.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1275, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 175.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1280, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 180.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1285, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 185.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1290, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 190.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1295, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 195.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1300, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 200.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1305, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 205.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1310, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 210.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1315, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 215.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1320, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 220.9, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1325, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 225.9, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1330, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1335, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1340, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1345, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1350, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1355, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1360, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1365, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1370, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1375, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1380, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1385, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1390, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1395, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1400, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1405, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1410, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1415, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1420, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1425, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1430, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1435, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1440, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1445, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1450, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1455, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1460, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1465, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1470, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1475, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1480, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1485, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1490, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1495, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1500, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1505, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1510, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1515, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1520, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1525, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1530, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1535, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1540, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1545, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1550, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1555, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1560, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1565, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1570, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1575, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1580, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1585, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1590, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1595, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1600, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1605, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1610, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1615, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1620, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1625, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1630, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1635, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1640, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1645, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1650, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1655, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1660, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1665, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1670, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1675, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1680, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1685, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1690, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1695, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1700, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1705, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1710, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1715, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1720, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1725, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1730, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1735, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1740, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1745, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1750, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1755, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1760, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1765, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1770, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1775, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1780, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1785, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1790, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1795, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1800, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1805, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1810, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1815, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1820, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1825, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1830, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1835, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1840, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1845, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1850, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1855, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1860, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1865, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1870, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1875, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1880, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1885, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1890, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1895, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1900, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1905, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1910, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1915, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1920, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226.3, + "docCut": false, + "more": false, + "scroll": false + } + ], + "footer": { + "sw-footer--full-footer": [ + { + "w": 1920, + "viewport": [ + 1389, + 727.3 + ], + "scroll": [ + 727, + 727 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + } + ], + "sw-footer--responsive": [ + { + "w": 1920, + "viewport": [ + 1389, + 727.3 + ], + "scroll": [ + 727, + 727 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 1440, + "viewport": [ + 1181, + 487 + ], + "scroll": [ + 727, + 487 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 1280, + "viewport": [ + 1157, + 351 + ], + "scroll": [ + 727, + 351 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 950, + "viewport": [ + 895, + 283 + ], + "scroll": [ + 727, + 283 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 860, + "viewport": [ + 873, + 215 + ], + "scroll": [ + 727, + 215 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + }, + { + "w": 760, + "viewport": [ + 909, + 79 + ], + "scroll": [ + 727, + 79 + ], + "tabs": "도형:44.6/28.6 수정:44.6/28.6 편집:44.6/28.6 문자:44.6/28.6 치수/연산:80/64 블록:44.6/28.6 레이어:58.8/42.8 뷰:43/14.3 선택/조회:80/64 모델링:58.8/42.8 선형/횡단:80/64 구조/배근:80/64", + "side": "보조기능:53.8/74 명령어:40.3/74" + } + ] + }, + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/chromium/text-weight.json b/docs/sw/sw-noto-bold-qa/chromium/text-weight.json new file mode 100644 index 0000000..00e6af4 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/chromium/text-weight.json @@ -0,0 +1,2999 @@ +{ + "checks": [ + { + "n": "Header sw-header--overview: file name Noto Sans KR 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "Sample-Drawing-01.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 187.97, + "boxW": 130, + "cut": true + } + ] + }, + { + "n": "Header sw-header--overview: SWHeader field values stay Regular (400)", + "ok": true, + "d": [] + }, + { + "n": "Header sw-header--document-open: file name Noto Sans KR 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "C0020101-006-평면및종단면도(06)", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 239.58, + "boxW": 270, + "cut": false + }, + { + "text": "Open", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 40.27, + "boxW": 40.27, + "cut": false + }, + { + "text": "C0020101-006-평면및종단면도(06)", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 239.58, + "boxW": 202.73, + "cut": true + } + ] + }, + { + "n": "Header sw-header--document-open: SWHeader field values stay Regular (400)", + "ok": true, + "d": [] + }, + { + "n": "Header sw-header--interactive-states: file name Noto Sans KR 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "C0020101-006-평면및종단면도(06)", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 239.58, + "boxW": 270, + "cut": false + }, + { + "text": "C0020101-006-평면및종단면도(06)", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(240, 247, 245)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 239.58, + "boxW": 270, + "cut": false + }, + { + "text": "C0020101-006-평면및종단면도(06)", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 239.58, + "boxW": 270, + "cut": false + } + ] + }, + { + "n": "Header sw-header--interactive-states: SWHeader field values stay Regular (400)", + "ok": true, + "d": [] + }, + { + "n": "Header file name: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "430,288.25,187.97,20,430,288.25,130,20", + "h": "430,288.25,187.97,20,430,288.25,130,20", + "d2": "430,288.25,187.97,20,430,288.25,130,20", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Header More: values shown with the More menu open stay 400 (none turn Bold)", + "ok": true, + "d": [] + }, + { + "n": "Composed Controls: every field value Noto Sans KR 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "0", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 8.83, + "boxW": 34.84, + "cut": false + }, + { + "text": "255,229,0", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 71.97, + "boxW": 71.97, + "cut": false + }, + { + "text": "Continuous", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 85.19, + "boxW": 85.19, + "cut": false + }, + { + "text": "0.25", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 31.58, + "boxW": 38, + "cut": false + }, + { + "text": "1.0000", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 49.22, + "boxW": 38, + "cut": true + }, + { + "text": "Standard", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.63, + "boxW": 67.63, + "cut": false + }, + { + "text": "Standard", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.63, + "boxW": 67.63, + "cut": false + } + ] + }, + { + "n": "Composed Controls: field labels stay 12px 400", + "ok": true, + "d": [ + { + "text": "레이어", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 33.84, + "boxW": 34.84, + "cut": false + }, + { + "text": "색상", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 22.56, + "boxW": 71.97, + "cut": false + }, + { + "text": "선스타일", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 45.13, + "boxW": 85.19, + "cut": false + }, + { + "text": "가중치", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 33.84, + "boxW": 38, + "cut": false + }, + { + "text": "스케일", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 33.84, + "boxW": 38, + "cut": false + }, + { + "text": "문자스타일", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 56.41, + "boxW": 67.63, + "cut": false + }, + { + "text": "치수스타일", + "weight": "400", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 56.41, + "boxW": 67.63, + "cut": false + } + ] + }, + { + "n": "Composed field layer: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "449,306.5,8.83,20,449,308.5,34.84,16", + "h": "449,306.5,8.83,20,449,308.5,34.84,16", + "d2": "449,306.5,8.83,20,449,308.5,34.84,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Composed field color: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "691,306.5,71.97,20,691,308.5,71.97,16", + "h": "691,306.5,71.97,20,691,308.5,71.97,16", + "d2": "691,306.5,71.97,20,691,308.5,71.97,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Composed field line-style: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "886.91,306.5,85.19,20,886.91,308.5,85.19,16", + "h": "886.91,306.5,85.19,20,886.91,308.5,85.19,16", + "d2": "886.91,306.5,85.19,20,886.91,308.5,85.19,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Composed field text-style: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "1153.81,306.5,67.63,20,1153.81,308.5,67.63,16", + "h": "1153.81,306.5,67.63,20,1153.81,308.5,67.63,16", + "d2": "1153.81,306.5,67.63,20,1153.81,308.5,67.63,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Composed field dimension-style: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "1342,306.5,67.63,20,1342,308.5,67.63,16", + "h": "1342,306.5,67.63,20,1342,308.5,67.63,16", + "d2": "1342,306.5,67.63,20,1342,308.5,67.63,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Footer 보조기능: title 700 (Default + Hover), 전체보기 keeps 400 + 1px outline", + "ok": true, + "d": { + "d": [ + "보조기능|700|14px|rgb(246, 244, 242)|rgb(0, 0, 0) 1.3px 0px 0px", + "전체보기|400|14px|rgb(246, 244, 242)|rgb(0, 0, 0) 1px 0px 0px" + ], + "h": [ + "보조기능|700|14px|rgb(255, 92, 0)|rgb(0, 0, 0) 1.3px 0px 0px", + "전체보기|400|14px|rgb(255, 92, 0)|rgb(0, 0, 0) 1px 0px 0px" + ] + } + }, + { + "n": "Footer side start title: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "370.11,1041.5,53.77,20,370.11,1043.5,53.77,16", + "h": "370.11,1041.5,53.77,20,370.11,1043.5,53.77,16", + "d2": "370.11,1041.5,53.77,20,370.11,1043.5,53.77,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Footer side start 전체보기: hover keeps the text place, size and weight (400)", + "ok": true, + "d": { + "d": "370.11,1059.5,53.77,20,370.11,1061.5,53.77,16", + "h": "370.11,1059.5,53.77,20,370.11,1061.5,53.77,16", + "d2": "370.11,1059.5,53.77,20,370.11,1061.5,53.77,16", + "w0": "400", + "w1": "400" + } + }, + { + "n": "Footer 명령어: title 700 (Default + Hover), 전체보기 keeps 400 + 1px outline", + "ok": true, + "d": { + "d": [ + "명령어|700|14px|rgb(246, 244, 242)|rgb(0, 0, 0) 1.3px 0px 0px", + "전체보기|400|14px|rgb(246, 244, 242)|rgb(0, 0, 0) 1px 0px 0px" + ], + "h": [ + "명령어|700|14px|rgb(255, 92, 0)|rgb(0, 0, 0) 1.3px 0px 0px", + "전체보기|400|14px|rgb(255, 92, 0)|rgb(0, 0, 0) 1px 0px 0px" + ] + } + }, + { + "n": "Footer side end title: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "1502.83,1042.5,40.33,20,1502.83,1044.5,40.33,16", + "h": "1502.83,1042.5,40.33,20,1502.83,1044.5,40.33,16", + "d2": "1502.83,1042.5,40.33,20,1502.83,1044.5,40.33,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Footer side end 전체보기: hover keeps the text place, size and weight (400)", + "ok": true, + "d": { + "d": "1496.11,1060.5,53.77,20,1496.11,1062.5,53.77,16", + "h": "1496.11,1060.5,53.77,20,1496.11,1062.5,53.77,16", + "d2": "1496.11,1060.5,53.77,20,1496.11,1062.5,53.77,16", + "w0": "400", + "w1": "400" + } + }, + { + "n": "Footer: every category tab (12) 14px 700 + 1.3px outline", + "ok": true, + "d": [] + }, + { + "n": "Footer tab 수정 (Default → Hover): hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "735.56,1075.5,28.56,20,727.56,1077.5,44.56,16", + "h": "735.56,1075.5,28.56,20,727.56,1077.5,44.56,16", + "d2": "735.56,1075.5,28.56,20,727.56,1077.5,44.56,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Footer tab 수정 selected: text place / size / weight inside the tab unchanged", + "ok": true, + "d": { + "before": "8,-2,28.56,44.56,16,700", + "after": "8,-2,28.56,44.56,16,700" + } + }, + { + "n": "Footer: 수정 pocket surface stays continuous under the Bold tab", + "ok": true, + "d": [ + "hm-sw-footer__group", + "hm-sw-footer__group", + "hm-sw-footer__group" + ] + }, + { + "n": "Footer: Model / Layout, command and auxiliary labels keep 400", + "ok": true, + "d": [] + }, + { + "n": "Footer: category row height unchanged (24px)", + "ok": true, + "d": { + "w": 727.3, + "h": 24, + "content": 727, + "steps": 0 + } + }, + { + "n": "Footer: ◀ ▶ only when the categories overflow their area", + "ok": true, + "d": { + "w": 727.3, + "h": 24, + "content": 727, + "steps": 0 + } + }, + { + "n": "Viewer: file name, 파일열기 · 샘플 · 전체보기 · 레이어 · 설정 · 속성, Model · Layout are 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "C0060202-001-평면및종단면도.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 226.31, + "boxW": 100.91, + "cut": true + }, + { + "text": "파일 열기", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 55.45, + "boxW": 55.45, + "cut": false + }, + { + "text": "샘플", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + }, + { + "text": "Model17,377", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 79.88, + "boxW": 97.88, + "cut": false + }, + { + "text": "Layout237", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 70.13, + "boxW": 88.13, + "cut": false + }, + { + "text": "전체 보기", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 55.45, + "boxW": 55.45, + "cut": false + }, + { + "text": "레이어", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.64, + "boxW": 38.64, + "cut": false + }, + { + "text": "설정", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + }, + { + "text": "속성", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + } + ] + }, + { + "n": "Viewer: tab counts keep 11px 400", + "ok": true, + "d": [ + { + "text": "17,377", + "weight": "400", + "size": "11px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 33.59, + "boxW": 33.59, + "cut": false + }, + { + "text": "237", + "weight": "400", + "size": "11px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 18.33, + "boxW": 18.33, + "cut": false + } + ] + }, + { + "n": "Viewer 파일 열기: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "576.91,353.5,55.45,20,576.91,353.5,55.45,20", + "h": "576.91,353.5,55.45,20,576.91,353.5,55.45,20", + "d2": "576.91,353.5,55.45,20,576.91,353.5,55.45,20", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Viewer 레이어: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "1239.27,353.5,38.64,20,1239.27,353.5,38.64,20", + "h": "1239.27,353.5,38.64,20,1239.27,353.5,38.64,20", + "d2": "1239.27,353.5,38.64,20,1239.27,353.5,38.64,20", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Viewer Layout tab: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "855,352.7,70.13,20,846,343.5,88.13,40", + "h": "855,352.7,70.13,20,846,343.5,88.13,40", + "d2": "855,352.7,70.13,20,846,343.5,88.13,40", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Viewer: More button shown at a narrow width", + "ok": true + }, + { + "n": "Viewer: More opens with its entries", + "ok": true, + "d": 10 + }, + { + "n": "Viewer: Escape closes More", + "ok": true + }, + { + "n": "Viewer: no page errors", + "ok": true, + "d": [] + }, + { + "n": "Recent files: names (30) 14px 700 + 1.3px outline", + "ok": true, + "d": [ + { + "text": "001-연결종합 계획평면도22222222.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 263.72, + "boxW": 263.75, + "cut": false + }, + { + "text": "03.암발파공법적용도_231011.grm", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 226.45, + "boxW": 263.75, + "cut": false + } + ] + }, + { + "n": "Recent files: paths (30) 12px 700 + 1px outline, ellipsis kept", + "ok": true, + "d": [ + { + "text": "Z:\\01.기술개발센터\\04_그리미시스템\\Design...", + "weight": "700", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 263.75, + "boxW": 263.75, + "cut": false + }, + { + "text": "Z:\\01.기술개발센터\\04_그리미시스템\\Design...", + "weight": "700", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 263.75, + "boxW": 263.75, + "cut": false + } + ] + }, + { + "n": "Recent file name: hover keeps the text place, size and weight (700)", + "ok": true, + "d": { + "d": "1074,968.5,263.72,20,1074,970.5,263.75,16", + "h": "1074,968.5,263.72,20,1074,970.5,263.75,16", + "d2": "1074,968.5,263.72,20,1074,970.5,263.75,16", + "w0": "700", + "w1": "700" + } + }, + { + "n": "Recent preview: title 14px 700 + 1.3px outline, width 294 with ellipsis, body 243px", + "ok": true, + "d": { + "title": "C:/Users/user/Desktop/H1100.DWG", + "weight": "700", + "size": "14px", + "color": "rgb(255, 92, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "titleW": 294, + "overflow": "ellipsis", + "w": 310, + "h": 270, + "bodyH": 243 + } + }, + { + "n": "Recent files: rows keep 50px and their text widths", + "ok": true, + "d": "50,264,264" + }, + { + "n": "Recent files / preview: no page errors", + "ok": true, + "d": [] + } + ], + "report": { + "headerValues:sw-header--overview": [ + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + } + ], + "headerValues:sw-header--document-open": [ + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 56.03, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 38, + "cut": true + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 56.03, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 38, + "cut": true + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 56.03, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 38, + "cut": true + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 56.03, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 38, + "cut": true + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 56.03, + "cut": false + }, + { + "text": "ByLayer", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 56.03, + "boxW": 38, + "cut": true + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + }, + { + "text": "WALL", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.25, + "boxW": 38.25, + "cut": false + } + ], + "headerValues:sw-header--interactive-states": [ + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + }, + { + "text": "Continuous", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 81.27, + "boxW": 81.27, + "cut": false + }, + { + "text": "0.25", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 29.45, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "Standard", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 64.23, + "boxW": 64.23, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 132.34, + "boxW": 132.34, + "cut": false + }, + { + "text": "255,229,0", + "weight": "400", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.22, + "boxW": 67.22, + "cut": false + } + ], + "composedValues": [ + { + "text": "0", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 8.83, + "boxW": 34.84, + "cut": false + }, + { + "text": "255,229,0", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 71.97, + "boxW": 71.97, + "cut": false + }, + { + "text": "Continuous", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 85.19, + "boxW": 85.19, + "cut": false + }, + { + "text": "0.25", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 31.58, + "boxW": 38, + "cut": false + }, + { + "text": "1.0000", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 49.22, + "boxW": 38, + "cut": true + }, + { + "text": "Standard", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.63, + "boxW": 67.63, + "cut": false + }, + { + "text": "Standard", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 67.63, + "boxW": 67.63, + "cut": false + } + ], + "composedCut": [ + "1.0000 (49.22 / 38px)" + ], + "footerTabs": [ + { + "text": "도형", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 92, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 28.56, + "boxW": 44.56, + "cut": false + }, + { + "text": "수정", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 28.56, + "boxW": 44.56, + "cut": false + }, + { + "text": "편집", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 28.56, + "boxW": 44.56, + "cut": false + }, + { + "text": "문자", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 28.56, + "boxW": 44.56, + "cut": false + }, + { + "text": "치수/연산", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 63.95, + "boxW": 79.95, + "cut": false + }, + { + "text": "블록", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 28.56, + "boxW": 44.56, + "cut": false + }, + { + "text": "레이어", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 42.84, + "boxW": 58.84, + "cut": false + }, + { + "text": "뷰", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 14.28, + "boxW": 43, + "cut": false + }, + { + "text": "선택/조회", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 63.95, + "boxW": 79.95, + "cut": false + }, + { + "text": "모델링", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 42.84, + "boxW": 58.84, + "cut": false + }, + { + "text": "선형/횡단", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 63.95, + "boxW": 79.95, + "cut": false + }, + { + "text": "구조/배근", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 63.95, + "boxW": 79.95, + "cut": false + } + ], + "footerCategoryArea": { + "w": 727.3, + "h": 24, + "content": 727, + "steps": 0 + }, + "viewer": [ + { + "text": "C0060202-001-평면및종단면도.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 226.31, + "boxW": 100.91, + "cut": true + }, + { + "text": "파일 열기", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 55.45, + "boxW": 55.45, + "cut": false + }, + { + "text": "샘플", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + }, + { + "text": "Model17,377", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 198, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 79.88, + "boxW": 97.88, + "cut": false + }, + { + "text": "Layout237", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 70.13, + "boxW": 88.13, + "cut": false + }, + { + "text": "전체 보기", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 55.45, + "boxW": 55.45, + "cut": false + }, + { + "text": "레이어", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 38.64, + "boxW": 38.64, + "cut": false + }, + { + "text": "설정", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + }, + { + "text": "속성", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(255, 255, 255)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 25.77, + "boxW": 25.77, + "cut": false + } + ], + "recent": { + "names": [ + { + "text": "001-연결종합 계획평면도22222222.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 263.72, + "boxW": 263.75, + "cut": false + }, + { + "text": "03.암발파공법적용도_231011.grm", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 226.45, + "boxW": 263.75, + "cut": false + }, + { + "text": "1.배수공-일반사항_231004.dwg", + "weight": "700", + "size": "14px", + "family": "\"Noto Sans KR\"", + "color": "rgb(246, 244, 242)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "textW": 211.42, + "boxW": 229.92, + "cut": false + } + ], + "paths": [ + { + "text": "Z:\\01.기술개발센터\\04_그리미시스템\\Design...", + "weight": "700", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 263.75, + "boxW": 263.75, + "cut": false + }, + { + "text": "Z:\\01.기술개발센터\\04_그리미시스템\\Design...", + "weight": "700", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 263.75, + "boxW": 263.75, + "cut": false + }, + { + "text": "Z:\\01.기술개발센터\\04_그리미시스템\\D...", + "weight": "700", + "size": "12px", + "family": "\"Noto Sans KR\"", + "color": "rgb(212, 203, 189)", + "outline": "rgb(0, 0, 0) 1px 0px 0px", + "textW": 229.92, + "boxW": 229.92, + "cut": false + } + ] + }, + "preview": { + "title": "C:/Users/user/Desktop/H1100.DWG", + "weight": "700", + "size": "14px", + "color": "rgb(255, 92, 0)", + "outline": "rgb(0, 0, 0) 1.3px 0px 0px", + "titleW": 294, + "overflow": "ellipsis", + "w": 310, + "h": 270, + "bodyH": 243 + } + } +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/dotum-bold-reference/styles-dotum-700.json b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/styles-dotum-700.json new file mode 100644 index 0000000..b2bb384 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/styles-dotum-700.json @@ -0,0 +1,149 @@ +{ + "sw-header--overview": { + ".hm-sw-header__document-name": { + "Dotum | 14px | 700 | rgb(240, 247, 245) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(240, 247, 245)": [ + "Sample-Drawing-01. " + ] + }, + ".hm-sw-header__field-value": { + "Dotum | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "0_Layer_Cludmark ", + "255,229,0 " + ] + }, + ".hm-sw-header__field-label": { + "Dotum | 12px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "레이어 ", + "색상 " + ] + } + }, + "sw-header--composed-controls": { + ".hm-sw-header__document-name": {}, + ".hm-sw-header__field-value": { + "Dotum | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "0 ", + "255,229,0 ", + "Continuous ", + "0.25 " + ] + }, + ".hm-sw-header__field-label": { + "Dotum | 12px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "레이어 ", + "색상 ", + "선스타일 ", + "가중치 " + ] + }, + ".hm-sw-header__font-name": { + "Dotum | 16px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "Arial " + ] + } + }, + "sw-footer--full-footer": { + ".hm-sw-footer-side__title": { + "Dotum | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "보조기능 ", + "명령어 " + ] + }, + ".hm-sw-footer-side__subtitle": { + "Dotum | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(246, 244, 242)": [ + "전체보기 ", + "전체보기 " + ] + }, + ".hm-sw-footer-menu__tab": { + "Dotum | 14px | 700 | rgb(255, 92, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 92, 0)": [ + "도형 " + ], + "Dotum | 14px | 700 | rgb(212, 203, 189) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(212, 203, 189)": [ + "수정 ", + "편집 ", + "문자 ", + "치수/연산 " + ] + }, + ".hm-sw-footer-tab__label, .hm-sw-footer-tab__select": { + "Dotum | 12px | 400 | rgb(22, 20, 16) | none | 0px rgb(22, 20, 16)": [ + "Layout 02 ", + "Layout 02 ", + "Layout 01 ", + "Layout 01 " + ] + }, + ".hm-sw-footer-aux__label": { + "Dotum | 13px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "객체스냅 ", + "직각교차 ", + "선가중치 ", + "격자스냅 " + ], + "Dotum | 13px | 400 | rgb(255, 92, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 92, 0)": [ + "격자배경 ", + "객체스냅추적 " + ] + }, + ".hm-sw-footer-tool__label": { + "Dotum | 14px | 400 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "LINE ", + "PLINE ", + "ARC ", + "CIRCLE " + ] + } + }, + "sw-viewer--viewer-header": { + ".hm-sw-viewer-header__brand-mark": {}, + ".hm-sw-viewer-header__document-name": { + "Dotum | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "C0060202-001-평면및종단 " + ] + }, + ".hm-sw-viewer-header__label": { + "Dotum | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "파일 열기 ", + "샘플 ", + "전체 보기 ", + "레이어 " + ] + }, + ".hm-sw-viewer-header__tab": { + "Dotum | 14px | 700 | rgb(255, 198, 0) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 198, 0)": [ + "Model17,377 " + ], + "Dotum | 14px | 700 | rgb(255, 255, 255) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(255, 255, 255)": [ + "Layout237 " + ] + }, + ".hm-sw-viewer-header__count": { + "Dotum | 11px | 400 | rgb(255, 198, 0) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(255, 198, 0)": [ + "17,377 " + ], + "Dotum | 11px | 400 | rgb(255, 255, 255) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(255, 255, 255)": [ + "237 " + ] + } + }, + "sw-header--home-menu": { + ".hm-sw-recent-files__name": { + "Dotum | 14px | 700 | rgb(246, 244, 242) | rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg | 0px rgb(246, 244, 242)": [ + "001-연결종합 계획평면도2222 ", + "03.암발파공법적용도_231011 ", + "1.배수공-일반사항_231004. ", + "00.시공상세도 분석 및 목차_2 " + ] + }, + ".hm-sw-recent-files__path": { + "Dotum | 12px | 700 | rgb(212, 203, 189) | rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg | 0px rgb(212, 203, 189)": [ + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 ", + "Z:\\01.기술개발센터\\04_그리 " + ] + }, + ".hm-sw-recent-files [class*=\"preview\"] *": {} + } +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-700.json b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-700.json new file mode 100644 index 0000000..424c6f8 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-700.json @@ -0,0 +1,2892 @@ +{ + "viewer": [ + { + "w": 375, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 380, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 385, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 390, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 395, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 400, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 405, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 410, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 415, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 420, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 425, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 430, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 435, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 440, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 445, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 450, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 455, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 460, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 465, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 470, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 475, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 480, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 485, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 490, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 495, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 500, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 505, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 510, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 515, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 520, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 525, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 530, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 535, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 540, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 545, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 550, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 555, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 560, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 565, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 94, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 570, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 99, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 575, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 102.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 580, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 103.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 585, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 104.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 590, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 106, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 595, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 600, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 108.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 605, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 109.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 610, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 111, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 615, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 112.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 620, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 113.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 625, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 114.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 630, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 116, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 635, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 117.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 640, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 118.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 645, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 119.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 650, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 121, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 655, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 122.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 660, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 123.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 665, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 124.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 670, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 126, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 675, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 127.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 680, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 128.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 685, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 129.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 690, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 131, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 695, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 132.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 700, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 133.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 705, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 134.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 710, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 136, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 715, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 137.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 720, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 138.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 725, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 139.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 730, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 141, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 735, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 142.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 740, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 143.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 745, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 144.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 750, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 146, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 755, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 147.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 760, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 148.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 765, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 149.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 770, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 151, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 775, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 152.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 780, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 153.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 785, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 154.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 790, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 156, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 795, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 157.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 800, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 158.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 805, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 159.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 810, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 161, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 815, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 162.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 820, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 163.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 825, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 164.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 830, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 166, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 835, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 167.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 840, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 168.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 845, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 169.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 850, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 171, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 855, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 172.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 860, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 173.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 865, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 174.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 870, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 176, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 875, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 177.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 880, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 178.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 885, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 179.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 890, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 181, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 895, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 182.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 900, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 183.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 905, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 184.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 910, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 915, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 187.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 920, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 188.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 925, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 189.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 930, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 935, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 192.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 940, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 193.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 945, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 194.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 950, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 955, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 197.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 960, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 198.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 965, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 199.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 970, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 975, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 202.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 980, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 203.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 985, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 204.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 990, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 995, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 207.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1000, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 208.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1005, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 209.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1010, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1015, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 212.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1020, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 213.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1025, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 214.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1030, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1035, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 217.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1040, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 218.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1045, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 219.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1050, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1055, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 222.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1060, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 223.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1065, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 224.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1070, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1075, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 227.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1080, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 228.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1085, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 229.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1090, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 231, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1095, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 232.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1100, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 233.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1105, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 234.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1110, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 236, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1115, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 237.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1120, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 238.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1125, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 239.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1130, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 241, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1135, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 242.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1140, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 243.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1145, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 244.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1150, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 246, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1155, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 247.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1160, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 248.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1165, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 249.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1170, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 251, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1175, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 252.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1180, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 82, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1185, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 31, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1190, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 36, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1195, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 41, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1200, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 46, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1205, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 51, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1210, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 56, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1215, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 61, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1220, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 66, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1225, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 71, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1230, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 76, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1235, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 81, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1240, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 86, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1245, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 91, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1250, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 96, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1255, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 101, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1260, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 106, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1265, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 111, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1270, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 116, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1275, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 121, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1280, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 126, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1285, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 131, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1290, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 136, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1295, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 141, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1300, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 146, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1305, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 151, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1310, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 156, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1315, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 161, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1320, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 166, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1325, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 171, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1330, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 176, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1335, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 181, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1340, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1345, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1350, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1355, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1360, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1365, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1370, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1375, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1380, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1385, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 231, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1390, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 236, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1395, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 241, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1400, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 246, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1405, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 251, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1410, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 256, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1415, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 261, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1420, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 266, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1425, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1430, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1435, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1440, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1445, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1450, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1455, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1460, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1465, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1470, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1475, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1480, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1485, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1490, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1495, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1500, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1505, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1510, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1515, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1520, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1525, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1530, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1535, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1540, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1545, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1550, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1555, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1560, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1565, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1570, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1575, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1580, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1585, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1590, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1595, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1600, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1605, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1610, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1615, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1620, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1625, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1630, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1635, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1640, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1645, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1650, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1655, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1660, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1665, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1670, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1675, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1680, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1685, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1690, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1695, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1700, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1705, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1710, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1715, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1720, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1725, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1730, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1735, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1740, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1745, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1750, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1755, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1760, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1765, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1770, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1775, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1780, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1785, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1790, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1795, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1800, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1805, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1810, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1815, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1820, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1825, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1830, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1835, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1840, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1845, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1850, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1855, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1860, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1865, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1870, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1875, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1880, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1885, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1890, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1895, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1900, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1905, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1910, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1915, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1920, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 269, + "docCut": false, + "more": false, + "scroll": false + } + ], + "footer": { + "sw-footer--full-footer": [ + { + "w": 1920, + "viewport": [ + 1389, + 759 + ], + "scroll": [ + 801, + 759 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + } + ], + "sw-footer--responsive": [ + { + "w": 1920, + "viewport": [ + 1389, + 759 + ], + "scroll": [ + 801, + 759 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + }, + { + "w": 1440, + "viewport": [ + 1181, + 487 + ], + "scroll": [ + 801, + 487 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + }, + { + "w": 1280, + "viewport": [ + 1157, + 351 + ], + "scroll": [ + 801, + 351 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + }, + { + "w": 950, + "viewport": [ + 895, + 283 + ], + "scroll": [ + 801, + 283 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + }, + { + "w": 860, + "viewport": [ + 873, + 215 + ], + "scroll": [ + 801, + 215 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + }, + { + "w": 760, + "viewport": [ + 909, + 79 + ], + "scroll": [ + 801, + 79 + ], + "tabs": "도형:48.8/32.8 수정:48.8/32.8 편집:48.8/32.8 문자:48.8/32.8 치수/연산:90/74 블록:48.8/32.8 레이어:65.2/49.2 뷰:43/16.4 선택/조회:90/74 모델링:65.2/49.2 선형/횡단:90/74 구조/배근:90/74", + "side": "보조기능:62.3/74 명령어:46.7/74" + } + ] + }, + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-before-bold.json b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-before-bold.json new file mode 100644 index 0000000..28442fd --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/dotum-bold-reference/sweep-dotum-before-bold.json @@ -0,0 +1,2892 @@ +{ + "viewer": [ + { + "w": 375, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 380, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 385, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 390, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 395, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 400, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 405, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 410, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 415, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 420, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 425, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 430, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 435, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 440, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 445, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 450, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 455, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 460, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 465, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 470, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 475, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 480, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 485, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 490, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 495, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 500, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 505, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 510, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 515, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 520, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 525, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 530, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 535, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 540, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 545, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 550, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 555, + "overflow": [], + "labels": "", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 560, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 565, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 99.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 570, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 101, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 575, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 102.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 580, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 103.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 585, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 104.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 590, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 106, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 595, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 107.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 600, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 108.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 605, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 109.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 610, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 111, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 615, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 112.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 620, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 113.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 625, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 114.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 630, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 116, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 635, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 117.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 640, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 118.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 645, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 119.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 650, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 121, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 655, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 122.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 660, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 123.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 665, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 124.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 670, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 126, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 675, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 127.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 680, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 128.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 685, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 129.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 690, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 131, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 695, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 132.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 700, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 133.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 705, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 134.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 710, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 136, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 715, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 137.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 720, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 138.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 725, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 139.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 730, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 141, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 735, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 142.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 740, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 143.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 745, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 144.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 750, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 146, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 755, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 147.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 760, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 148.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 765, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 149.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 770, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 151, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 775, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 152.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 780, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 153.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 785, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 154.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 790, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 156, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 795, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 157.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 800, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 158.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 805, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 159.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 810, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 161, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 815, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 162.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 820, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 163.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 825, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 164.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 830, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 166, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 835, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 167.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 840, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 168.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 845, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 169.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 850, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 171, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 855, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 172.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 860, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 173.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 865, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 174.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 870, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 176, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 875, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 177.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 880, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 178.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 885, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 179.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 890, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 181, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 895, + "overflow": [], + "labels": "파일 열기·전체 보기", + "doc": 182.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 900, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 183.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 905, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 184.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 910, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 915, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 187.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 920, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 188.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 925, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 189.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 930, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 935, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 192.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 940, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 193.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 945, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 194.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 950, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 955, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 197.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 960, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 198.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 965, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 199.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 970, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 975, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 202.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 980, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 203.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 985, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 204.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 990, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 995, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 207.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1000, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 208.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1005, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 209.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1010, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1015, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 212.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1020, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 213.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1025, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 214.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1030, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1035, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 217.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1040, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 218.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1045, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 219.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1050, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1055, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 222.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1060, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 223.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1065, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 224.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1070, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 226, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1075, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 227.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1080, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 228.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1085, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 229.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1090, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 231, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1095, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 232.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1100, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 233.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1105, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 234.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1110, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 236, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1115, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 237.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1120, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 238.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1125, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 239.8, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1130, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 241, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1135, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 242.3, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1140, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 243.5, + "docCut": true, + "more": true, + "scroll": false + }, + { + "w": 1145, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 244.8, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1150, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1155, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1160, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1165, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1170, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1175, + "overflow": [], + "labels": "파일 열기·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": true, + "scroll": false + }, + { + "w": 1180, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 112, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1185, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 61, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1190, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 66, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1195, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 71, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1200, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 76, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1205, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 81, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1210, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 86, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1215, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 91, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1220, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 96, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1225, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 101, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1230, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 106, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1235, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 111, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1240, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 116, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1245, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 121, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1250, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 126, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1255, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 131, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1260, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 136, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1265, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 141, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1270, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 146, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1275, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 151, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1280, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 156, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1285, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 161, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1290, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 166, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1295, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 171, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1300, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 176, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1305, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 181, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1310, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 186, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1315, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 191, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1320, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 196, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1325, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 201, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1330, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 206, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1335, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 211, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1340, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 216, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1345, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 221, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1350, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 226, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1355, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 231, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1360, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 236, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1365, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 241, + "docCut": true, + "more": false, + "scroll": false + }, + { + "w": 1370, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1375, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1380, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1385, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1390, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1395, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1400, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1405, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1410, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1415, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1420, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1425, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1430, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1435, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1440, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1445, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1450, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1455, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1460, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1465, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1470, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1475, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1480, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1485, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1490, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1495, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1500, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1505, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1510, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1515, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1520, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1525, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1530, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1535, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1540, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1545, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1550, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1555, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1560, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1565, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1570, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1575, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1580, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1585, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1590, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1595, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1600, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1605, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1610, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1615, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1620, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1625, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1630, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1635, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1640, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1645, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1650, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1655, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1660, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1665, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1670, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1675, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1680, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1685, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1690, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1695, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1700, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1705, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1710, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1715, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1720, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1725, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1730, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1735, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1740, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1745, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1750, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1755, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1760, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1765, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1770, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1775, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1780, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1785, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1790, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1795, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1800, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1805, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1810, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1815, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1820, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1825, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1830, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1835, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1840, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1845, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1850, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1855, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1860, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1865, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1870, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1875, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1880, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1885, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1890, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1895, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1900, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1905, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1910, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1915, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + }, + { + "w": 1920, + "overflow": [], + "labels": "파일 열기·샘플·Model17,377·Layout237·전체 보기·레이어·설정·속성", + "doc": 245, + "docCut": false, + "more": false, + "scroll": false + } + ], + "footer": { + "sw-footer--full-footer": [ + { + "w": 1920, + "viewport": [ + 1389, + 765.5 + ], + "scroll": [ + 765, + 765 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + } + ], + "sw-footer--responsive": [ + { + "w": 1920, + "viewport": [ + 1389, + 765.5 + ], + "scroll": [ + 765, + 765 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + }, + { + "w": 1440, + "viewport": [ + 1181, + 487 + ], + "scroll": [ + 765, + 487 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + }, + { + "w": 1280, + "viewport": [ + 1157, + 351 + ], + "scroll": [ + 765, + 351 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + }, + { + "w": 950, + "viewport": [ + 895, + 283 + ], + "scroll": [ + 765, + 283 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + }, + { + "w": 860, + "viewport": [ + 873, + 215 + ], + "scroll": [ + 765, + 215 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + }, + { + "w": 760, + "viewport": [ + 909, + 79 + ], + "scroll": [ + 765, + 79 + ], + "tabs": "도형:46.8/30.8 수정:46.8/30.8 편집:46.8/30.8 문자:46.8/30.8 치수/연산:85/69 블록:46.8/30.8 레이어:62.2/46.2 뷰:43/15.4 선택/조회:85/69 모델링:62.2/46.2 선형/횡단:85/69 구조/배근:85/69", + "side": "보조기능:58.3/74 명령어:43.7/74" + } + ] + }, + "errors": [] +} \ No newline at end of file diff --git a/docs/sw/sw-noto-bold-qa/firefox/footer-firefox.png b/docs/sw/sw-noto-bold-qa/firefox/footer-firefox.png new file mode 100644 index 0000000..bb86b55 Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/firefox/footer-firefox.png differ diff --git a/docs/sw/sw-noto-bold-qa/firefox/home-menu-firefox.png b/docs/sw/sw-noto-bold-qa/firefox/home-menu-firefox.png new file mode 100644 index 0000000..2a57f4d Binary files /dev/null and b/docs/sw/sw-noto-bold-qa/firefox/home-menu-firefox.png differ diff --git a/docs/sw/sw-noto-bold-qa/firefox/hover-stability-firefox.json b/docs/sw/sw-noto-bold-qa/firefox/hover-stability-firefox.json new file mode 100644 index 0000000..3af86f9 --- /dev/null +++ b/docs/sw/sw-noto-bold-qa/firefox/hover-stability-firefox.json @@ -0,0 +1,5531 @@ +{ + "checks": [ + { + "n": "Firefox Header: field values are 400 and not cut (Standard, 0_Layer_Cludmark, Continuous, 1.00, 255,229,0 …)", + "ok": false, + "d": [ + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + } + ] + }, + { + "n": "Firefox Home Menu \"저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "h1": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "a": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]" + } + }, + { + "n": "Firefox Home Menu \"복사저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"내보내기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"도면묶기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"찾아열기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "a": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"최근파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"새파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "h1": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "a": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]" + } + }, + { + "n": "Firefox Home Menu \"3개 그룹\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "h1": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "a": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]" + } + }, + { + "n": "Firefox Home Menu \"저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "h1": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "a": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]" + } + }, + { + "n": "Firefox Home Menu \"복사저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"내보내기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"도면묶기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"찾아열기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "a": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"최근파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"새파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "h1": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "a": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]" + } + }, + { + "n": "Firefox Home Menu \"복구하기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"임시파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"Display...\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]", + "h1": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]", + "a": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]" + } + }, + { + "n": "Firefox Home Menu \"저장하기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"불러오기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"1개 그룹\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "h1": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "a": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]" + } + }, + { + "n": "Firefox Home Menu \"저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "h1": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "a": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]" + } + }, + { + "n": "Firefox Home Menu \"복사저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"내보내기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"도면묶기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"찾아열기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "a": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"최근파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"새파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "h1": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "a": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]" + } + }, + { + "n": "Firefox Home Menu \"복구하기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,5.5,21,22.367],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"임시파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31.133,6.25,22.25,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"Display...\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]", + "h1": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]", + "a": "[80,46,[32,8,24,22],1,[5.333,23,69.333,20]]" + } + }, + { + "n": "Firefox Home Menu \"저장하기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32.15,7.25,24.317,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"불러오기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,6,18,18],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"1개 그룹\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "h1": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "a": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]" + } + }, + { + "n": "Firefox Home Menu \"저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "h1": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]", + "a": "[80,46,[30.75,5.75,21.5,21.5],1,[26.55,23,26.9,20]]" + } + }, + { + "n": "Firefox Home Menu \"복사저장\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.5,23.3,23],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"내보내기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6.633,22.517,23.267],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"도면묶기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]", + "a": "[80,46,[31,6,23,22],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"찾아열기\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]", + "a": "[80,46,[30.85,5,24.7,20],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"최근파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "h1": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]", + "a": "[80,46,[32,7.25,22,24.5],1,[13.1,23,53.8,20]]" + } + }, + { + "n": "Firefox Home Menu \"새파일\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "h1": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]", + "a": "[80,46,[31,6,20,23],1,[19.833,23,40.35,20]]" + } + }, + { + "n": "Firefox Home Menu \"3개 그룹\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "h1": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]", + "a": "[80,46,[32,13,16,4],1,[13.167,23,53.667,20]]" + } + }, + { + "n": "Firefox Home Menu: 42 tiles, hover reached every non-active tile", + "ok": true, + "d": [] + }, + { + "n": "Firefox Footer tab 1 \"LINE\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[17.833,4,32.333,20]]", + "h1": "[68,47,[25,26,18,18],1,[17.833,4,32.333,20]]", + "a": "[68,47,[25,26,18,18],1,[17.833,4,32.333,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"PLINE\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[13.117,4,41.767,20]]", + "h1": "[68,47,[25,26,18,18],1,[13.117,4,41.767,20]]", + "a": "[68,47,[25,26,18,18],1,[13.117,4,41.767,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"ARC\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[19.983,4,28.033,20]]", + "h1": "[68,47,[25,26,18,18],1,[19.983,4,28.033,20]]", + "a": "[68,47,[25,26,18,18],1,[19.983,4,28.033,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"CIRCLE\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[8.95,4,50.1,20]]", + "h1": "[68,47,[25,26,18,18],1,[8.95,4,50.1,20]]", + "a": "[68,47,[25,26,18,18],1,[8.95,4,50.1,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"ELLIPSE\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[5.6,4,56.783,20]]", + "h1": "[68,47,[25,26,18,18],1,[5.6,4,56.783,20]]", + "a": "[68,47,[25,26,18,18],1,[5.6,4,56.783,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"RECTA...\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[4.883,4,58.217,20]]", + "h1": "[68,47,[25,26,18,18],1,[4.883,4,58.217,20]]", + "a": "[68,47,[25,26,18,18],1,[4.883,4,58.217,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"POLYGON\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[2,4,66.933,20]]", + "h1": "[68,47,[25,26,18,18],1,[2,4,66.933,20]]", + "a": "[68,47,[25,26,18,18],1,[2,4,66.933,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"POINT\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[11.65,4,44.683,20]]", + "h1": "[68,47,[25,26,18,18],1,[11.65,4,44.683,20]]", + "a": "[68,47,[25,26,18,18],1,[11.65,4,44.683,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"HATCH\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[10.1,4,47.783,20]]", + "h1": "[68,47,[25,26,18,18],1,[10.1,4,47.783,20]]", + "a": "[68,47,[25,26,18,18],1,[10.1,4,47.783,20]]" + } + }, + { + "n": "Firefox Footer tab 1 \"WIPEOUT\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[26,27,16,16],1,[2,4,66.35,20]]", + "h1": "[68,47,[26,27,16,16],1,[2,4,66.35,20]]", + "a": "[68,47,[26,27,16,16],1,[2,4,66.35,20]]" + } + }, + { + "n": "Firefox Footer tab 2 \"NCopy\": icon · text · box unchanged (Default/Hover/Default/Hover/Active)", + "ok": true, + "d": { + "d0": "[68,47,[25,26,18,18],1,[10.867,4,46.25,20]]", + "h1": "[68,47,[25,26,18,18],1,[10.867,4,46.25,20]]", + "a": "[68,47,[25,26,18,18],1,[10.867,4,46.25,20]]" + } + }, + { + "n": "Firefox Footer: 11 commands, all 68 × 47, hover reached every command", + "ok": true, + "d": [] + }, + { + "n": "Firefox Footer: POLYGON ends in … (cut) and its hover title is the full name, 68 × 47", + "ok": true, + "d": { + "overflow": "ellipsis", + "cut": true, + "title": "POLYGON", + "w": 68, + "h": 47 + } + }, + { + "n": "Firefox Footer: WIPEOUT ends in … (cut) and its hover title is the full name, 68 × 47", + "ok": true, + "d": { + "overflow": "ellipsis", + "cut": true, + "title": "WIPEOUT", + "w": 68, + "h": 47 + } + }, + { + "n": "Firefox: no console errors (Storybook UI font requests excluded)", + "ok": true, + "d": [] + } + ], + "report": { + "browser": "158.0", + "viewport": [ + 1280, + 905 + ], + "headerFields": [ + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "0_Layer_Cludmark", + "field": "layer", + "weight": "400", + "textW": 132.48, + "boxW": 132.48, + "cut": false + }, + { + "text": "255,229,0", + "field": "color", + "weight": "400", + "textW": 67.27, + "boxW": 67.27, + "cut": false + }, + { + "text": "Continuous", + "field": "line-style", + "weight": "400", + "textW": 81.32, + "boxW": 74.92, + "cut": true + }, + { + "text": "0.25", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "1.00", + "field": "line-style", + "weight": "400", + "textW": 29.47, + "boxW": 38, + "cut": false + }, + { + "text": "Standard", + "field": "text-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + }, + { + "text": "Standard", + "field": "dimension-style", + "weight": "400", + "textW": 64.27, + "boxW": 64.27, + "cut": false + } + ], + "home": [ + { + "name": "저장", + "same": true, + "hovered": true, + "d0": { + "name": "저장", + "box": [ + 288.6, + 559.633, + 80, + 46 + ], + "icon": [ + 319.35, + 565.383, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 582.633, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "저장", + "box": [ + 288.6, + 477.45, + 80, + 46 + ], + "icon": [ + 319.35, + 483.2, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 500.45, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "저장", + "box": [ + 288.6, + 430.017, + 80, + 46 + ], + "icon": [ + 319.35, + 435.767, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 453.017, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + } + }, + { + "name": "복사저장", + "same": true, + "hovered": true, + "d0": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "내보내기", + "same": true, + "hovered": true, + "d0": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "도면묶기", + "same": true, + "hovered": true, + "d0": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "찾아열기", + "same": true, + "hovered": true, + "d0": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "최근파일", + "same": true, + "hovered": true, + "d0": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "새파일", + "same": true, + "hovered": true, + "d0": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "3개 그룹", + "same": true, + "hovered": true, + "d0": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "저장", + "same": true, + "hovered": true, + "d0": { + "name": "저장", + "box": [ + 66.4, + 507.267, + 80, + 46 + ], + "icon": [ + 97.15, + 513.017, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 530.267, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "저장", + "box": [ + 66.4, + 448.75, + 80, + 46 + ], + "icon": [ + 97.15, + 454.5, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 471.75, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "저장", + "box": [ + 66.4, + 429.75, + 80, + 46 + ], + "icon": [ + 97.15, + 435.5, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 452.75, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + } + }, + { + "name": "복사저장", + "same": true, + "hovered": true, + "d0": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "내보내기", + "same": true, + "hovered": true, + "d0": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "도면묶기", + "same": true, + "hovered": true, + "d0": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "찾아열기", + "same": true, + "hovered": true, + "d0": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "최근파일", + "same": true, + "hovered": true, + "d0": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "새파일", + "same": true, + "hovered": true, + "d0": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "복구하기", + "same": true, + "hovered": true, + "d0": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "임시파일", + "same": true, + "hovered": true, + "d0": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "Display...", + "same": true, + "hovered": true, + "d0": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "저장하기", + "same": true, + "hovered": true, + "d0": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "불러오기", + "same": true, + "hovered": true, + "d0": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "1개 그룹", + "same": true, + "hovered": true, + "d0": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "저장", + "same": true, + "hovered": true, + "d0": { + "name": "저장", + "box": [ + 66.4, + 466.283, + 80, + 46 + ], + "icon": [ + 97.15, + 472.033, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 489.283, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "저장", + "box": [ + 66.4, + 440.717, + 80, + 46 + ], + "icon": [ + 97.15, + 446.467, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 463.717, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "저장", + "box": [ + 66.4, + 429.65, + 80, + 46 + ], + "icon": [ + 97.15, + 435.4, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 92.95, + 452.65, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "복사저장", + "same": true, + "hovered": true, + "d0": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "복사저장", + "box": [ + 146.4, + 429.5, + 80, + 46 + ], + "icon": [ + 177.4, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 159.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "내보내기", + "same": true, + "hovered": true, + "d0": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "내보내기", + "box": [ + 226.4, + 429.5, + 80, + 46 + ], + "icon": [ + 257.4, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 239.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "도면묶기", + "same": true, + "hovered": true, + "d0": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "도면묶기", + "box": [ + 306.4, + 429.5, + 80, + 46 + ], + "icon": [ + 337.4, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 319.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "찾아열기", + "same": true, + "hovered": true, + "d0": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "찾아열기", + "box": [ + 406.4, + 429.5, + 80, + 46 + ], + "icon": [ + 437.25, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 419.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "최근파일", + "same": true, + "hovered": true, + "d0": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "최근파일", + "box": [ + 486.4, + 429.5, + 80, + 46 + ], + "icon": [ + 518.4, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 499.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "새파일", + "same": true, + "hovered": true, + "d0": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "새파일", + "box": [ + 566.4, + 429.5, + 80, + 46 + ], + "icon": [ + 597.4, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 586.233, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "복구하기", + "same": true, + "hovered": true, + "d0": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "복구하기", + "box": [ + 666.4, + 429.5, + 80, + 46 + ], + "icon": [ + 697.4, + 435, + 21, + 22.367 + ], + "n": 1, + "text": [ + 679.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "임시파일", + "same": true, + "hovered": true, + "d0": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "임시파일", + "box": [ + 746.4, + 429.5, + 80, + 46 + ], + "icon": [ + 777.533, + 435.75, + 22.25, + 24.5 + ], + "n": 1, + "text": [ + 759.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "Display...", + "same": true, + "hovered": true, + "d0": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "Display...", + "box": [ + 846.4, + 429.5, + 80, + 46 + ], + "icon": [ + 878.4, + 437.5, + 24, + 22 + ], + "n": 1, + "text": [ + 851.733, + 452.5, + 69.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "저장하기", + "same": true, + "hovered": true, + "d0": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "저장하기", + "box": [ + 926.4, + 429.5, + 80, + 46 + ], + "icon": [ + 958.55, + 436.75, + 24.317, + 24.5 + ], + "n": 1, + "text": [ + 939.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "불러오기", + "same": true, + "hovered": true, + "d0": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "불러오기", + "box": [ + 1006.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1038.4, + 435.5, + 18, + 18 + ], + "n": 1, + "text": [ + 1019.5, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "1개 그룹", + "same": true, + "hovered": true, + "d0": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "1개 그룹", + "box": [ + 1107.4, + 429.5, + 80, + 46 + ], + "icon": [ + 1139.4, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 1120.567, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "저장", + "same": true, + "hovered": true, + "d0": { + "name": "저장", + "box": [ + 288.6, + 557.567, + 80, + 46 + ], + "icon": [ + 319.35, + 563.317, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 580.567, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "저장", + "box": [ + 288.6, + 460.917, + 80, + 46 + ], + "icon": [ + 319.35, + 466.667, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 483.917, + 26.9, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "저장", + "box": [ + 288.6, + 430.167, + 80, + 46 + ], + "icon": [ + 319.35, + 435.917, + 21.5, + 21.5 + ], + "n": 1, + "text": [ + 315.15, + 453.167, + 26.9, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + } + }, + { + "name": "복사저장", + "same": true, + "hovered": true, + "d0": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "복사저장", + "box": [ + 368.6, + 429.5, + 80, + 46 + ], + "icon": [ + 399.6, + 436, + 23.3, + 23 + ], + "n": 1, + "text": [ + 381.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "내보내기", + "same": true, + "hovered": true, + "d0": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "내보내기", + "box": [ + 448.6, + 429.5, + 80, + 46 + ], + "icon": [ + 479.6, + 436.133, + 22.517, + 23.267 + ], + "n": 1, + "text": [ + 461.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "도면묶기", + "same": true, + "hovered": true, + "d0": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "도면묶기", + "box": [ + 528.6, + 429.5, + 80, + 46 + ], + "icon": [ + 559.6, + 435.5, + 23, + 22 + ], + "n": 1, + "text": [ + 541.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "찾아열기", + "same": true, + "hovered": true, + "d0": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "찾아열기", + "box": [ + 628.6, + 429.5, + 80, + 46 + ], + "icon": [ + 659.45, + 434.5, + 24.7, + 20 + ], + "n": 1, + "text": [ + 641.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "최근파일", + "same": true, + "hovered": true, + "d0": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "h1": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + }, + "a": { + "name": "최근파일", + "box": [ + 708.6, + 429.5, + 80, + 46 + ], + "icon": [ + 740.6, + 436.75, + 22, + 24.5 + ], + "n": 1, + "text": [ + 721.7, + 452.5, + 53.8, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": true + } + }, + { + "name": "새파일", + "same": true, + "hovered": true, + "d0": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "새파일", + "box": [ + 788.6, + 429.5, + 80, + 46 + ], + "icon": [ + 819.6, + 435.5, + 20, + 23 + ], + "n": 1, + "text": [ + 808.433, + 452.5, + 40.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "3개 그룹", + "same": true, + "hovered": true, + "d0": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "3개 그룹", + "box": [ + 889.6, + 429.5, + 80, + 46 + ], + "icon": [ + 921.6, + 442.5, + 16, + 4 + ], + "n": 1, + "text": [ + 902.767, + 452.5, + 53.667, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + } + ], + "footer": [ + { + "name": "LINE", + "same": true, + "hovered": true, + "d0": { + "name": "LINE", + "box": [ + 606, + 862.3, + 68, + 47 + ], + "icon": [ + 631, + 888.3, + 18, + 18 + ], + "n": 1, + "text": [ + 623.833, + 866.3, + 32.333, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "LINE", + "box": [ + 606, + 815.55, + 68, + 47 + ], + "icon": [ + 631, + 841.55, + 18, + 18 + ], + "n": 1, + "text": [ + 623.833, + 819.55, + 32.333, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "LINE", + "box": [ + 606, + 795.867, + 68, + 47 + ], + "icon": [ + 631, + 821.867, + 18, + 18 + ], + "n": 1, + "text": [ + 623.833, + 799.867, + 32.333, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + } + }, + { + "name": "PLINE", + "same": true, + "hovered": true, + "d0": { + "name": "PLINE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 619.117, + 799.6, + 41.767, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "PLINE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 619.117, + 799.6, + 41.767, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "PLINE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 619.117, + 799.6, + 41.767, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "ARC", + "same": true, + "hovered": true, + "d0": { + "name": "ARC", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 625.983, + 799.6, + 28.033, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "ARC", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 625.983, + 799.6, + 28.033, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "ARC", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 625.983, + 799.6, + 28.033, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "CIRCLE", + "same": true, + "hovered": true, + "d0": { + "name": "CIRCLE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 614.95, + 799.6, + 50.1, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "CIRCLE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 614.95, + 799.6, + 50.1, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "CIRCLE", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 614.95, + 799.6, + 50.1, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "ELLIPSE", + "same": true, + "hovered": true, + "d0": { + "name": "ELLIPSE", + "box": [ + 622.6, + 795.6, + 68, + 47 + ], + "icon": [ + 647.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 628.2, + 799.6, + 56.783, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "ELLIPSE", + "box": [ + 622.6, + 795.6, + 68, + 47 + ], + "icon": [ + 647.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 628.2, + 799.6, + 56.783, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "ELLIPSE", + "box": [ + 622.6, + 795.6, + 68, + 47 + ], + "icon": [ + 647.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 628.2, + 799.6, + 56.783, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "RECTA...", + "same": true, + "hovered": true, + "d0": { + "name": "RECTA...", + "box": [ + 690.6, + 795.6, + 68, + 47 + ], + "icon": [ + 715.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 695.483, + 799.6, + 58.217, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "RECTA...", + "box": [ + 690.6, + 795.6, + 68, + 47 + ], + "icon": [ + 715.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 695.483, + 799.6, + 58.217, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "RECTA...", + "box": [ + 690.6, + 795.6, + 68, + 47 + ], + "icon": [ + 715.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 695.483, + 799.6, + 58.217, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "POLYGON", + "same": true, + "hovered": true, + "d0": { + "name": "POLYGON", + "box": [ + 758.6, + 795.6, + 68, + 47 + ], + "icon": [ + 783.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 760.6, + 799.6, + 66.933, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "POLYGON", + "box": [ + 758.6, + 795.6, + 68, + 47 + ], + "icon": [ + 783.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 760.6, + 799.6, + 66.933, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "POLYGON", + "box": [ + 758.6, + 795.6, + 68, + 47 + ], + "icon": [ + 783.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 760.6, + 799.6, + 66.933, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "POINT", + "same": true, + "hovered": true, + "d0": { + "name": "POINT", + "box": [ + 826.6, + 795.6, + 68, + 47 + ], + "icon": [ + 851.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 838.25, + 799.6, + 44.683, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "POINT", + "box": [ + 826.6, + 795.6, + 68, + 47 + ], + "icon": [ + 851.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 838.25, + 799.6, + 44.683, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "POINT", + "box": [ + 826.6, + 795.6, + 68, + 47 + ], + "icon": [ + 851.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 838.25, + 799.6, + 44.683, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "HATCH", + "same": true, + "hovered": true, + "d0": { + "name": "HATCH", + "box": [ + 894.6, + 795.6, + 68, + 47 + ], + "icon": [ + 919.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 904.7, + 799.6, + 47.783, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "HATCH", + "box": [ + 894.6, + 795.6, + 68, + 47 + ], + "icon": [ + 919.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 904.7, + 799.6, + 47.783, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "HATCH", + "box": [ + 894.6, + 795.6, + 68, + 47 + ], + "icon": [ + 919.6, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 904.7, + 799.6, + 47.783, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "WIPEOUT", + "same": true, + "hovered": true, + "d0": { + "name": "WIPEOUT", + "box": [ + 962.6, + 795.6, + 68, + 47 + ], + "icon": [ + 988.6, + 822.6, + 16, + 16 + ], + "n": 1, + "text": [ + 964.6, + 799.6, + 66.35, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "WIPEOUT", + "box": [ + 962.6, + 795.6, + 68, + 47 + ], + "icon": [ + 988.6, + 822.6, + 16, + 16 + ], + "n": 1, + "text": [ + 964.6, + 799.6, + 66.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "WIPEOUT", + "box": [ + 962.6, + 795.6, + 68, + 47 + ], + "icon": [ + 988.6, + 822.6, + 16, + 16 + ], + "n": 1, + "text": [ + 964.6, + 799.6, + 66.35, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + }, + { + "name": "NCopy", + "same": true, + "hovered": true, + "d0": { + "name": "NCopy", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 616.867, + 799.6, + 46.25, + 20 + ], + "color": "rgb(246, 244, 242)", + "active": false + }, + "h1": { + "name": "NCopy", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 616.867, + 799.6, + 46.25, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + }, + "a": { + "name": "NCopy", + "box": [ + 606, + 795.6, + 68, + 47 + ], + "icon": [ + 631, + 821.6, + 18, + 18 + ], + "n": 1, + "text": [ + 616.867, + 799.6, + 46.25, + 20 + ], + "color": "rgb(255, 92, 0)", + "active": false + } + } + ], + "ellipsis": { + "POLYGON": { + "overflow": "ellipsis", + "cut": true, + "title": "POLYGON", + "w": 68, + "h": 47 + }, + "WIPEOUT": { + "overflow": "ellipsis", + "cut": true, + "title": "WIPEOUT", + "w": 68, + "h": 47 + } + }, + "environmentErrors": 3 + } +} \ No newline at end of file diff --git a/docs/sw/sw-pc-handoff-2026-10-20.md b/docs/sw/sw-pc-handoff-2026-10-20.md new file mode 100644 index 0000000..2a60964 --- /dev/null +++ b/docs/sw/sw-pc-handoff-2026-10-20.md @@ -0,0 +1,59 @@ +# SW 작업 PC 이전 인수인계 (2026-10-20) + +HMDesign 저장소(`feature/sw-package`)와 SW 소비 프로젝트(`HMDesignSwTest-viewer`)는 **별개 저장소**입니다. 이 문서는 HMDesign 저장소의 Push 범위만 다룹니다. + +## 1. HMDesign 저장소 + +- 원격: `https://gitea.hmac.kr/b25027/HMDesign.git`, 브랜치 `feature/sw-package` (main 병합·Docker 배포는 아직 안 함) +- 확인한 환경: Node.js v22.23.2, npm 10.9.8 (`engines` 지정 없음) + +```bash +git clone -b feature/sw-package https://gitea.hmac.kr/b25027/HMDesign.git HMDesign-SW +cd HMDesign-SW +npm ci +npm run storybook # http://localhost:6024 +npm run typecheck:sw +npm run build:sw +npm run build-storybook +npm run check:ai-docs +``` + +### 브라우저 테스트 (`packages/sw/tests/*.browser.mjs`) + +Playwright는 저장소 의존성이 아닙니다. 모든 브라우저 테스트는 공통 모듈 `packages/sw/tests/playwright-runtime.mjs`로 Playwright(및 `pngjs`·`pixelmatch`)를 찾습니다(2026-10-20, PC별 절대경로 기본값 제거). 찾는 순서: + +1. `SW_PLAYWRIGHT_PATH` — playwright 패키지 폴더(또는 진입 파일) +2. `SW_RUNTIME_MODULES` — `playwright`가 설치된 `node_modules` 경로 (예: 별도 폴더에서 `npm i playwright` 후 그 `node_modules`) +3. `HM_PLAYWRIGHT_DIR` — `node_modules/playwright`를 가진 프로젝트 폴더(`scripts/verify-quality-runtime.mjs`와 같은 변수) +4. 저장소의 `node_modules/playwright` +5. 사용자 홈의 Codex 런타임 `~/.cache/codex-runtimes/codex-primary-runtime/dependencies/node/node_modules`(사용자 이름과 무관) +6. 전역 npm(`npm root -g`) + +환경 변수로 지정한 경로에 Playwright가 없으면 다른 위치로 넘어가지 않고 시도한 위치를 보여 주며 실패합니다. + +- `SW_CHROME_PATH` — Chrome 실행 파일(기본 `C:/Program Files/Google/Chrome/Application/chrome.exe`) +- Firefox 테스트는 설치된 Firefox(`SW_FIREFOX_PATH`)를 WebDriver BiDi로 사용하며 전역 `WebSocket`이 필요합니다: Node 22 이상, 또는 Node 20에서는 `node --experimental-websocket ` +- 실행 전 `npm run build-storybook`(일부 테스트는 `npm run storybook`의 6024 포트) 필요 + +## 2. 현재 상태와 남은 문제 + +- 완료: SW 기본 글꼴 Noto Sans KR 복귀, 요청 범위 Bold([sw-noto-bold-2026-10-20.md](./sw-noto-bold-2026-10-20.md)), Hover 위치 고정, Footer 말줄임·반응형, Header Open/More, Viewer Header More. +- 미해결(이번 이전에서 수정하지 않음): Firefox `Continuous` 6.4px 잘림, Composed Controls `1.0000` 말줄임, 기존 테스트 기준선 실패(dropdown-consolidation 5, home-menu-integration 1), Figma와 글꼴(Dotum → Noto)·Home Menu Hover 1px 차이. +- 다음 작업 우선순위: ① 소비 프로젝트 `HMDesignSwTest-viewer` 정리·Submodule 갱신 ② Firefox `Continuous` 별도 검토 ③ 기준선 테스트 기대값 갱신 여부 결정 ④ main 병합·Docker 배포(별도 승인). + +## 3. Git에 없는 자료 + +| 자료 | 위치(기존 PC) | 필수 여부 / 이전 방법 | +|---|---|---| +| Figma 원본 | 온라인 `이지빔-SW`(파일 키 `rj6wpsfk24lOWvWiVRAANP`), 로컬 사본 `D:\디자인시스템\이지빔 SW.fig` | 필수 아님 — Figma 계정으로 온라인 접근. 오프라인 사본이 필요할 때만 수동 복사 | +| 참고 이미지 | `D:\디자인시스템\레이아웃 분리.png`, `ani_hover_move.gif`(SHA-256은 `sw-header-design-spec.md`) | 필수 아님 — 값은 문서에 기록됨 | +| 브라우저 회귀 로그 | `docs/sw/*-qa/**/*.log` (`*.log` ignore) | 필수 아님 — FAIL 요약은 보고서에 기록 | +| DWG/DXF 샘플 | 소비 프로젝트 `public/samples/`(그 저장소에 Commit됨) | 소비 프로젝트 Clone으로 전달 | +| 로컬 설정 | `.claude/settings.local.json`, `_local/`, `.env*` | 이전 대상 아님 | + +## 4. SW 소비 프로젝트 `HMDesignSwTest-viewer` (별도) + +- 원격 `https://gitea.hmac.kr/kimminsung/dwg-dxf-viewer-hm.git`, HEAD `15ef6ef`(detached), Submodule `HMDesign` → `68fbcf6`(`feature/sw-viewer-header`) + Submodule 안 미커밋 `sw.css` 6줄. +- 미커밋 변경 20개(수정 16·삭제 3·신규 `ViewerHeader.tsx`, `viewer-panels.css`, `vite`)가 있으며 **HMDesign Push에 포함되지 않습니다.** 이 세션은 해당 프로젝트를 수정하지 않았습니다. +- 새 PC로 가져가려면 그 저장소에서 별도 승인 후 브랜치 Commit·Push 하거나, `node_modules`·`dist`를 제외하고 폴더를 수동 복사해야 합니다. Push 전에는 원격 Clone만으로 재현되지 않습니다. +- 구조: 소비 프로젝트 → Git Submodule `HMDesign` + npm Workspace(별도 npm publish 없음). 새 PC: `git clone --recurse-submodules <소비 프로젝트 URL>` → Submodule을 원하는 SHA(`feature/sw-package` 최신)로 checkout → 루트 `npm install`. 상세는 [external-install-submodule.md](../guidelines/external-install-submodule.md). diff --git a/docs/sw/sw-property-fields-verification-2026-10-19.md b/docs/sw/sw-property-fields-verification-2026-10-19.md new file mode 100644 index 0000000..44cf99c --- /dev/null +++ b/docs/sw/sw-property-fields-verification-2026-10-19.md @@ -0,0 +1,44 @@ +# SW 속성창 입력·선택 필드 검증 (2026-10-19) + +Figma `rj6wpsfk24lOWvWiVRAANP`의 속성 필드 13개 노드를 기존 `SWHeaderPropertyPanel` 행에 반영했습니다. 팝업은 새로 만들지 않았고, Header의 레이어·색상·선스타일 Dropdown 본문을 공유 컴포넌트로 분리해 재사용했습니다. + +## 구현 범위 + +| Figma | 항목 | Default / Hover | On | +|---|---|---|---| +| 26:12388 / 26:12404 | 선스타일 | 값 + `(ByL)` + 선택한 선 패턴 | `#211D13`, `(ByL)` `#D4CBBD`, 3열 Dropdown(우측 정렬) | +| 26:12250 / 26:12265 | 레이어 — 다양함 | `다양함` | `#211D13`, 234px 레이어 목록(현재 행 없음) | +| 26:12260 / 26:12291 | 레이어 — 단일 값 | 레이어 이름 | `#211D13`, 234px 레이어 목록(현재 행 강조) | +| 26:12314 | 선축적 | 값 + `(LTscale:1)` | 편집 `#0F0D0A`, 단위 흰색, 빨간 caret | +| 26:12649 | 선가중치 · 투명도 | 41px 내외 Hug(pl 6 / pr 4) | 편집 `#0F0D0A` | +| 26:12170 / 26:12184 | 색상 | RGB + 70 × 16 색상칩, Hover 시 구분선 | RGB 영역 `#211D13`, 192px 색상 Dropdown(좌측 정렬) | +| 26:12583 | 하이퍼링크 | `--` | Figma On 없음, Hover 모양만 유지 | +| 26:12590 | 두께 | 값 + `mm` | 편집 `#0F0D0A`, 단위 흰색 | +| 26:12574 | 재료 | 값 + `(ByL)` | Figma On 없음(computed, 읽기 전용) | + +공통: 높이 28px, radius 2px, Hover `1px rgba(33,29,19,.4)`. 테두리는 Default에서도 투명 1px로 존재해 Hover/On에서 값이 움직이지 않습니다. + +## 실행한 검증 + +| 항목 | 결과 | 근거 | +|---|---|---| +| 필드 인터랙션 (Chrome, Playwright) | 77/77 PASS | `packages/sw/tests/property-fields.browser.mjs`, `property-fields-qa/run4-result.json` | +| 기존 Header·Dropdown 회귀(detail-buttons verify) | 257 checks PASS, 33 stories | 기존 baseline 대비, 산출물은 임시 폴더 | +| followup-four | 39/39 PASS | 기존 스크립트 재실행 | +| property-close | 6/6 PASS | 기존 스크립트 재실행 | +| 속성창 4상태 크기 | 314 × 256 / 361 / 658 / 754 | 위 인터랙션 테스트 마지막 단계 | +| SW Typecheck / Build, 루트 앱 Typecheck, Storybook Build | PASS | 임시 폴더로 빌드, `storybook-static`은 변경하지 않음 | + +## Figma와 남은 차이 + +- 글꼴: Figma Dotum과 달리 Noto Sans KR은 폭이 넓습니다. 선스타일 필드는 이름이 잘리지 않도록 선 미리보기를 68px에서 최소 40px까지 줄입니다. Dropdown의 선 종류 열은 기존 Header 정책대로 182px보다 넓어질 수 있습니다(측정 187px). +- 값 굵기: 기존 속성창 기준 500을 유지했습니다(Figma 레이어명은 Dotum Regular이고 컴포넌트명에 bold가 붙어 있습니다). +- Figma에서는 Hover 시 테두리 때문에 값이 1px 이동하지만, 요청에 따라 구현은 이동하지 않습니다. 색상칩의 오른쪽 여백은 Default 기준(6px)입니다. +- 열린 Dropdown은 화면 여유가 없으면 화면 안쪽(4px)으로 이동하거나 필드 위로 열립니다. +- 하이퍼링크는 편집 가능하지만 Figma에 On이 없으므로 포커스 중에도 Hover 테두리만 표시합니다. + +## NOT VERIFIED + +- Firefox: 이번 필드 변경은 Chrome에서만 실행했습니다. Firefox의 `field-sizing` 미지원 경로(Hug 폭 계산)는 실행하지 않았습니다. +- 실제 CAD 호스트 연동(색상 추출, 레이어 상세 등)은 Callback 호출까지만 확인했습니다. +- Header 77개 구성 시나리오와 10개 폭 비교는 이번 변경 범위가 아니어서 다시 실행하지 않고 기존 PASS 근거를 재사용합니다. diff --git a/docs/sw/sw-storybook-cleanup-stage1-2026-10-19.md b/docs/sw/sw-storybook-cleanup-stage1-2026-10-19.md new file mode 100644 index 0000000..8dc8fb6 --- /dev/null +++ b/docs/sw/sw-storybook-cleanup-stage1-2026-10-19.md @@ -0,0 +1,67 @@ +# SW Storybook 2차 정리 1단계 — 지정 항목 삭제 + +- 판정: PASS. 범위는 `STORYBOOK_ONLY`이며 신규 업무 화면 생성이 아니므로 AI 화면 생성 Guard는 적용하지 않았습니다. +- 시작 상태: `D:\디자인시스템\HMDesign-SW`, `feature/sw-package`, `92830fe11db7f37eb6a45e8bbc6a5038ec579649`, Working Tree clean, upstream 대비 기존 로컬 Commit 2개. +- 사용자 요청에 따라 현재 브랜치에서 로컬 Commit만 수행합니다. Push·PR·다음 정리 단계는 수행하지 않습니다. + +## 적용 내용 + +삭제한 독립 Story 5개: + +- Responsive — `sw-header--responsive` +- Text Stroke — `sw-header--text-stroke` +- Dynamic Data — `sw-header--dynamic-data` +- Default — `sw-header--default` +- Controls — `sw-header--controls` + +Window Move Motion(`sw-header--window-move-motion`)에는 **단계별 진행 (3배 확대)** 섹션만 남겼습니다. 페이지 제목은 유지했고 다른 시연에 대한 머리말 설명은 제거했습니다. + +제거한 시연 섹션: + +- GIF 주요 3상태 (정적, 3배 확대) +- 실제 Hover · 창 이동 · 클릭 (1920) +- 이동 완료 실제 배치 (1920, 고정) +- 헤더 1080 미만 (1079 고정 · 768 실제 Hover) +- Reduced Motion + +해당 Story에서만 사용하는 `MotionDemo`, `RESPONSIVE_WIDTHS`, `DynamicDataDemo` 및 전용 타입·상수·목록 조작 함수도 제거했습니다. 공유 Fixture·Callback·함수는 유지했습니다. + +## 보존 및 검증 + +- 수정 전 현재 소스에 Storybook index 명령을 실행해 33개를 확보했습니다. 기존 `storybook-static`은 최신 소스와 목록이 달라 기준으로 사용하지 않았습니다. +- 최종 Build index는 28개입니다. 삭제 차이는 위 5개와 정확히 일치하고 나머지 ID·이름·순서·태그는 동일합니다. verification 태그도 그대로입니다. +- `Responsive More`, `Dynamic Controls`를 포함한 남은 Story 28개가 실제 Chrome에서 렌더링됩니다. +- 시작 Commit과 AST 선언 텍스트를 비교해 `WindowMoveMotion` 외 모든 남은 선언이 동일함을 확인했습니다. 단계별 섹션 JSX·`MOTION_STAGES`·`motionTime`·`MotionAt`·`MotionSpecimen`도 그대로입니다. +- 단계 9개, `zoom: 3` 및 실제 456×144px 표본, 정지 표본 3개 애니메이션의 원래 시간 위치, 실제 Hover 재생·1400ms 무한 반복·Pointer 누름 중 정지·Tooltip 숨김·이탈 복귀를 확인했습니다. +- More의 대표 필드 전환·Dropdown 열림, Dynamic Controls 항목 제거·복원 및 문서 목록 추가를 확인했습니다. +- 기존 보존 검증에서 390/768/1280/1440px Header overflow·높이, 속성창 크기, K 가이드, Colorize 및 편집 Input도 통과했습니다. +- Header 구현·공개 API·패키지 CSS·Story CSS·SVG/이미지·Storybook 설정은 시작 Commit과 동일합니다. 실제 반응형·텍스트 외곽선·동적 데이터 기능과 Controls 관련 설정은 유지됩니다. + +실행 결과: + +- `npm.cmd run build-storybook`: PASS. 패키지 사전 빌드 포함. +- `npm.cmd run typecheck:sw`: PASS. +- `npm.cmd exec -- tsc -p tsconfig.app.json --noEmit`: PASS. Story 파일 포함. +- `node packages/sw/tests/storybook-cleanup-stage1.browser.mjs`: **49/49 PASS**, 브라우저 오류 0. +- `node packages/sw/tests/detail-buttons.browser.mjs preservation docs/sw/storybook-cleanup-stage1-qa/preservation`: **15/15 PASS**, 브라우저 오류 0. +- `git diff --check`: PASS. + +Build에는 생성된 `var(...)` 유틸리티, OrgChart `:host-context`, chunk 크기 관련 경고가 있습니다. Build는 성공했으며 해당 코드·설정은 이번 변경 범위 밖입니다. + +검증 범위는 Chrome의 변경 Story 및 관련 보존 동작입니다. 나머지 모든 Story의 모든 상호작용과 Firefox 전체 회귀 검사는 이번에 재실행하지 않았습니다(`NOT VERIFIED`). + +## 테스트 참조와 증거 + +기존 `detail-buttons.browser.mjs`의 삭제된 Default/Controls 렌더링 참조를 Overview/Composition으로 옮겼고, Story 목록 비교에서 승인된 5개 삭제만 허용하도록 수정했습니다. 기존 baseline·검증 파일·증거는 삭제하거나 덮어쓰지 않았습니다. 전체 `verify` 모드의 Header 위치 비교는 대체 Story 기준 baseline이 필요하므로 필요 시 **새 증거 디렉터리**에 `baseline` 모드로 먼저 확보합니다. 이번에는 영향을 받는 `preservation` 모드와 범위 전용 검증을 실행했습니다. + +새 증거: + +- [수정 전 33개 목록](storybook-cleanup-stage1-qa/before-index.json) +- [수정 후 28개 목록](storybook-cleanup-stage1-qa/after-index.json) +- [범위 전용 검증 결과](storybook-cleanup-stage1-qa/result.json) +- [기존 보존 검증 결과](storybook-cleanup-stage1-qa/preservation/preservation-result.json) +- [통합 검증 요약](storybook-cleanup-stage1-qa/validation-summary.json) +- [Storybook Build 기록](storybook-cleanup-stage1-qa/storybook-build.txt) +- [정리 후 Window Move Motion 화면](storybook-cleanup-stage1-qa/window-move-motion.png) + +이전 1차 정리 보고서와 과거 검증 기록은 당시 상태를 보여 주는 기록으로 보존했습니다. diff --git a/docs/sw/sw-storybook-dropdown-consolidation-2026-10-19.md b/docs/sw/sw-storybook-dropdown-consolidation-2026-10-19.md new file mode 100644 index 0000000..7a65d89 --- /dev/null +++ b/docs/sw/sw-storybook-dropdown-consolidation-2026-10-19.md @@ -0,0 +1,125 @@ +# SW Storybook Dropdown 통합 — 2026-10-19 + +> 이 문서는 최초 통합 작업 당시의 기록입니다. 이후 확정된 메뉴는 **Header → Dropdown 단일 Story**이며 Composed Controls는 페이지 내부 그룹명입니다. 현재 기준과 검증은 [메뉴 계층 수정 보고서](sw-storybook-header-dropdown-page-2026-10-19.md)를 따릅니다. 아래 당시 결과와 증거는 보존합니다. + +최종 판정: **PASS (PASS-A ~ PASS-J)**. 범위는 `STORYBOOK_ONLY`이며 제품 컴포넌트·공개 API·디자인·AI 템플릿은 변경하지 않았습니다. 신규 업무 화면 생성이 아니므로 Navigation/FilterBar 선택 및 AI 화면 생성 Guard는 적용 대상이 아닙니다. + +- 작업 경로: `D:\디자인시스템\HMDesign-SW` +- 시작 브랜치: `feature/sw-package` +- 시작 HEAD: `c165753bbe24de6581c66704bde4ba3246049ec2` +- 시작 Working Tree: clean. 시작 시 기존 로컬 Commit은 upstream 대비 6개였습니다. +- 이번 요청의 경로·브랜치·로컬 Commit 지시를 적용했습니다. Push·PR·Publish·배포·다른 브랜치 수정은 수행하지 않습니다. +- 로컬 Commit SHA와 종료 Git Status는 완료 메시지에 기록합니다. Commit 자체의 SHA를 포함 파일에 기록하면 SHA가 달라지므로 이 문서에는 넣지 않습니다. + +## 조사와 삭제·보존 기준 + +실제 소스로 `storybook index`를 생성하여 수정 전 SW Story 28개를 확보했습니다. 오래된 정적 빌드나 이름 추측을 기준으로 삭제하지 않았습니다. + +실제 삭제한 4개 Story: + +- Layer Dropdown — `sw-header--layer-dropdown`: 레이어 목록·선택·상태 토글·상세 Callback·긴/다량/빈 목록 시연을 통합했습니다. +- Color Dropdown — `sw-header--color-dropdown`: 기본/사용자 색상, ByLayer/ByBlock, RGB 입력·검증, Colorize·상세 Callback을 통합했습니다. +- Line Style Dropdown — `sw-header--line-style-dropdown`: 선 종류 5개, 가중치 4개, User 값 편집, 스케일·상세 Callback을 통합했습니다. +- Text · Dimension Style Dropdown — `sw-header--text-dimension-style-dropdown`: 문자스타일 2개, 치수스타일 2개와 각각의 상세 Callback을 통합했습니다. + +관련 Story 중 보존한 목적: + +- Composed Controls — `sw-header--composed-controls`: 기존 ID를 유지하고 내용을 실제 조합 예제로 수정했습니다. +- Detail Buttons (Shared States) — `sw-header--detail-buttons`: 5개 공유 상세 버튼의 Default/Hover/Disabled/Callback 미연결 상태 검증입니다. 기존 verification 태그도 유지했습니다. +- Document Dropdown — `sw-header--document-dropdown`: 문서 선택·닫기·New/Open과 동적 문서 목록 검증이며 6개 속성 컨트롤과 목적이 다릅니다. +- Layer Detail · Input — `sw-header--layer-detail-input`: Figma 버튼 비교와 입력 편집·Enter/Escape·ReadOnly/Disabled·외부 값 갱신 검증입니다. +- Responsive More — `sw-header--responsive-more`: Breakpoint와 More 대표 필드 전환을 검증합니다. +- Additional Hover — `sw-header--additional-hover`: 추가 Hover 정책을 검증합니다. +- Colorize — `sw-header--colorize`: Colorize 아이콘의 별도 상태 검증입니다. +- Dynamic Controls / Composition / Interactive States / Overview: 구성 API·반응형·전체 Header·호스트 상태 연결 검증이므로 보존했습니다. +- 모든 Property Bar / Property Panel Story는 그대로 보존했습니다. + +## 최종 구성과 동작 + +메뉴는 `SW → Header → Dropdown → Composed Controls` 한 페이지입니다. 분류를 위해 별도 CSF 파일을 사용하되 `id: "sw-header"`로 **`sw-header--composed-controls`를 그대로 유지**합니다. 기존 CSF의 조합 호스트 함수는 `excludeStories`로 제외하여 중복 페이지가 생성되지 않습니다. + +페이지에는 레이어·색상·선스타일·문자스타일·치수스타일·상세보기 6개 그룹을 각각 한 번 표시합니다. `SWTheme`과 공개 `SWHeaderLayerMenu`, `SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu`, `SWHeaderProperties`를 실제 렌더링합니다. 기존 Story Fixture와 패키지 CSS/SVG를 재사용하며 디자인을 복제하지 않습니다. + +5개 Dropdown은 Controlled 열림 상태를 공유하여 한 번에 하나만 열립니다. 각 값은 호스트 상태에 반영되고 다른 속성을 변경하지 않습니다. 레이어 전구·눈꽃·잠금, 색상 모드·칩·RGB, 선 종류·가중치·스케일, 문자·치수 선택의 실제 Callback을 연결했습니다. Callback 기록과 현재 선택값은 컨트롤 밖 상태 줄에서 확인할 수 있습니다. + +접힌 **시연 설정**에 긴 레이어명·레이어 20개/사용자 색상 40개·빈 레이어 목록·컨트롤 Disabled·레이어 상태 표시 전용·메뉴 상세 Callback 미연결을 배치했습니다. 네이티브 설정 control은 기존 Overview와 같은 Storybook 호스트 조작 방식이며 제품 컨트롤이 아닙니다. Dropdown 컨트롤 자체에는 readOnly Prop이 없으므로 임의로 추가하지 않았습니다. 레이어 상태 Callback을 생략하면 패키지의 기존 `role=img` 표시 전용 아이콘을 사용합니다. + +**상세보기**는 기존 속성Bar·속성창 토글입니다. 공개 `SWHeaderPropertyBar`/`SWHeaderPropertyPanel`과 기존 속성 Fixture를 사용하며 편집값을 공유합니다. 선가중치 모드(ByLayer/ByBlock)를 고르면 숫자 속성을 모드 문자열로 덮어쓰지 않습니다. 속성창의 숫자 편집도 상단 선스타일 값에 반영됩니다. + +메뉴 하단 `레이어 상세` 등 5개 버튼은 기존처럼 호스트 Callback 후 메뉴를 닫고 Trigger로 Focus를 돌려줍니다. Callback 미연결 시 안전한 무동작을 유지합니다. 제공되지 않은 CAD 상세 팝업을 만들지 않았습니다. + +Overlay는 패키지의 기존 absolute Dropdown·fixed 속성창과 위치 보정을 그대로 사용합니다. Portal/Dim이나 제품 크기 override를 추가하지 않았습니다. 조합만 flex-wrap하여 작은 폭에서 줄바꿈합니다. 속성창 초기 위치 계산 뒤 Focus를 전달하는 호스트 처리를 추가했고 닫기/Escape 시 기존 Trigger로 복귀합니다. 기존 CSS는 변경하지 않고 새 CSS의 `.sw-composed-controls` 범위에서 호스트 배치만 구성했습니다. + +## 보존 결과와 Story 개수 + +- SW Story: **28 → 24**. +- 전체 저장소 Story: **347 → 343**. SW 외 index entry는 수정 전과 동일합니다. +- 기존 Story ID 변경: **없음**. 위 4개 삭제 외 새 ID 추가·기존 ID 교체가 없습니다. +- 나머지 23개 SW Story 선언과 공유 Fixture/함수는 시작 Commit과 동일합니다. 조합 함수·CSF meta/import만 필요한 범위에서 변경했습니다. +- Overview의 `sw-header--overview`, 16:9 Stage·Header 49px·Dropdown·속성Bar/속성창 연결을 보존했습니다. +- Window Move Motion의 「단계별 진행 (3배 확대)」, 9개 단계와 기존 모션 코드를 보존했습니다. +- `packages/sw/src`, 공개 export/types, 패키지 CSS·SVG·이미지, `packages/sw/ai`, AI 템플릿 자료, `src/sw/sw-header-overview.tsx`, 기존 `sw-stories.css`, `.storybook` 설정은 시작 Commit과 동일합니다. + +최종 유지 Story 24개 (접두사 `sw-header--`): + +- `overview`, `composed-controls`, `detail-buttons`, `interactive-states`, `window-move-motion`, `logo-slot` +- `document-dropdown`, `responsive-more`, `layer-detail-input`, `property-panel`, `property-panel-variants`, `k-guide` +- `additional-hover`, `property-bar`, `dynamic-controls`, `colorize`, `composition` +- `property-panel-none`, `property-panel-all`, `property-panel-circle`, `property-panel-expanded`, `property-panel-compare`, `property-shape-slot`, `property-fields` + +## 통합 검증 + +- SW Typecheck: `npm.cmd run typecheck:sw` — PASS (exit 0). +- SW Build: `npm.cmd run build-storybook`의 `prebuild-storybook → build:packages → build:sw` — PASS (exit 0). 중복 별도 SW Build는 실행하지 않았습니다. +- Storybook Typecheck: `npm.cmd exec -- tsc -p tsconfig.app.json --noEmit` — PASS (exit 0), 최종 소스 기준. +- Storybook Build: `npm.cmd run build-storybook` — PASS (exit 0), 최종 런타임 소스 기준. +- 신규 통합 Smoke Test: **229/229 PASS**, Chrome `155.0.8059.80`, 콘솔/page 오류 0. +- 이후 선가중치 공유 상태 보정에 영향받는 범위 재검사: **29/29 PASS**, 콘솔/page 오류 0. 기존 정상 검사는 반복하지 않았습니다. +- 기존 Overview 회귀 검사: **54/54 PASS**, 브라우저 오류 0. +- 기존 Header·속성창·K 가이드·Colorize·Input 보존 검사: **15/15 PASS**, 브라우저 오류 0. +- `git diff --check` — PASS. + +브라우저에서 390/768/1280/1440px의 페이지 가로 overflow 0, 필드 높이 38px와 기존 폭 234/192/284/164/164px, Hover 시 자동 열림 없음, Selected/On, Trigger 토글·Escape·외부 클릭 닫기·Focus 복귀를 확인했습니다. 각 메뉴와 하단 상세 버튼의 viewport 내 표시·실제 hit-test도 확인했습니다. 정상/오류 RGB·가중치·스케일 입력, Callback 1회, 레이어 Disabled, 다량 목록의 내부 스크롤과 상세보기 314px/28px 크기 및 값 공유도 검증했습니다. + +기존 Overview 검사에서는 16:9 Stage, 실제 Storybook iframe, Header 49px, 속성Bar·속성창 값 공유·확장·하단 접근·390px 화면의 Escape/More Focus 복귀 등을 확인했습니다. 검사 항목의 상세 값은 아래 JSON 증거에 있습니다. + +초기 로컬 브라우저 시도는 샌드박스의 `ERR_NETWORK_ACCESS_DENIED`로 차단되었고 localhost 접근이 허용된 실행으로 재검증했습니다. 이후 테스트 선택자·React 반영 대기 및 속성창 초기 Focus 문제를 수정했습니다. 초기 FAIL 결과와 로그도 새 증거 폴더에 남겼으며 최종 PASS로 덮어쓰지 않았습니다. 첫 Typecheck의 Callback 타입 오류도 수정한 뒤 영향을 받는 검사를 다시 실행했습니다. + +Build에는 기존 생성 CSS `var(...)`, chunk 크기·bundler timing 경고가 있습니다. 해당 제품 코드와 설정은 수정하지 않았으며 Build는 성공했습니다. + +Commit용 텍스트 로그는 줄 끝 공백·EOF 빈줄만 정규화했습니다. 정규화 전 원문은 같은 새 QA 폴더의 `raw-logs/*.log`에 로컬 보존했습니다(저장소의 기존 `*.log` ignore 적용). JSON 판정과 과거 증거는 변경하지 않았습니다. + +## 테스트·문서 참조 변경 + +`detail-buttons.browser.mjs`의 삭제된 문자/치수·색상 Story 접근을 Composed Controls로 옮겼습니다. 상세 버튼 Hover·Callback·닫기·Focus 검증은 유지했습니다. 기존 Overview/정리 1단계 검증의 inventory도 승인된 삭제 ID와 새 분류를 반영하도록 수정했습니다. 테스트를 제거해 PASS로 만들지 않았으며 신규 검증은 시작 Commit 기준으로 삭제·보존 및 제품 불변 범위를 별도로 확인합니다. + +현재 실행 코드에서 삭제한 Story로 이동하는 참조는 제거했습니다. 테스트의 삭제 허용 목록·과거 검증 문서·과거 index/스크린샷은 이력을 위해 보존했습니다. AI 템플릿 문서는 변경하지 않았습니다. + +변경 파일: + +- `src/sw/sw-header.stories.tsx` — 중복 4개 Story 및 전용 표본 제거, 조합 호스트 연결. +- `src/sw/sw-header-dropdown.stories.tsx` — 기존 ID를 유지한 단일 Dropdown CSF 등록. +- `src/sw/sw-composed-controls.css` — 조합 호스트의 줄바꿈·설정·상태 줄 배치. +- `packages/sw/tests/dropdown-consolidation.browser.mjs` — 범위 전용 회귀 검증, 필요한 후속 범위만 실행하는 followup 모드. +- `packages/sw/tests/storybook-inventory.mjs` — 승인된 삭제와 현재 SW Story 수집. +- `packages/sw/tests/detail-buttons.browser.mjs`, `overview.browser.mjs`, `storybook-cleanup-stage1.browser.mjs` — 유지할 검증의 Story 경로·목록 기준 갱신. +- 이 보고서와 `docs/sw/storybook-dropdown-consolidation-qa/`의 신규 증거 파일. 이전 QA 폴더는 변경하지 않았습니다. + +증거: + +- [수정 전 전체 index](storybook-dropdown-consolidation-qa/before-full-index.json) +- [통합 Smoke 결과 229개](storybook-dropdown-consolidation-qa/final/result.json) +- [최종 영향 범위 검사 29개](storybook-dropdown-consolidation-qa/release-followup/result.json) +- [기존 Overview 회귀 결과](storybook-dropdown-consolidation-qa/overview/chrome-result.json) +- [기존 보존 검사 결과](storybook-dropdown-consolidation-qa/preservation-run-02/preservation-result.json) +- [최종 Build 로그](storybook-dropdown-consolidation-qa/storybook-build-release.txt) +- [최종 Typecheck 로그](storybook-dropdown-consolidation-qa/storybook-typecheck-release.txt) +- [통합 화면](storybook-dropdown-consolidation-qa/final/composed-1440.png) +- [390px 선스타일 Overlay](storybook-dropdown-consolidation-qa/final/overlay-2-390.png) +- [390px 상세보기](storybook-dropdown-consolidation-qa/release-followup/composed-property-panel-390.png) + +## NOT VERIFIED + +Firefox/Safari 전체 회귀, 모든 유지 Story의 모든 상호작용, 스크린리더 전수 검증 및 Figma 원본의 신규 실시간 대조는 이번 범위에서 실행하지 않았습니다. 디자인 보존은 기존 패키지·CSS·자산 불변과 실제 Chrome 렌더링으로 확인했습니다. 실제 CAD 상세 화면·OS/파일 작업은 기존 호스트 Callback 밖의 기능이며 이번 Story 통합에 새로 구현하지 않았습니다. + +기존 `detail-buttons`의 전체 baseline 비교 모드와 정리 1단계 전체 suite는 이번에 재실행하지 않았습니다. 변경된 검증 경로는 신규 Smoke에서 확인했고, 필요한 기존 `preservation` 및 Overview suite를 실행했습니다. diff --git a/docs/sw/sw-storybook-header-dropdown-page-2026-10-19.md b/docs/sw/sw-storybook-header-dropdown-page-2026-10-19.md new file mode 100644 index 0000000..e7f3030 --- /dev/null +++ b/docs/sw/sw-storybook-header-dropdown-page-2026-10-19.md @@ -0,0 +1,90 @@ +# SW Storybook Header → Dropdown 단일 페이지 — 2026-10-19 + +**판정: PASS.** 최종 메뉴는 `SW → Header → Dropdown`입니다. Dropdown은 Header 바로 아래의 Story이며 별도 폴더나 Composed Controls 하위 메뉴가 없습니다. 페이지 제목은 **Dropdown**, 내부 컨트롤 그룹의 제목과 접근성 이름은 **Composed Controls**입니다. + +## 시작 상태와 범위 + +- 작업 경로: `D:\디자인시스템\HMDesign-SW` +- 브랜치: `feature/sw-package` +- 실제 시작 HEAD: `9482d45f340981c4b4ad6537cb678bf4afcdc681`, Working Tree clean. +- 요청에 기재된 `c165753bbe24de6581c66704bde4ba3246049ec2` 뒤에 직전 Dropdown 통합 로컬 Commit이 존재함을 확인했습니다. 기존 이력을 그대로 이어서 작업했습니다. +- 범위: `STORYBOOK_ONLY`. 신규 업무 화면 생성이 아니므로 AI 화면 생성 Guard·Navigation 선택은 적용하지 않았습니다. +- 이번 작업도 로컬 Commit만 생성하며 Push·PR·배포는 하지 않습니다. Commit SHA와 종료 상태는 완료 메시지에 기록합니다. + +## 메뉴와 ID + +`sw-header-dropdown.stories.tsx`의 CSF title을 `SW/Header`, 표시 이름을 `Dropdown`으로 변경했습니다. 기존 북마크와 테스트 경로를 유지하기 위해 export/ID는 그대로 유지합니다. + +- 최종 Dropdown Story ID: **`sw-header--composed-controls`** +- 사용자에게 표시되는 메뉴: **Header → Dropdown** +- 페이지 내부 그룹: **Composed Controls** +- 변경된 Story ID: 없음. +- `SW/Header/Dropdown`에 속하는 현재 Story: 0개. +- 다른 Header Story의 ID·이름·태그·선언은 그대로입니다. 이전 메뉴 계층은 역사적 before index에서만 비교 대상으로 읽습니다. + +6개 컨트롤은 기존 공개 `SWHeaderLayerMenu`, `SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu`, `SWHeaderProperties`를 재사용합니다. 내부 그룹명은 기존 `StorySection`으로 표시하며 컨트롤의 Props·Callback·상태 로직은 변경하지 않았습니다. 상세보기는 기존 속성Bar·속성창 연결을 유지합니다. + +## 삭제 전후 Story 목록 + +직전 통합 작업에서 삭제한 중복 Story 4개는 계속 미노출입니다. **이번 메뉴 계층 수정에서 추가로 삭제한 Story는 없습니다.** + +- `sw-header--layer-dropdown` +- `sw-header--color-dropdown` +- `sw-header--line-style-dropdown` +- `sw-header--text-dimension-style-dropdown` + +원래 기준 `c165753`에서는 SW Story **28 → 24**, 저장소 전체 **347 → 343**입니다. 이번 실제 시작 `9482d45` 기준으로는 SW **24 → 24**, 전체 **343 → 343**입니다. + +이번 수정 전후의 유지 ID 24개는 동일합니다(접두사 `sw-header--`). `composed-controls`의 표시 이름·title만 변경했습니다. + +- `overview`, `composed-controls`, `detail-buttons`, `interactive-states`, `window-move-motion`, `logo-slot` +- `document-dropdown`, `responsive-more`, `layer-detail-input`, `property-panel`, `property-panel-variants`, `k-guide` +- `additional-hover`, `property-bar`, `dynamic-controls`, `colorize`, `composition` +- `property-panel-none`, `property-panel-all`, `property-panel-circle`, `property-panel-expanded`, `property-panel-compare`, `property-shape-slot`, `property-fields` + +Document Dropdown은 문서 관리, Detail Buttons는 공통 버튼 상태, Layer Detail · Input은 입력 편집, Responsive More는 반응형 전환 검증 목적이므로 보존했습니다. Property Bar/Panel, Window Move Motion 및 나머지 Header Story도 유지했습니다. + +수정 전 목록은 직전 Commit에 대응하는 보존된 정적 빌드 index와 `git show HEAD`의 CSF 선언을 대조했습니다. 수정 과정에서 생성한 source index는 별도 `draft-source-index.json`으로 보존했고 최종 목록은 최종 Build index에서 확보했습니다. + +## 검증 결과 + +- SW Typecheck: `npm.cmd run typecheck:sw` — PASS. +- SW Build: `npm.cmd run build-storybook`의 사전 `build:packages → build:sw` — PASS. 동일 SW Build를 별도로 중복 실행하지 않았습니다. +- Storybook Typecheck: `npm.cmd exec -- tsc -p tsconfig.app.json --noEmit` — PASS. +- Storybook Build: `npm.cmd run build-storybook` — PASS. +- 관련 Chrome 브라우저 Smoke: **232/232 PASS**, 콘솔/page 오류 0건. +- `git diff --check` 및 Commit 전 Staged Diff 검사 — PASS. + +브라우저에서는 실제 manager의 Header 바로 아래 Dropdown 링크 1개, Composed Controls 링크 0개, 페이지 H1 Dropdown·그룹 H2/접근성 이름 Composed Controls를 확인했습니다. 6개 컨트롤과 기존 기본/사용자 색상·스타일 목록, 선택값 표시, Hover·Selected/On·Disabled, 각 Callback 1회, 다른 값 보존, Enter/방향키/Tab·Escape·외부 클릭 닫기·Focus 복귀를 검증했습니다. + +390/768/1280/1440px에서 기존 필드 크기와 페이지 가로 overflow 0, 메뉴/상세 버튼의 실제 hit-test·Overlay 노출을 확인했습니다. 상세보기 속성Bar 28px·속성창 314px, 편집값 공유·닫기/Escape·Focus 복귀도 통과했습니다. + +모든 유지 SW Story 24개의 실제 렌더링, Overview의 16:9 Stage와 Header 49px, Window Move Motion의 9개 3배 확대 단계를 확인했습니다. `packages/sw/src`, 공개 API·타입, CSS·SVG·이미지, `packages/sw/ai`, AI 템플릿 자료, Overview 구현과 기존 Story CSS·Storybook 설정은 변경하지 않았습니다. + +추가 정적 비교에서는 조합 호스트의 상태·Callback 로직과 공개 SW 컴포넌트 JSX 8개가 직전 Commit과 동일함을 확인했습니다(배치 들여쓰기 제외). 기존 Overview 54개 전체 회귀는 직전 작업에서 통과했고 해당 소스/스타일이 동일하므로 반복하지 않았습니다. 이번에는 관련 렌더링·Stage/높이를 새로 확인했습니다. + +Build의 기존 생성 CSS `var(...)`, chunk 크기·bundler timing 경고는 유지되며 Build 실패는 없습니다. 새 텍스트 로그는 끝 공백·EOF 빈줄만 정규화했고 원문은 새 QA 폴더의 로컬 `raw-logs/*.log`에 보존했습니다. 과거 QA 결과는 덮어쓰지 않았습니다. + +## 변경 파일과 증거 + +- `src/sw/sw-header-dropdown.stories.tsx`: Header 바로 아래 Dropdown으로 메뉴 표시 수정, ID 보존. +- `src/sw/sw-header.stories.tsx`: 페이지 제목 Dropdown, 내부 Composed Controls 그룹 표시. +- `packages/sw/tests/dropdown-consolidation.browser.mjs`: 새 계층·내부 그룹·24개 보존 검증 및 실제 컨트롤 회귀 유지. +- `packages/sw/tests/storybook-inventory.mjs`: 승인된 표시 이름 변경을 historical baseline 비교에 반영. +- `packages/sw/tests/storybook-cleanup-stage1.browser.mjs`: 같은 이름 변경만 허용하도록 목록 비교 갱신. +- `docs/sw/sw-storybook-dropdown-consolidation-2026-10-19.md`: 이전 결과 상단에 현재 메뉴 기준 안내 추가, 당시 내용·증거 보존. +- 이 보고서와 `docs/sw/storybook-dropdown-page-qa/`의 신규 증거. + +현재 ID가 유지되므로 다른 테스트의 URL을 변경할 필요는 없습니다. 과거 메뉴 계층은 역사적 문서·snapshot에 남기고 현재 기준을 새 보고서로 연결했습니다. 테스트를 제거하여 PASS로 처리하지 않았습니다. + +- [수정 전 index](storybook-dropdown-page-qa/before-full-index.json) +- [수정 후 index](storybook-dropdown-page-qa/smoke/after-full-index.json) +- [Story 목록과 기존 삭제 4개](storybook-dropdown-page-qa/smoke/story-inventory.json) +- [브라우저 검증 232개](storybook-dropdown-page-qa/smoke/result.json) +- [상태·Callback·공개 컴포넌트 보존 비교](storybook-dropdown-page-qa/source-preservation.json) +- [실제 Header → Dropdown 메뉴 화면](storybook-dropdown-page-qa/smoke/composed-manager.png) +- [최종 Build 로그](storybook-dropdown-page-qa/storybook-build.txt) + +## NOT VERIFIED + +Firefox/Safari 전체 회귀, 모든 유지 Story의 모든 상호작용, 스크린리더 전수 검사 및 Figma 실시간 재대조는 이번에 실행하지 않았습니다. 제품 디자인과 기능은 기존 구현·CSS·자산 불변 및 관련 Chrome 동작으로 확인했습니다. 실제 CAD/OS/파일 작업은 기존 호스트 Callback 밖의 기능입니다. diff --git a/docs/sw/sw-storybook-property-panel-comparison-2026-10-19.md b/docs/sw/sw-storybook-property-panel-comparison-2026-10-19.md new file mode 100644 index 0000000..b23d765 --- /dev/null +++ b/docs/sw/sw-storybook-property-panel-comparison-2026-10-19.md @@ -0,0 +1,118 @@ +# SW Storybook — 속성창 4개 상태 비교 통합 (2026-10-19) + +- 브랜치: `feature/sw-package` · 시작 HEAD `c705a1fc59fe8ecbce663bf4601638fde43553a1` · 시작 시 Working Tree Clean +- 범위: Storybook 전용 코드(`src/sw/sw-header.stories.tsx`, `src/sw/sw-stories.css`)와 검증 스크립트. SW 패키지 런타임·공개 API·AI 템플릿·Overview·Dropdown Story는 변경하지 않음. +- 증거: `docs/sw/property-panel-comparison-qa/` (기존 QA 폴더는 덮어쓰지 않음) + +## 1. 수정 전 속성창 관련 Story 목록 (실제 선언 기준) + +| Story ID | 이름 | 실제 기능·목적 | 분류 | +| --- | --- | --- | --- | +| `sw-header--property-panel-compare` | Property Panel · 4개 비교 | 같은 `SWHeaderPropertyPanel` 4개 상태를 한 화면에 실측 크기와 함께 표시 | **유지** | +| `sw-header--property-panel-variants` | Property Panel Variants | `PropertyPanelDemo standalone`: 상태 전환 버튼으로 **한 번에 1개** 단독 패널. 데이터 조작 버튼은 `Property Panel`과 동일 | **삭제** (중복) | +| `sw-header--property-panel-none` | Property Panel · 선택 없음 | 314×256 단독 패널 1개 | **삭제** (비교 화면과 중복) | +| `sw-header--property-panel-all` | Property Panel · 전체 선택 | 314×361 단독 패널 1개 | **삭제** (중복) | +| `sw-header--property-panel-circle` | Property Panel · 원 1개 | 314×658 단독 패널 1개 | **삭제** (중복) | +| `sw-header--property-panel-expanded` | Property Panel · 모두 펼침 | 314×754 단독 패널 1개 | **삭제** (중복) | +| `sw-header--property-panel` | Property Panel | Header 연결 열기/닫기, Controlled/Uncontrolled, 외부 Open, 폭 전환, 속성 추가·삭제·순서·제한 상태 | **보존** (Header 연동·API 검증) | +| `sw-header--property-shape-slot` | Property Panel · 형상 Slot | `shapeContent` 확장 계약(기본/null/ReactNode/Render Prop) | **보존** (API 검증) | +| `sw-header--property-fields` | Property Panel · 필드 13개 | 필드 Default/Hover 표본 + 실제 조작 | **보존** (필드 검증) | +| `sw-header--property-bar` | Property Bar | 속성Bar 독립 기능 | **보존** | +| `sw-header--layer-detail-input` | Layer Detail · Input | Input 독립 검증 | **보존** | +| `sw-header--interactive-states` | Interactive States | Header 공통 Hover/Selected(속성창 토글 포함) | **보존** | +| `sw-header--detail-buttons` | Detail Buttons (Shared States) | 공통 상세 버튼 상태 | **보존** | + +삭제한 5개는 모두 비교 화면과 같은 `PropertyState`/`SWHeaderPropertyPanel` + 같은 fixture를 렌더링했고, 고유 기능 검증은 없었습니다(Variants의 데이터 조작 버튼은 `Property Panel`에 동일하게 남아 있음). + +## 2. 유지한 4개 상태 비교 Story + +- ID `sw-header--property-panel-compare`, 이름 `Property Panel · 4개 비교`, 페이지 제목 `속성창 4개 상태 비교` — 모두 유지. +- 상태명·순서 유지(코드 `PROPERTY_STATES`): ① 선택된 객체 없음 ② 전체 객체 선택 ③ 원 1개 선택 ④ 모든 항목 펼침. 각 카드 상단 캡션(상태명 · Figma 노드 · 크기 · 측정값)은 패널 밖 `figcaption`이라 제품 디자인에 영향 없음. +- 변경: 줄바꿈 flex → 2열 × 2행 grid(간격 24px, 패널 원래 크기). 페이지를 뷰포트 높이로 고정하고 Inner 스크롤 영역(`[data-compare-scroll]`)만 가로·세로 스크롤. 설명 문구에서 "폭이 부족하면 줄바꿈합니다" 등 불필요한 문장 제거. 삭제된 개별 Story가 보여주던 Callback 기록을 대신해 한 줄 로그(`상태: callback`)를 추가. +- Storybook 전용 배치 예외 1건: 제품 CSS의 `.hm-sw-property { max-height: calc(100dvh - 8px) }`가 낮은 뷰포트에서 754px 패널을 줄이지 않도록 비교 grid 안에서만 `max-height: none` (Overview Stage와 같은 방식). 패키지 CSS는 미변경. + +## 3·4. 삭제한 Popup 시연 / 삭제된 Story ID + +`sw-header--property-panel-variants`, `sw-header--property-panel-none`, `sw-header--property-panel-all`, `sw-header--property-panel-circle`, `sw-header--property-panel-expanded` + +함께 정리한 Story 전용 코드: `PropertyStateStory`(삭제된 4개 전용), `PropertyPanelDemo`의 `standalone` 분기(Variants 전용). 제품 컴포넌트·타입·CSS·SVG·형상 Slot은 삭제하지 않음. + +## 5. 최종 Story 개수 + +| | 수정 전 | 수정 후 | +| --- | --- | --- | +| SW Story | 24 | **19** | +| 전체 저장소 Story | 343 | **338** | + +남은 19개의 ID·이름·title·tags는 수정 전과 동일(자동 비교 PASS). Dropdown(`sw-header--composed-controls`, 이름 `Dropdown`, title `SW/Header`) 동일. + +## 6~8. 배치·크기·스크롤 검증 (실제 좌표, Chrome, 높이 900) + +| 폭 | ①(x,y) | ②(x,y) | ③(x,y) | ④(x,y) | 열/열/행 간격 | Inner client→scroll (W / H) | +| --- | --- | --- | --- | --- | --- | --- | +| 390 | 16,213 | 354,213 | 16,664 | 354,664 | 24/24/24 | 358→652 / 672→1271 | +| 768 | 23,200 | 361,200 | 23,651 | 361,651 | 24/24/24 | 722→722 / 677→1271 | +| 1280 | 38,215 | 376,215 | 38,666 | 376,666 | 24/24/24 | 1203→1203 / 647→1271 | +| 1440 | 120,217 | 458,217 | 120,668 | 458,668 | 24/24/24 | 1200→1200 / 644→1271 | + +- 같은 행 y 일치, 같은 열 x 일치, 2열이 1열 오른쪽·2행이 1행 아래 → 4개 폭 모두 **2열 × 2행 PASS**. +- 패널 크기(모든 폭): 314×256 / 314×361 / 314×658 / 314×754 **PASS**. +- 문서 자체는 가로·세로 스크롤 없음(페이지 높이 무제한 확장 없음). Inner 끝까지 스크롤 시 754px 패널 하단·우측이 스크롤 영역 안에 완전히 보임. 390px은 Inner 가로 스크롤로 2열 유지(1열 전환·축소 없음) **PASS**. + +## 9. Dropdown / Input / Focus / 닫기 + +- Input: 원 1개 패널 반지름 Enter 확정 → Callback 기록, 모두 펼침 패널 값 불변(상태 독립). Escape 편집 취소, Focus 패널 내부 유지, Tab 이동 정상. +- Dropdown(레이어): 1행 패널·2행 패널 모두 열림·항목 표시·뷰포트 내부. 열린 채 Inner를 120px 스크롤해도 필드에 붙어 이동(fixed overlay가 분리되지 않음). Escape 닫힘 + 필드로 Focus 복귀. 항목 선택 시 해당 패널에만 Callback. +- 도구 토글 `aria-pressed` 패널별 독립, 그룹 펼침 후 접으면 256px 복귀(다른 패널 361px 유지), 닫기 버튼 → 해당 패널 `onClose` Callback. + +## 10. 기존 Header / Overview 보존 + +- Overview: Header 49px·Stage 렌더 PASS. Dropdown Story: composed controls 렌더 PASS, 기존 기능 스크립트(`dropdown-consolidation.browser.mjs`) 223개 기능 체크 PASS. +- Window Move Motion·K Guide·Property Bar·Layer Detail · Input·형상 Slot·필드 13개 렌더 PASS. `Property Panel`(Header 연결) 열기/Escape 닫기 PASS. + +## 11. 제품 런타임·API 미변경 + +`git diff HEAD -- packages/sw/src packages/sw/ai packages/sw/package.json packages/ui packages/org-chart packages/org-chart-react docs/sw/ai-template src/sw/sw-header-overview.tsx src/sw/sw-header-dropdown.stories.tsx .storybook` → 변경 없음. + +## 12. 변경 파일 + +- `src/sw/sw-header.stories.tsx` — 5개 Story·전용 헬퍼 삭제, 비교 화면 grid·스크롤·로그 +- `src/sw/sw-stories.css` — 비교 페이지 레이아웃(Story 전용) +- `packages/sw/tests/storybook-inventory.mjs` — `retiredPropertyPanelIds` 추가 +- `packages/sw/tests/followup-four.browser.mjs`, `packages/sw/tests/detail-buttons.browser.mjs` — 삭제된 ID 참조를 비교 Story의 `[data-compare]` 범위로 교체, 기대 개수 24→19 +- `packages/sw/tests/property-panel-comparison.browser.mjs` — 신규 검증 스크립트(`before` / `verify`) +- `docs/sw/property-panel-comparison-qa/` — 수정 전후 증거 +- 과거 검토·검증 문서(`sw-first-pass-cleanup-review`, `sw-storybook-screen-review` 등)의 옛 ID는 당시 기록으로 보존. + +## 13. Typecheck / Build + +| 항목 | 결과 | +| --- | --- | +| `npm run typecheck:sw` | PASS | +| `npm run build:sw` | PASS | +| Storybook Typecheck `npx tsc -b` | PASS | +| `npm run build-storybook` | PASS | +| `git diff --check` | PASS | + +## 14. 브라우저 검증 (Chrome headless, 새 static build) + +| 스크립트 | 결과 | 증거 | +| --- | --- | --- | +| `property-panel-comparison.browser.mjs verify` | **59/59 PASS**, 콘솔 오류 0 | `verify/` | +| `followup-four.browser.mjs` (비교 Story로 이전) | 39/39 PASS | `legacy-followup-four/` | +| `detail-buttons.browser.mjs preservation` | 15/15 PASS | `legacy-detail-buttons-preservation/` | +| `property-fields.browser.mjs` | 77/77 PASS | `legacy-property-fields/` | +| `property-close.browser.mjs` | 6/6 PASS | `legacy-property-close/` | +| `dropdown-consolidation.browser.mjs` | 223 PASS / 4 FAIL (아래) | `legacy-dropdown/` | + +`dropdown-consolidation`의 4개 FAIL은 이전 단계 기준선에 고정된 단언입니다: 28→24 / 24 개수 2건, "삭제 외 선언 동일" 1건(이번에 선언 삭제), "`src/sw/sw-stories.css` 미변경" 1건(이번에 Story CSS 수정). 이번 작업의 의도된 변경이며 Dropdown 기능 체크는 모두 PASS입니다. 이 스크립트는 당시 단계 기록이라 수정하지 않았습니다. + +수정 전 스크린샷: `before/before-compare-1440.png`(4개가 한 줄), `before/before-property-panel-*.png`. 수정 후: `verify/compare-<폭>-top.png` / `-end.png`, `dropdown-*.png`. + +## 15. NOT VERIFIED + +- Firefox·Safari 등 Chrome 외 브라우저(이번 작업에서 실행하지 않음). +- 개발 서버(6024) 화면 — 다른 worktree의 서버일 수 있어 사용하지 않고 static build로만 검증. +- 실제 Storybook Manager UI에서의 사이드바 표시(index.json으로 목록만 검증). +- `overview.browser.mjs`, `overview-firefox.browser.mjs`, `storybook-cleanup-stage1.browser.mjs`, `ai-template-*` 스크립트는 재실행하지 않음(Overview는 신규 스크립트에서 렌더·Header 49px만 확인). +- 스크린리더 실사용. diff --git a/docs/sw/sw-storybook-screen-review-2026-10-19.md b/docs/sw/sw-storybook-screen-review-2026-10-19.md new file mode 100644 index 0000000..3c211c1 --- /dev/null +++ b/docs/sw/sw-storybook-screen-review-2026-10-19.md @@ -0,0 +1,308 @@ +# SW Header 메인 개선 및 Storybook 화면별 검토 — 2026-10-19 + +**최종 판정: PASS — 요청한 Overview 개선·28개 화면 조사 범위.** 다른 Story의 삭제·통합·이름 변경·재분류는 적용하지 않았습니다. + +- 시작: `D:\디자인시스템\HMDesign-SW`, `feature/sw-package`, HEAD `50bf5bda8e956a4973b923d64131f2f2285bd38c`, Working Tree clean, 기존 로컬 Commit 3개. +- 실제 수정 Story: **Overview — `sw-header--overview`**. 공개 `@hm-design/sw` 컴포넌트를 사용합니다. +- Story 수는 **28 → 28**이며 ID·이름·순서·태그가 그대로입니다. 다른 27개 Story 선언은 시작 Commit과 동일합니다. +- `packages/sw/src`, 공개 API, 패키지 CSS·자산, 기존 QA 기록과 디자인 명세는 수정하지 않았습니다. +- Git 정책: 현재 브랜치에 로컬 Commit만 생성. Push·PR·배포·새 브랜치 생성 없음. Commit Hash와 최종 Git 상태는 완료 메시지에 기록합니다. + +## 메인 화면의 변경 + +이전에는 `Figma 기준 1920 × 49`와 `선택 상태`라는 고정 1920px Header 표본 두 개를 표시했습니다. 이 두 시연 영역과 긴 설명을 제거하고, 하나의 실제 Header와 편집 가능한 미리보기로 바꿨습니다. `SW Header` 페이지 제목은 한 번만 표시합니다. + +- [수정 전](storybook-overview-qa/overview-before.png) +- [수정 후](storybook-overview-qa/overview-after.png) +- [Storybook 사이드바가 열린 실제 화면](storybook-overview-qa/overview-manager.png) +- [전체 펼침 팝업](storybook-overview-qa/overview-after-expanded.png) +- [팝업 하단 스크롤·편집](storybook-overview-qa/overview-after-scrolled.png) +- [작은 Inner에서 하단 접근](storybook-overview-qa/overview-narrow.png) + +### 16:9 Stage와 큰 팝업 처리 + +기존 StoryPage의 실제 `.sb-page-inner` 안에서 제목·시연 설정·상태 줄을 제외한 남은 영역을 `ResizeObserver`로 측정합니다. `width = min(사용 가능한 폭, 사용 가능한 높이 × 16 / 9)`, `height = width × 9 / 16`으로 두 방향 모두 맞추고 중앙 정렬합니다. iframe 자체 크기를 사용하므로 Storybook 사이드바·툴바·미리보기 크기 변경에도 다시 계산됩니다. + +실측 예: + +- iframe 1920×1080 / 1440×900: Stage **1200×675px**. 기존 Inner 최대 폭을 따릅니다. +- iframe 1280×720: **896.875×504.5px**. 높이가 크기 제한입니다. +- iframe 768×600: **683.547×384.5px**. +- iframe 390×844: **358×201.375px**. +- iframe 1000×500: **505.766×284.5px**. 낮은 화면에서도 폭만으로 계산하지 않습니다. +- 1440×1000 브라우저에서 실제 Storybook manager 표시: 미리보기 iframe 1140×960, Stage **1071.594×602.766px**. +- 모든 조건의 Header는 **49px**, 속성Bar는 기존 **28px**입니다. Header의 문자·아이콘·버튼·Dropdown을 확대/축소하지 않습니다. + +Stage는 내부 스크롤 영역이며 미리보기 내용의 최소 폭은 390px입니다. Stage가 그보다 좁으면 가로 스크롤을 제공합니다. 팝업의 **314×256 / 314×361 / 314×658 / 314×754px**는 그대로입니다. 전체 펼침 팝업이 Stage 높이보다 크면 세로 스크롤로 하단 XYZ·푸터에 접근합니다. 390px 화면에서도 실제 Z 입력·확정과 Escape 후 More Focus 복귀를 확인했습니다. + +Header의 공개 `propertyPanel` 타입은 위치 `style`을 받지 않으므로 Overview에만 한정한 Story CSS로 팝업을 Header 아래의 절대 배치로 바꿨습니다. `top/left/max-height`만 배치 목적에 맞게 조정하며 자연 폭·폰트·간격·색·모양은 유지합니다. 문서 목록이 열린 경우에만 문서 wrapper의 쌓임 순서를 올려 속성Bar에 가려지지 않게 했습니다. 중첩 속성 Dropdown은 기존 fixed 위치 계산과 z-index를 사용합니다. 이 예외는 다른 Story와 제품 CSS에 적용되지 않습니다. + +### 연결한 기능과 상태 + +- 문서 목록: 선택·닫기·New 목록 추가, Open Callback. Storybook 호스트 목록만 변경하며 실제 파일 열기/저장은 수행하지 않습니다. +- 레이어: 선택·전구·눈꽃·잠금과 상세 Callback. Header와 속성창은 같은 레이어 목록·현재 값을 사용합니다. +- 색상: 기본/사용자 팔레트·ByLayer/ByBlock·RGB 검증·Colorize·상세 Callback. Header와 속성창이 같은 RGB 상태를 사용합니다. +- 선스타일: 선 종류·가중치·User 값·스케일·상세 Callback. ByLayer/ByBlock 가중치 모드는 숫자 속성을 모드 문자열로 덮어쓰지 않습니다. +- 문자스타일·치수스타일: 각각의 선택 상태와 상세 Callback. 다른 속성 데이터에 억지로 동기화하지 않습니다. +- More: 기존 반응형 정책대로 감춰진 필드·속성Bar·속성창에 접근합니다. 모든 Dropdown을 동시에 펼치지 않습니다. +- 속성Bar: 기존 `BAR_FIXTURE`의 형상 필드와 공개 `SWHeaderPropertyBar` 편집 동작을 사용합니다. 형상 값은 속성창과 공유하며 Enter·Escape·min 검증·외부 값·Disabled/ReadOnly·필드 추가/제거를 연결했습니다. CAD 계산 관계를 새로 만들지 않았습니다. +- 속성창: Header 열기·닫기 버튼·Escape·Focus 복귀, 레이어/색상/선스타일 Dropdown, 숫자 편집·게이지·4개 선택 상태·그룹 펼침·기본/null 형상 Slot. +- 홈·인쇄·가이드·창 이동·최소화·종료는 기존 버튼과 Callback을 유지합니다. 실제 CAD/OS 동작은 호스트 소유이며 Storybook에서는 Callback을 기록합니다. + +선택 상태와 외부 값·추가 필드·제한 상태·형상 Slot 설정은 **Stage 밖의 Storybook 전용 시연 설정**입니다. 기존 Storybook 조작 방식에 맞춰 native label/select/checkbox/button을 사용했으며, 제품 Header에 추가 버튼을 넣지 않았습니다. 기존 Property Bar Story와 다른 Story의 상태 관리 코드는 변경하지 않았습니다. + +## 검증 결과와 재사용 근거 + +이번에 실행: + +- `npm.cmd run typecheck:sw`: PASS. +- `npm.cmd exec -- tsc -p tsconfig.app.json --noEmit`: PASS. 새 Overview와 Story 파일 포함. +- `npm.cmd run build:sw`: PASS. 재생성 전후 `packages/sw/dist/index.js` 해시도 동일했습니다. +- `npm.cmd run build-storybook`의 패키지 사전 빌드와 Storybook Build: PASS. 이후 Storybook 코드 수정분은 `npm.cmd exec -- storybook build -o storybook-static --disable-telemetry`로 최종 빌드했습니다. +- `overview.browser.mjs`: **53/53 PASS**. Chrome 155.0.8059.80, Inner 6개 크기, 실제 manager iframe, Dropdown 선택/전환/닫기, 공유 값, 입력 검증, 게이지, Focus, 4상태 크기, 내부 스크롤. +- `overview.browser.mjs docs/sw/storybook-overview-qa overlays`: **19/19 PASS**. 상세 Callback 5종, Header 색상 모드 표시/직접 색상 복귀, 문서 첫 행 가림, 작은 Inner 중첩 Dropdown의 폭·하단 행 클릭·Escape. +- `overview-firefox.browser.mjs`: **9/9 PASS**. 설치된 Firefox 158.0, 1400/500px 창에서 Stage·Header 높이·원래 754px 팝업·하단 접근·닫기/Focus. +- 수정 전 28개 모두 실제 Chrome 초기 렌더링·브라우저 오류 0을 확인했습니다. 수정 후 나머지 27개 Story 선언 동일, CSS의 기존 구간 동일, 패키지 소스 동일을 확인했습니다. +- Git Diff의 범위·공백 오류와 Commit 직전 Staged Diff를 검토했습니다. + +경고: + +- Storybook Build는 생성 유틸리티의 `var(...)`, OrgChart `:host-context`, chunk 크기 경고를 포함하지만 성공했습니다. 해당 코드·설정은 변경하지 않았습니다. +- Firefox는 기존에도 보고된 `/sb-common-assets/nunito-sans-regular.woff2` 글꼴 다운로드 경고가 있습니다. 정확히 이 글꼴 경고만 infrastructureWarnings로 구분하고 SW runtime 오류는 0인지 별도로 검사했습니다. [원래 인프라 경고 포함 결과](storybook-overview-qa/firefox-initial-infrastructure-result.json)와 [최종 Firefox 결과](storybook-overview-qa/firefox-result.json)를 함께 보존합니다. 이전 [Firefox 검증 기록](sw-header-firefox-range-close-verification-2026-10-19.md)에도 같은 경고가 있습니다. + +재사용한 과거 PASS — 이번 실행 결과와 구분: + +- [1단계 정리](sw-storybook-cleanup-stage1-2026-10-19.md): 33→28, 범위 검증 49/49, 기존 보존 15/15. 이번에는 현재 28개 ID·이름·태그 유지와 새 메인 동작을 별도로 검증했습니다. +- [속성 필드 검증](sw-property-fields-verification-2026-10-19.md): 필드 77/77, Header 회귀 257 checks 등은 패키지·기존 Story 구현이 동일하므로 관련 근거로 재사용합니다. +- [Firefox 게이지](sw-header-firefox-range-close-verification-2026-10-19.md): 기존 29/29의 게이지 디자인·엔진별 동작은 수정하지 않았습니다. 이번 메인의 게이지 상태 연결은 Chrome에서 새로 검증했습니다. +- 과거 baseline과 1단계 전용 검증 스크립트는 당시의 고정 화면·선언을 기준으로 한 기록입니다. Overview의 의도된 변경으로 무효화되는 화면/선언 동일성 검사를 현재 메인의 합격 기준으로 재사용하지 않았고, 기존 증거를 덮어쓰지 않았습니다. + +**NOT VERIFIED:** 다른 27개 Story의 모든 인터랙션에 대한 새 전체 회귀, Firefox의 메인 전체 Dropdown·속성Bar·게이지 연동, 새로운 전체 접근성 인증, CAD/파일/OS 실제 연동. 신규 업무 화면 생성이 아닌 기존 Storybook Reference 수정이므로 AI 화면 생성 Guard는 적용 대상이 아닙니다. + +증거: [Chrome](storybook-overview-qa/chrome-result.json), [중첩 Dropdown](storybook-overview-qa/chrome-overlays-result.json), [Firefox](storybook-overview-qa/firefox-result.json), [원본 화면 조사](storybook-overview-qa/screen-survey.json), [수정 전 ID](storybook-overview-qa/before-index.json), [수정 후 ID](storybook-overview-qa/after-index.json). + +변경 파일: + +- `src/sw/sw-header.stories.tsx` — Overview 연결만 교체. +- `src/sw/sw-header-overview.tsx` — Storybook 전용 호스트 상태와 Inner 크기 계산. +- `src/sw/sw-stories.css` — Overview에만 적용되는 레이아웃·스크롤·팝업 위치. +- `packages/sw/tests/overview.browser.mjs` — 메인·중첩 Overlay 검증. +- `packages/sw/tests/overview-firefox.browser.mjs` — 설치된 Firefox 검증. +- 이 보고서 및 `docs/sw/storybook-overview-qa/`의 새 목록·조사 데이터·화면·검증 기록. [전체 변경 파일 목록](storybook-overview-qa/changed-files.json), [통합 요약과 소스 해시](storybook-overview-qa/validation-summary.json). + +## 추가 정리 후보 — 이번에는 제안만 + +**KEEP 11 / SIMPLIFY 6 / MERGE REVIEW 3 / REMOVE REVIEW 1 / QA 7.** 사용자 승인 없이 적용한 항목은 없습니다. 삭제한 Default/Controls/Responsive/Text Stroke/Dynamic Data는 후보에서 제외했습니다. + +- 우선 통합 검토: Property Panel Variants, Additional Hover, Layer Detail · Input의 상세 버튼 부분. +- 삭제 검토: Colorize. Color Dropdown의 대응 시연 및 테스트 참조를 먼저 이전해야 합니다. +- 길이 축소 검토: Interactive States, Document/Layer/Color/Line Style Dropdown, Responsive More. +- 개별 속성창 4개는 상태별 고정 치수·직접 검증 URL을 가진 QA 표본입니다. Compare/Variants와 겹치는 부분이 있어도 즉시 삭제할 근거는 아닙니다. +- Dynamic Controls와 Composition은 각각 `controls`와 `hiddenControls/menuOrder`를 보여 줍니다. API 차이가 있어 유지 권장입니다. +- 별도의 Input Story는 없습니다. Layer Detail · Input 전체를 삭제하면 독립 Input 시연도 사라집니다. + +아래 V-01~V-27은 실제 manager 사이드바 표시 순서입니다. V-28 Detail Buttons는 `verification` 태그로 기본 숨김이며 직접 URL로 접근합니다(원본 index에는 첫 번째). [관측한 사이드바 순서](storybook-overview-qa/manager-story-order.json). + +Story 링크는 `npm.cmd run storybook` 실행 후 기본 포트 `http://localhost:6024` 기준입니다. 이번 자동 검증은 별도 임시 로컬 포트에서 수행했습니다. 스크린샷은 메인 외에는 수정 전 1440×1000 초기 화면이며, 긴 페이지 전체 내용은 원본 DOM 섹션 조사와 소스를 함께 확인했습니다. **28개 초기 렌더링은 PASS이며, 표의 기능 설명을 모든 인터랙션의 신규 PASS로 해석하면 안 됩니다.** + + +| 번호 | Story 이름 | Story ID | 현재 내용 | 정리 제안 | 영향도 | +|---|---|---|---|---|---| +| V-01 | [Overview](http://localhost:6024/?path=/story/sw-header--overview) | `sw-header--overview` | 통합 시연 / 사용자: 16:9 Stage에서 Header·전체 Dropdown·속성Bar·속성창·공유 속성을 조작. | **KEEP** — 현재 메인으로 유지. | 중간 | +| V-02 | [Interactive States](http://localhost:6024/?path=/story/sw-header--interactive-states) | `sw-header--interactive-states` | 상태 비교 / 사용자·QA: 12개 섹션: Host state, Hover/Selected/Disabled, 토글, 창 버튼 Callback, 긴 파일명. | **SIMPLIFY** — 반복 Header 표본과 설명을 상태별로 축소 검토. | 낮음 | +| V-03 | [Window Move Motion](http://localhost:6024/?path=/story/sw-header--window-move-motion) | `sw-header--window-move-motion` | 단계별 실컴포넌트 정지 표본 / QA: 기존 9단계의 창 이동 모션을 3배 확대. | **KEEP** — 이번에 확정한 단계별 섹션 그대로 유지. | 낮음 | +| V-04 | [Composed Controls](http://localhost:6024/?path=/story/sw-header--composed-controls) | `sw-header--composed-controls` | 하위 컴포넌트 조합 / 사용자: 레이어·색상·상세보기, 선·문자·치수 공개 하위 컴포넌트와 그룹 Hover. | **KEEP** — 독립 조합 API 사용 예제로 유지. | 중간 | +| V-05 | [Logo Slot](http://localhost:6024/?path=/story/sw-header--logo-slot) | `sw-header--logo-slot` | 설정 예제 / 사용자: 기본 임시 로고, 가로형 logoSrc, 세로형 React logo, 미전달 4개 표본. | **KEEP** — 로고 슬롯 계약 예제로 유지. | 낮음 | +| V-06 | [Document Dropdown](http://localhost:6024/?path=/story/sw-header--document-dropdown) | `sw-header--document-dropdown` | 실제 조작+정적 상태 / 사용자·QA: 18개 섹션: 문서 선택·닫기·New/Open·현재 문서 위치·Hover·18개/빈 목록·긴 이름·390px. | **SIMPLIFY** — 반복 현재 문서/Hover 표본을 한 비교 구역으로 줄이는 방안 검토. | 중간 | +| V-07 | [Layer Dropdown](http://localhost:6024/?path=/story/sw-header--layer-dropdown) | `sw-header--layer-dropdown` | 실제 조작+정적 상태 / 사용자·QA: 19개 섹션: 전구·눈꽃·잠금, 상태 혼합, 선택, 긴/빈/많은 레이어, 6개 좁은 폭. | **SIMPLIFY** — 중복 Header 표본을 줄이고 아이콘 상태표·예외 사례 유지 검토. | 중간 | +| V-08 | [Color Dropdown](http://localhost:6024/?path=/story/sw-header--color-dropdown) | `sw-header--color-dropdown` | 실제 조작+디자인 비교 / 사용자·QA: 9개 섹션: 팔레트·사용자 색상 40개·ByLayer·RGB 입력·Colorize·상세 Callback. | **SIMPLIFY** — 반복 Default/Hover Header와 설명을 축소; Colorize 통합 목적지로 검토. | 중간 | +| V-09 | [Line Style Dropdown](http://localhost:6024/?path=/story/sw-header--line-style-dropdown) | `sw-header--line-style-dropdown` | 실제 조작+디자인 비교 / 사용자·QA: 8개 섹션: 3열 선 종류·가중치·스케일, 현재 행/상세 Hover, 390px. | **SIMPLIFY** — 중복 Default/Hover를 줄이고 3열 입력·좁은 화면 사례 보존 검토. | 중간 | +| V-10 | [Text · Dimension Style Dropdown](http://localhost:6024/?path=/story/sw-header--text-dimension-style-dropdown) | `sw-header--text-dimension-style-dropdown` | 실제 조작+디자인 비교 / 사용자·QA: 문자·치수스타일 목록과 각 행·상세 Hover, 선택 Callback 등 6개 섹션. | **KEEP** — 서로 다른 두 필드의 목록 계약을 함께 확인하는 현 구성 유지. | 낮음 | +| V-11 | [Responsive More](http://localhost:6024/?path=/story/sw-header--responsive-more) | `sw-header--responsive-more` | 반응형 실제 조작+폭 표본 / 사용자·QA: 1440/768/390 조작 구역 3개 + 경계 폭 16개. More 대표 필드 전환과 Callback. | **SIMPLIFY** — 경계 폭 표본을 접는 방식 등 화면 길이 축소 검토. 기능은 유지 권장. | 중간 | +| V-12 | [Layer Detail · Input](http://localhost:6024/?path=/story/sw-header--layer-detail-input) | `sw-header--layer-detail-input` | 상세 버튼+독립 Input / 사용자·QA: 6개 섹션: Figma PNG, 레이어 상세 3상태, Input Default/Hover/ReadOnly/Disabled/Focus 및 입력·IME·확정/취소. | **MERGE REVIEW** — 상세 버튼 비교는 Detail Buttons로 옮기는 방안 검토. 독립 Input 시연은 남겨야 함. | 중간 | +| V-13 | [Property Panel](http://localhost:6024/?path=/story/sw-header--property-panel) | `sw-header--property-panel` | Header 연동과 데이터 변형 / 사용자·QA: 4가지 선택, Controlled/Uncontrolled, 외부 Open/값, 항목 추가·삭제·순서, 제한 상태·게이지. | **KEEP** — 고급 데이터/API 검증 화면으로 유지. | 중간 | +| V-14 | [Property Panel Variants](http://localhost:6024/?path=/story/sw-header--property-panel-variants) | `sw-header--property-panel-variants` | 독립 패널과 데이터 변형 / QA: 같은 PropertyPanelDemo를 standalone으로 렌더링. 4상태·데이터 버튼이 Property Panel과 거의 동일. | **MERGE REVIEW** — 단독 패널 기준이 필요하면 4개 개별/4개 비교 화면과 통합 검토. | 중간 | +| V-15 | [K Guide](http://localhost:6024/?path=/story/sw-header--k-guide) | `sw-header--k-guide` | 실시간 모션 / 사용자: K 버튼 Hover/Focus의 원본 이미지 Pan·Zoom, 이탈 정지, Reduced Motion 안내. | **KEEP** — 고유한 가이드 모션 예제로 유지. | 낮음 | +| V-16 | [Additional Hover](http://localhost:6024/?path=/story/sw-header--additional-hover) | `sw-header--additional-hover` | 상세/Selected 회귀·외부 모드 / QA: StyleDemo 1920과 RequiredColorDemo: 5개 상세 Hover, Selected, 외부 ByLayer/ByBlock/직접 색상. | **MERGE REVIEW** — 상세 상태는 Detail Buttons, 외부 색상 모드는 Color Dropdown으로 이전 검토. | 중간 | +| V-17 | [Property Bar](http://localhost:6024/?path=/story/sw-header--property-bar) | `sw-header--property-bar` | 속성Bar 전체 API / 사용자·QA: Controlled, 외부 Open/값, 추가·삭제·순서 반전·객체 교체·개별 Disabled/ReadOnly, 1222px 부모 폭. | **KEEP** — 메인의 참조 구현이자 고급 API 예제로 유지. | 중간 | +| V-18 | [Dynamic Controls](http://localhost:6024/?path=/story/sw-header--dynamic-controls) | `sw-header--dynamic-controls` | controls allowlist / 사용자: 12개 구성의 제거·재추가·라벨·순서·visible, 동적 문서 데이터. | **KEEP** — Composition과 다른 API임을 설명하는 방향으로 유지. | 중간 | +| V-19 | [Colorize](http://localhost:6024/?path=/story/sw-header--colorize) | `sw-header--colorize` | 색상 추출 버튼 접근 / QA: 별도 기본/확대 상태표 없이 StyleDemo(1920)를 다시 표시. 색상 Dropdown의 추출 버튼으로 연결. | **REMOVE REVIEW** — Color Dropdown에 버튼 접근·Hover·Callback 증거를 남긴 뒤 메뉴 삭제 검토 가능. | 중간 | +| V-20 | [Composition (Visibility · Order)](http://localhost:6024/?path=/story/sw-header--composition) | `sw-header--composition` | hiddenControls/menuOrder / 사용자·QA: 16개 표시 항목, 프리셋·순서·중복/알 수 없는 ID, 실제 화면/고정 폭, Callback 보존. | **KEEP** — 개별 제거와 순서 계약을 보여 주는 예제로 유지. | 중간 | +| V-21 | [Property Panel · 선택 없음](http://localhost:6024/?path=/story/sw-header--property-panel-none) | `sw-header--property-panel-none` | 단독 실제 컴포넌트 / 디자인 QA: 선택 없음 314×256 고정 상태와 실제 필드. | **QA** — 일반 사용자 목록보다는 QA 분류 검토. | 중간 | +| V-22 | [Property Panel · 전체 선택](http://localhost:6024/?path=/story/sw-header--property-panel-all) | `sw-header--property-panel-all` | 단독 실제 컴포넌트 / 디자인 QA: 전체 선택 314×361, 혼합 레이어 값과 선택 개수. | **QA** — 개별 QA 기준으로 유지하거나 Compare 통합 검토. | 중간 | +| V-23 | [Property Panel · 원 1개](http://localhost:6024/?path=/story/sw-header--property-panel-circle) | `sw-header--property-panel-circle` | 단독 실제 컴포넌트 / 디자인 QA: 원 1개 314×658, 기본 형상·치수·XYZ·전체 선택 복귀. | **QA** — 개별 QA 기준으로 유지하거나 Compare 통합 검토. | 중간 | +| V-24 | [Property Panel · 모두 펼침](http://localhost:6024/?path=/story/sw-header--property-panel-expanded) | `sw-header--property-panel-expanded` | 단독 실제 컴포넌트 / 디자인 QA: 전체 펼침 314×754, 추가 공통 속성·형상·위치·푸터. | **QA** — 개별 QA 기준으로 유지하거나 Compare 통합 검토. | 중간 | +| V-25 | [Property Panel · 4개 비교](http://localhost:6024/?path=/story/sw-header--property-panel-compare) | `sw-header--property-panel-compare` | 4개 실제 패널 병렬 비교 / 디자인 QA: 4개 선택 상태를 동시에 렌더링하고 실측 폭·높이를 표시. | **QA** — 나란히 비교하는 QA 목적을 유지. 개별 메뉴 통합 목적지로 검토 가능. | 중간 | +| V-26 | [Property Panel · 형상 Slot](http://localhost:6024/?path=/story/sw-header--property-shape-slot) | `sw-header--property-shape-slot` | 형상 확장 API / 사용자: 기본/null/ReactNode/Render Prop, 원·사각형 교체, 치수/그룹 추가. | **KEEP** — 외부 컴포넌트 확장 계약 예제로 유지. | 중간 | +| V-27 | [Property Panel · 필드 13개](http://localhost:6024/?path=/story/sw-header--property-fields) | `sw-header--property-fields` | 필드 상태·실제 조작 / 디자인 QA: Figma 13개 필드 Default/Hover 표본, 실제 패널, 혼합 레이어·외부 값·제한·단위. | **QA** — 77개 필드 검증의 기준 화면으로 유지 권장. | 중간 | +| V-28 | [Detail Buttons (Shared States)](http://localhost:6024/?path=/story/sw-header--detail-buttons) | `sw-header--detail-buttons` | 실제 Pointer/Callback 비교 / QA: 5개 상세 버튼 × Default/Hover/Disabled/Callback 없음, 클릭 횟수. verification 태그로 기본 숨김. | **QA** — 이미 적용된 숨김과 검증 표본 유지. | 중간 | + +## 화면별 삭제 영향과 대체 가능성 + +### V-01 · Overview + +대체 메인 없음. 이번에 실제 수정한 유일한 Story. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--overview) · [대표 스크린샷](storybook-overview-qa/overview-after.png) + +### V-02 · Interactive States + +삭제하면 Disabled+Hover·키보드·창 버튼 Callback 비교를 잃음. 메인은 상태 비교표를 대체하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--interactive-states) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--interactive-states.png) + +### V-03 · Window Move Motion + +타이밍·위치 비교의 유일한 상세 화면. 메인의 실시간 Hover와 목적이 다름. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--window-move-motion) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--window-move-motion.png) + +### V-04 · Composed Controls + +전체 Header 통합 시연으로 하위 컴포넌트 단독 조합을 대체할 수 없음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--composed-controls) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--composed-controls.png) + +### V-05 · Logo Slot + +삭제하면 이미지/ReactNode/미전달의 차이를 직접 확인할 수 없음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--logo-slot) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--logo-slot.png) + +### V-06 · Document Dropdown + +메인은 기본 선택·목록 변경을 대체하지만 빈 목록·긴 이름·행 위치·18개 스크롤 사례는 대체하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--document-dropdown) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--document-dropdown.png) + +### V-07 · Layer Dropdown + +메인은 정상 선택·Toggle만 대체. On/Off/Hover 아이콘 매트릭스·20개 목록·Callback 없는 상태가 고유함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--layer-dropdown) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--layer-dropdown.png) + +### V-08 · Color Dropdown + +메인의 색상 변경은 40개 색상·정적 Hover 비교를 대체하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--color-dropdown) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--color-dropdown.png) + +### V-09 · Line Style Dropdown + +메인은 정상 선택을 대체하지만 상세 상태·열 배치 기준은 남길 필요가 있음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--line-style-dropdown) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--line-style-dropdown.png) + +### V-10 · Text · Dimension Style Dropdown + +메인의 선택만으로 각 행 미리보기와 Figma Hover 비교를 대체하지 못함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--text-dimension-style-dropdown) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--text-dimension-style-dropdown.png) + +### V-11 · Responsive More + +삭제한 Responsive와 다른 기능. 메인은 현재 폭만 보여 주므로 모든 경계값 비교를 대체하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--responsive-more) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--responsive-more.png) + +### V-12 · Layer Detail · Input + +독립 Input Story는 현재 없음. 페이지 전체를 지우면 텍스트/숫자·외부 Props·취소 예제를 잃음. detail-buttons 검증이 이 ID를 참조함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--layer-detail-input) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--layer-detail-input.png) + +### V-13 · Property Panel + +메인에 없는 Controlled 전환, 개별 제한·옵션 삭제·선택 객체 교체가 남음. Firefox·닫기·필드 테스트가 참조. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel.png) + +### V-14 · Property Panel Variants + +Header Overlay·Focus 복귀와 다른 단독 맥락. standalone의 닫기는 기록만 하고 패널을 유지하며 너비/Open 버튼은 Header 연동 검증을 대신하지 못함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-variants) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-variants.png) + +### V-15 · K Guide + +Header 실시간 모션과 창 이동 1400ms 모션은 별개. 메인에서는 일부만 볼 수 있음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--k-guide) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--k-guide.png) + +### V-16 · Additional Hover + +외부 colorMode 제어는 메인의 일반 색상 선택과 다름. followup-four가 이 ID를 참조하므로 먼저 대체 시나리오가 필요함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--additional-hover) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--additional-hover.png) + +### V-17 · Property Bar + +메인은 공유 값·기본 추가/제거·제한만 제공. 개별 제한·순서·객체 교체·Controlled를 대체하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-bar) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-bar.png) + +### V-18 · Dynamic Controls + +controls는 전체 allowlist이며 로고 외 16개 요소를 숨기는 hiddenControls와 다름. 이름이 비슷해도 동일 기능이 아님. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--dynamic-controls) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--dynamic-controls.png) + +### V-19 · Colorize + +실제 색상 추출 CAD 기능은 호스트 소유. 삭제 시 전용 접근 URL을 잃고 detail-buttons preservation의 colorize 참조를 이전해야 함. 지금은 삭제하지 않음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--colorize) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--colorize.png) + +### V-20 · Composition (Visibility · Order) + +Dynamic Controls와 다른 API. 홈·창 이동·최소화·종료까지 개별 제어하고 메뉴 순서 정규화를 검증함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--composition) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--composition.png) + +### V-21 · Property Panel · 선택 없음 + +Variants/Compare와 겹치지만 테스트의 상태별 직접 URL·치수 기준임. 삭제/통합 시 ID 참조 이전 필요. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-none) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-none.png) + +### V-22 · Property Panel · 전체 선택 + +선택 없음/원 상태와 내용이 다름. 테스트 직접 URL·혼합 값·개수 레이아웃을 보존해야 함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-all) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-all.png) + +### V-23 · Property Panel · 원 1개 + +원형 Slot과 위치·푸터를 포함. 다른 상태와 같은 이름의 단순 중복이 아님. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-circle) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-circle.png) + +### V-24 · Property Panel · 모두 펼침 + +754px 전체 높이와 하단 잘림 검증에 필요. 개별 ID가 기존 테스트에서 동적으로 참조됨. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-expanded) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-expanded.png) + +### V-25 · Property Panel · 4개 비교 + +Variants는 상태 전환, Compare는 동시 비교라는 차이가 있음. property-fields의 4상태 치수 검증이 참조함. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-panel-compare) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-panel-compare.png) + +### V-26 · Property Panel · 형상 Slot + +메인은 기본/null만 제공. ReactNode와 Render Prop·형상 교체를 대체할 수 없음. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-shape-slot) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-shape-slot.png) + +### V-27 · Property Panel · 필드 13개 + +메인은 필드별 디자인 상태표를 대체하지 않음. property-fields.browser.mjs의 핵심 직접 ID. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--property-fields) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--property-fields.png) + +### V-28 · Detail Buttons (Shared States) + +메인은 실제 Dropdown 접근용이며 이 비교 매트릭스를 대체하지 못함. detail-buttons 검증의 직접 ID. + +[현재 화면](http://localhost:6024/?path=/story/sw-header--detail-buttons) · [대표 스크린샷](storybook-overview-qa/screens/sw-header--detail-buttons.png) diff --git a/docs/sw/sw-storybook-simplification-2026-10-20.md b/docs/sw/sw-storybook-simplification-2026-10-20.md new file mode 100644 index 0000000..6d62203 --- /dev/null +++ b/docs/sw/sw-storybook-simplification-2026-10-20.md @@ -0,0 +1,70 @@ +# SW Storybook 메뉴·콘텐츠 간소화 (2026-10-20) + +범위: SW Storybook(`src/sw/*.stories.tsx`, `.storybook/preview.tsx` storySort) 정리만 합니다. SW 컴포넌트 소스, 공개 Props/Events, Token, Web(UI)·OrgChart는 변경하지 않았습니다. 기준 HEAD `47972c5`(`feature/sw-package`). Home Menu는 2026-10-19 결정대로 `SW / Header` 아래에 유지합니다. + +## 1. 메뉴 구조 + +| | 변경 전 | 변경 후 | +|---|---|---| +| SW 순서 | Footer → Header → Popup → Theme → Viewer (알파벳) | **Header → Footer → Popup → Viewer → Theme** (`storySort`) | +| SW/Header | 표시 12 + verification 15 | 표시 10 + verification 10 | +| SW/Footer | 표시 8 | 표시 7 + verification 1 | +| SW/Popup | 표시 2 | 표시 3 (`Property Panel · 4개 비교` 이동) | +| SW/Viewer / SW/Theme | 10 / 1 | 변경 없음 | + +변경 후 사이드바 (`storybook-simplification-qa/sidebar.json`): + +- **Header:** Dropdown · Home Menu · Home Menu · 단독 사용 · 조합형 · Document Open · Hidden Sub Controls · Overview · Interactive States · Logo Slot · Document Dropdown · Responsive More +- **Footer:** 기본 Footer · 전체 Footer · 실제 조합 · 도구 그룹별 표시 · Hover / Active / Selected / Disabled · 도구 및 메뉴 변경 예제 · 화면 폭 변화 · 개별 부품 (조합용) +- **Popup:** Custom Content · Multiple Popups · Property Panel · 4개 비교 +- **Viewer:** Viewer Header · Menu Groups · Item States · Header + Dropdown · Settings Popup · Popup Content Variants · Variable Size Popups · Responsive Widths · SWHeader vs Viewer Header · Logo +- **Theme:** Theme Inheritance + +## 2. 변경 내용 + +| 구분 | Story (ID) | 처리 | 근거 | +|---|---|---|---| +| 이동 | `sw-header--property-panel-compare` | 사이드바만 `SW/Popup`으로 이동. 새 파일 `sw-property-panel.stories.tsx`(meta `id: "sw-header"`), 렌더 코드는 `sw-header.stories.tsx`의 `PropertyPanelComparePage`(excludeStories) 그대로 | 사용자 요청. ID·이름·4상태 화면 유지 | +| 숨김 | `sw-header--window-move-motion` | `verification` 태그 | GIF 프레임 검증. 테스트 5개가 URL로 사용 | +| 숨김 | `sw-header--k-guide` | `verification` 태그 | Overview와 같은 Header 화면. 테스트 3개가 URL로 사용 | +| 숨김 | `sw-footer--figma-variants` | `verification` 태그 (삭제 안 함) | Figma 35노드 비교. [Footer Figma 매핑 문서](./sw-footer-figma-mapping-2026-10-20.md)가 참조하며 이를 대신할 자동 검증이 없음 | +| 표시 | `sw-header--home-menu-standalone` | `verification` 태그 제거 | Header 없이 쓰는 개별 부품(SWHomeMenuSection / SWHomeMenuItem) 예제 | +| 삭제 | `sw-header--home-menu-figma` | Story 삭제 | Figma 1:1 스크린샷 비교. 테스트·문서 참조 없음 | +| 삭제 | `sw-header--home-menu-capture-active` / `-capture-outline` / `-capture-recent` | Story 삭제 | 비교 캔버스. 참조 없음 (`-capture-default`는 테스트가 사용하므로 유지) | +| 삭제 | `sw-header--home-menu-variants` | Story 삭제 | `Home Menu`의 Default / Variant2 / Variant3 섹션과 중복 | +| 삭제 | `sw-header--home-menu-recent-files` | Story 삭제 | `Home Menu`의 최근파일 섹션과 중복 + Figma 스크린샷 | +| 섹션 정리 | `sw-header--home-menu` | "Figma 26:10591 비교" 섹션의 Figma 이미지를 빼고 "열림 (현재 폭)"으로 변경. 최근파일 섹션의 Figma 이미지 2개 제거 | 사용법 중심. 구현 화면은 그대로 | + +삭제한 파일 (`src/sw/assets/home-menu/`): `figma-26-10591.png`, `figma-662-67267.png`, `662-67331_recent-files.png`, `662-67471_file-preview-2depth.png`. 네 파일 모두 `docs/sw/figma-additional/screenshots/`의 원본(`26-10591_home-on.png`, `662-67267_home-on-popup-guide.png`, `662-67331_recent-files.png`, `662-67471_file-preview-2depth.png`)과 md5가 같은 복사본이며, 원본은 보존합니다. 사용하지 않게 된 Story CSS 2개(`sw-home-menu-story__figma-row`, `__figma-fit`)도 제거했습니다. + +## 3. 유지한 검증용 Story (verification, URL로 접근 가능) + +`sw-header--home-menu-capture-default` · `-header-composition` · `-integration` · `-capture-responsive` (home-menu-integration 테스트) · `-dynamic-data` (Props 데이터 변경 예제) · `-property-bar-check` · `-capture-property-bar` (속성Bar 차이 3건 **승인 대기**, [Home Menu 통합 보고](./sw-home-menu-integration-2026-10-19.md)) · `sw-header--detail-buttons` · `sw-header--window-move-motion` · `sw-header--k-guide` · `sw-footer--figma-variants`. + +## 4. Story ID + +- 367 → 361개. 삭제한 6개를 뺀 나머지 ID는 모두 유지되었습니다. 바뀐 항목은 tags 4개, title 1개(`property-panel-compare`: SW/Header → SW/Popup)뿐입니다. +- SW 외 index 항목 319개(Web·OrgChart·Center Graphic·Theme 등)는 값과 순서가 바뀌지 않았습니다. +- 삭제한 ID는 `packages/sw/tests/storybook-inventory.mjs`의 `retiredHomeMenuCompareIds`, 이동한 ID는 `movedToPopupIds`에 기록했습니다. + +## 5. 검증 (2026-10-20 실제 실행) + +| 항목 | 결과 | +|---|---| +| `npm run build-storybook` | PASS | +| `npm run typecheck` | PASS | +| `npm run check:ai-docs` | PASS | +| `packages/sw/tests/storybook-simplification.browser.mjs` (신규) | **8/8 PASS**: SW Story 42개 직접 URL 렌더·오류 0, 삭제 ID 없음, Popup의 4상태 314 × 256/361/658/754, 사이드바 순서, 숨김 Story 미표시, Popup 순서, 중복 표시 없음, 이동 Story 링크 ID 유지 | +| `home-menu-integration.browser.mjs` | 22/23. FAIL 1건(`without homeMenu: logo click…`)은 기준선 `47972c5`에서도 같은 결과로 실패하는 **기존 실패** | +| `storybook-unused-removal.browser.mjs` | render 순회에 `movedToPopupIds`를 추가해서 Popup으로 옮긴 `property-panel-compare`도 검사합니다(신규 검사 1건 PASS). 검사 수 98 → 93: 의도적으로 삭제한 6개 render만 빠졌고, 나머지 검사 이름과 PASS/FAIL 상태는 기준선과 같습니다. FAIL 5건은 모두 기준선 `47972c5`에서도 실패하는 **기존 실패**(10-19 시점 inventory·source 스냅샷 비교)입니다. 그중 `byte-identical` 항목의 목록에는 이번에 의도적으로 수정한 export(`WindowMoveMotion`, `KGuide`, `PropertyPanelCompare`)가 추가로 들어 있습니다 | +| `dropdown-consolidation.browser.mjs` | 기준선에서도 같은 inventory 스냅샷 FAIL 5건 (기존 실패). 변경 후에는 실행하지 않음 | +| `followup-four`, `property-fields` | 실행 불가 (기존): 첫 단계에서 10-19에 retired된 `property-bar` / `property-fields` Story를 엶 | +| SW Viewer·Footer·Theme 기능 회귀 | 재실행하지 않음. 컴포넌트·Story 렌더 코드가 바뀌지 않았고, 이번 직접 URL 렌더 검사로 대신함 | + +증거: [storybook-simplification-qa/](./storybook-simplification-qa/) (`result.json`, `sidebar.json`, `sidebar.png`, `popup-property-panel-compare.png`). + +## 6. 남은 개선 항목 + +- Footer Story 이름만 한국어(`기본 Footer` 등)이고 다른 SW 메뉴는 영어입니다. 이름은 바뀌어도 ID가 유지되지만, Footer Figma 매핑 문서가 이름으로 참조하고 있어 이번에는 바꾸지 않았습니다. +- SW Story는 모두 `controls: { disable: true }`라서 Controls와 Props를 대조할 Playground Story가 없습니다. +- 과거 시점 스냅샷과 비교하는 테스트(`storybook-unused-removal`, `dropdown-consolidation`, `overview`, `detail-buttons`)와, retired Story를 여는 테스트(`followup-four`, `property-fields`)는 현재 상태 기준으로 다시 정리할 필요가 있습니다. diff --git a/docs/sw/sw-storybook-unused-story-removal-2026-10-19.md b/docs/sw/sw-storybook-unused-story-removal-2026-10-19.md new file mode 100644 index 0000000..d6fe6cf --- /dev/null +++ b/docs/sw/sw-storybook-unused-story-removal-2026-10-19.md @@ -0,0 +1,138 @@ +# SW Storybook 불필요 9개 메뉴 삭제 (2026-10-19) + +> 범위: Storybook 시연 페이지 정리만 합니다. `@hm-design/sw` 런타임·공개 API·디자인·AI 템플릿은 바꾸지 않았습니다. +> 기준 HEAD `c8e5fbeebc26fba92998fc5ddcd28c6c110e452d` (`feature/sw-package`, 시작 시 Working Tree Clean). +> 증거: [storybook-unused-story-removal-qa/](storybook-unused-story-removal-qa/). 이전 단계 증거는 수정하지 않았습니다. + +## 1. 작업 전 Story 목록 (SW 19개 / 전체 338개) + +`storybook-static/index.json`(HEAD 빌드) 기준: [before/story-inventory-before.json](storybook-unused-story-removal-qa/before/story-inventory-before.json), 전체 인덱스 [before/full-index-before.json](storybook-unused-story-removal-qa/before/full-index-before.json). + +`composed-controls`, `detail-buttons`, `overview`, `interactive-states`, `window-move-motion`, `logo-slot`, `document-dropdown`, `responsive-more`, `layer-detail-input`, `property-panel`, `k-guide`, `additional-hover`, `property-bar`, `dynamic-controls`, `colorize`, `composition`, `property-panel-compare`, `property-shape-slot`, `property-fields` (모두 `sw-header--` 접두사, title `SW/Header`). + +## 2. 요청 메뉴와 실제 Story 대응 + +요청 메뉴명은 각 Story의 페이지 제목(`StoryPageHeader title`)입니다. 9개 모두 `src/sw/sw-header.stories.tsx`의 **독립 Story**이며, 다른 Story의 내부 섹션이거나 서로 겹치는 항목은 없습니다. + +| 요청 메뉴 (페이지 제목) | 실제 Story 이름 (사이드바) | Export | Story ID | 결과 | +|---|---|---|---|---| +| 속성창 입력·선택 필드 | Property Panel · 필드 13개 | `PropertyFields` | `sw-header--property-fields` | 삭제 | +| 형상 영역 Slot | Property Panel · 형상 Slot | `PropertyShapeSlot` | `sw-header--property-shape-slot` | 삭제 | +| Header 구성 · 메뉴 순서 | Composition (Visibility · Order) | `Composition` | `sw-header--composition` | 삭제 | +| btn_colorize | Colorize | `Colorize` | `sw-header--colorize` | 삭제 | +| 메뉴 컴포넌트 구성 | Dynamic Controls | `DynamicControls` | `sw-header--dynamic-controls` | 삭제 | +| 속성Bar · 동적 편집 | Property Bar | `PropertyBar` | `sw-header--property-bar` | 삭제 | +| 추가 Hover 및 Selected | Additional Hover | `AdditionalHover` | `sw-header--additional-hover` | 삭제 | +| 속성창 | Property Panel | `PropertyPanel` | `sw-header--property-panel` | 삭제 | +| Layer Detail Button · Editable Input | Layer Detail · Input | `LayerDetailInput` | `sw-header--layer-detail-input` | 삭제 | + +`속성창`은 제목이 정확히 `속성창`인 `sw-header--property-panel`입니다. 제목이 `속성창 4개 상태 비교`인 `sw-header--property-panel-compare`는 유지했습니다. + +## 3. 실제 삭제한 Story: 9개 + +위 표의 9개 ID입니다. 다른 Story는 삭제·통합·재분류하지 않았습니다. + +## 4. 삭제 후 Story 목록 (SW 10개) + +[verify/story-inventory-after.json](storybook-unused-story-removal-qa/verify/story-inventory-after.json) + +| 순서 | Story ID | 이름 | 비고 | +|---|---|---|---| +| 1 | `sw-header--composed-controls` | Dropdown | 별도 CSF `sw-header-dropdown.stories.tsx` | +| 2 | `sw-header--detail-buttons` | Detail Buttons (Shared States) | `verification` 태그: 기존 정책대로 기본 사이드바에서 숨김, 직접 URL 유지 | +| 3 | `sw-header--overview` | Overview | | +| 4 | `sw-header--interactive-states` | Interactive States | | +| 5 | `sw-header--window-move-motion` | Window Move Motion | | +| 6 | `sw-header--logo-slot` | Logo Slot | | +| 7 | `sw-header--document-dropdown` | Document Dropdown | | +| 8 | `sw-header--responsive-more` | Responsive More | | +| 9 | `sw-header--k-guide` | K Guide | | +| 10 | `sw-header--property-panel-compare` | Property Panel · 4개 비교 | | + +## 5–7. 개수와 유지 ID + +- 최종 SW Story: **10개** (19 → 10). +- 저장소 전체 Story: **329개** (338 → 329). 삭제된 9개 외 인덱스 항목(docs 포함)은 전부 동일합니다(자동 비교 PASS). +- 유지 10개의 ID·이름·title·tags·순서는 작업 전과 같습니다(자동 비교 PASS). 유지 Export(Story 10개 + `ComposedDemo`) 선언은 byte 단위로 같습니다. + +## 8. Overview 보존 + +`storybook-unused-removal.browser.mjs`: 390 / 768 / 1280 / 1440에서 Header 1개·높이 49px·16:9 Stage 1개·문서 가로 넘침 없음. 레이어 Dropdown 열기, Escape 닫기·Focus 복귀, 레이어 상세 Callback, `btn_colorize` 24 × 24와 `onColorPick`, 속성Bar Enter 확정·`min=0` 검증, 속성창 열기(같은 Bar 값), Escape 닫기·Trigger Focus 복귀 모두 PASS. + +기존 `overview.browser.mjs`(증거 `legacy-overview/`): 기능 검사 52개 PASS. 문서 선택, 5개 Dropdown 선택·전환·바깥 클릭 닫기, 속성Bar·속성창 공유 편집과 검증, 동적 필드 추가·제거, 형상 Slot 비우기, 4개 상태 314 × 256/361/658/754, 내부 스크롤, 390px More Focus 복귀, Manager iframe 16:9, 콘솔 오류 0을 포함합니다. 남은 FAIL 2개는 과거 기준에 고정된 단언입니다(§17). + +## 9. Header → Dropdown 보존 + +- ID `sw-header--composed-controls`, 이름 `Dropdown`, title `SW/Header`, 내부 그룹 `Composed Controls` 그대로입니다. +- 새 검사: 5개 필드 + `상세보기` 그룹(6개 컨트롤). 4개 폭에서 5개 메뉴 열기·Escape 닫기·Focus 복귀, 문서 넘침 없음, 문자스타일·선스타일 선택 반영 PASS. +- 기존 `dropdown-consolidation.browser.mjs`(증거 `legacy-dropdown/`): 214 PASS / 4 FAIL. 이전 실행의 223 PASS와의 차이 9개는 Story별 렌더 검사 수(19 → 10)입니다. 4개 FAIL은 이전 기록과 같은 과거 기준 단언입니다(§17). + +## 10. 속성창 4개 상태 비교 보존 + +ID·이름·페이지 제목·상태명·순서는 그대로이고 소스 선언도 같습니다. 390 / 768 / 1280 / 1440에서 4개 패널 314 × 256 / 361 / 658 / 754, 좌표 기준 2열 × 2행, Inner 스크롤로 754px 패널 하단·우측 도달, 문서 스크롤 없음 PASS. Input Enter 확정(해당 패널만)·Escape 취소·caret `#E60403`, 레이어 Dropdown 선택 Callback, Escape 닫기·Focus 복귀도 PASS입니다. + +## 11. Window Move Motion 보존 + +`단계별 진행 (3배 확대)` 섹션 1개, 단계 9개, zoom 3. Rest 단계는 정지 상태이고 시간 지정 단계는 일시정지된 애니메이션 3개를 유지합니다(PASS). 선언은 byte 단위로 같습니다. + +## 12–13. SW 런타임·공개 API와 AI 템플릿 + +`git diff c8e5fbe -- packages/sw/src packages/sw/ai packages/sw/package.json packages/sw/README.md packages/ui packages/org-chart packages/org-chart-react packages/center-graphic src/sw/sw-header-overview.tsx src/sw/sw-header-dropdown.stories.tsx src/sw/sw-composed-controls.css src/sw/assets .storybook` 결과는 비어 있습니다(자동 검사 PASS). `ai-docs.check.mjs` 19/19 PASS. + +삭제한 시연 페이지가 보여 주던 기능(`hiddenControls`·`menuOrder`, `controls`, `shapeContent`, `SWHeaderPropertyBar`, `SWHeaderInput`, 레이어 상세, `btn_colorize`, 상세 Hover·Selected)은 패키지와 AI 템플릿 가이드·예제에 그대로 있습니다. + +## 14. 변경 파일 + +| 파일 | 내용 | +|---|---| +| `src/sw/sw-header.stories.tsx` | 9개 Story 선언과 그 Story만 쓰던 데모 컴포넌트·상태·fixture 삭제: `InputDemo`, `LayerHeader`/`LayerDemo`/`describeLayers`, `noop`, `FIGMA_LAYERS`, `PropertyPanelDemo`, `RequiredColorDemo`, `PropertyBarDemo`, `CONTROL_FIXTURE`/`DynamicControlsDemo`, `HIDEABLE_PARTS`/`MENU_IDS`/`COMPOSITION_PRESETS`/`CompositionDemo`, `SampleShapeViewer`/`SHAPE_MODES`/`ShapeSlotDemo`, `FIELD_*`/`FieldPanel`/`PropertyFieldsDemo`. `StyleHeader`의 `initialColorMode`(Additional Hover 전용 prop)와 사용하지 않는 import(`SWHeaderInput`, `SWHeaderControlConfig`, `SWHeaderHideableControlId`, Figma 비교 PNG 2개) 제거 | +| `src/sw/sw-stories.css` | 삭제한 Story만 쓰던 Storybook 전용 class 제거: `sw-story-explicit-disabled`, `-row`, `-layer-room`, `-reference`, `-figma`, `-detail`, `-controls`, `-followup`, `-property-state`, `-node-table` | +| `packages/sw/tests/storybook-inventory.mjs` | `retiredUnusedDemoIds` 추가 | +| `packages/sw/tests/storybook-unused-removal.browser.mjs` | 신규 현재 회귀 스크립트 | +| `packages/sw/tests/{detail-buttons,followup-four,property-close,property-fields,property-panel-comparison,storybook-cleanup-stage1}.browser.mjs` | 상단에 "삭제된 ID를 여는 과거 증거용 스크립트" 주석 2줄만 추가. 단언은 바꾸지 않음 | +| `docs/sw/sw-storybook-unused-story-removal-2026-10-19.md`, `docs/sw/storybook-unused-story-removal-qa/` | 이 보고서와 증거 | + +`src/sw/assets/figma-reference/btn-detail-layer-26-10767.png`, `input-26-11656.png`는 이제 코드에서 참조하지 않지만, 자산 보존 원칙에 따라 그대로 두었습니다. + +## 15. Typecheck / Build + +| 명령 | 결과 | +|---|---| +| `npm run typecheck:sw` | PASS | +| `npm run build:sw` | PASS | +| Storybook Typecheck `npx tsc -b` | PASS | +| `npm run build-storybook` (prebuild: theme defaults, 전체 package build) | PASS. 기존 CSS 최적화·chunk 크기 경고만 있음 | +| `git diff --check` | PASS | + +## 16. 브라우저 검증 + +Chrome headless(Playwright)로 production `storybook-static`을 로컬에서 제공해 확인했습니다. + +| 스크립트 | 결과 | 증거 | +|---|---|---| +| `storybook-unused-removal.browser.mjs` (신규, 현재 회귀) | **81/81 PASS**, 콘솔·페이지 오류 0 | `verify/` | +| `overview.browser.mjs` | 52 PASS / 2 FAIL(과거 기준 단언) | `legacy-overview/chrome-result.json` | +| `dropdown-consolidation.browser.mjs` | 214 PASS / 4 FAIL(과거 기준 단언) | `legacy-dropdown/result.json` | +| `ai-docs.check.mjs` | 19/19 PASS | 콘솔 | + +신규 스크립트 내용: 인벤토리(19 → 10, 338 → 329, 9개 부재, 유지 항목 동일), 소스(9개 Export 삭제, 유지 선언 동일, 제품·템플릿·다른 패키지 미변경), 실제 Manager 사이드바(유지 Story만 순서대로 표시, 삭제 메뉴 ID·이름 없음), 삭제 URL 미렌더, 유지 10개 렌더, 그리고 §8–§11의 Story별 기능. 삭제 URL 검사에서 Storybook이 내는 "story 없음" 오류는 의도한 결과라 오류 집계를 비운 뒤 회귀 검사를 시작합니다. + +## 17. 테스트 갱신과 과거 기준 단언 + +- **현재 회귀:** `storybook-unused-removal.browser.mjs`를 추가했습니다. 삭제 Story의 고유 검증 중 유지 Story에서 확인할 수 있는 것(레이어 상세 Callback, `btn_colorize` 크기·Callback, 속성Bar 편집·검증, Input caret·확정·취소)은 Overview·4개 비교에서 검증합니다. +- **과거 증거로 구분(단언 미수정):** 삭제한 ID를 직접 여는 `detail-buttons`(preservation·verify 모드), `followup-four`, `property-close`, `property-fields`, `property-panel-comparison`(verify), `storybook-cleanup-stage1`. 기존 결과 파일은 그대로 두었습니다. 실패를 숨기려고 기능 검사를 지우지 않았습니다. +- **과거 기준 단언 FAIL (기능 실패 아님):** + - `overview.browser.mjs`: "24 retained Story IDs"(현재 10개), "retained non-Overview declarations byte-identical"(50bf5bd 기준에 있던 9개 선언이 의도적으로 삭제됨). + - `dropdown-consolidation.browser.mjs`: 28 → 24 / 24 개수 단언 2개, c165753 기준 선언 동일성 1개, `src/sw/sw-stories.css` 미변경 1개. 이전 단계에서도 같은 4개가 FAIL이었고, 이번에는 삭제한 선언과 CSS가 원인에 더해졌습니다. + +## 18. NOT VERIFIED + +- Firefox·Safari 등 Chrome 이외 브라우저(이번에 실행하지 않음). +- 개발 서버(포트 6024)에서의 실행. 검증은 production `storybook-static`으로만 했습니다. +- 삭제한 페이지에서만 보이던 조합의 Storybook 시연: `hiddenControls`·`menuOrder` 프리셋, `controls` allowlist, `shapeContent`의 ReactNode·Render Prop, 13개 필드 Hover 고정 표본, 상세 Hover·Selected 비교표. 패키지 코드는 바뀌지 않았지만, 이번 작업에서 해당 동작을 브라우저로 다시 실행하지는 않았습니다(과거 증거는 기존 QA 폴더에 있음). +- 과거 증거로 구분한 6개 스크립트의 재실행. + +## 19–20. Commit / Push + +- 로컬 Commit `refactor(storybook): remove unused SW header demo stories`. SHA는 최종 보고에 기록합니다. +- Push·PR·Publish·배포는 진행하지 않았습니다. diff --git a/docs/sw/sw-viewer-mode-2026-10-19.md b/docs/sw/sw-viewer-mode-2026-10-19.md new file mode 100644 index 0000000..a7928d4 --- /dev/null +++ b/docs/sw/sw-viewer-mode-2026-10-19.md @@ -0,0 +1,125 @@ +# SW 뷰어 모드 상단 메뉴·팝업 (2026-10-19) + +- 작업 위치: worktree `D:\디자인시스템\HMDesign-SW-Viewer`, 브랜치 `feature/sw-viewer-header`(기준 `feature/sw-package` e8409ef). Task A+B 통합 worktree(`HMDesign-SW-Integration`)는 변경하지 않았습니다. Commit·Push 없음. +- 범위(사용자 확정): HMDesign Storybook 데모 기준. 실제 SW 프로그램 연결과 DWG/DXF 기능은 제외했습니다. 참고 프로젝트 `D:\디자인시스템\테스트\dwg-dxf-viewer-hm`은 읽기만 했고, 최신 소스는 scratchpad로 빌드해 `vite preview`로 띄웠습니다(참고 폴더에 쓰기 없음). +- 추가 요청 반영: ① Viewer Header 텍스트·아이콘에 SW Header와 같은 검정 외곽선 ② Storybook `Tool Popup` 메뉴 정리: `SW/Tool` 삭제. `SW/Popup`은 공통 `SWPopup` 예시이므로 Commit 승인 시 지시에 따라 복원·유지 ③ 로고 미제공 시 `HM` 등 아무것도 표시하지 않음. +- 증거: `docs/sw/viewer-qa/`(같은 해상도 캡처, `report.json` 74항목), `docs/sw/viewer-qa/regression/regression.json`(기존 SW Header 33장 픽셀 비교). + +## A. 분석 결과 + +**참고 뷰어 상단 메뉴**(`Toolbar.tsx`, `sw-header.css` — `@hm-design/ui` SWHeader 조합, 1440px 실측) +- 52px Header(그라디언트 #266651 → #123328 → #0A221D, 1px #071E18 테두리), 72px 사선 로고 면(HM), 파일명 면 `clamp(220px, 25vw, 360px)`, 객체 수정 면(반경 6, 테두리 #135643). +- 그룹: 파일(파일 열기 109×34, 샘플▾ 80×34) / 도면 공간 field 면(Model·Layout 탭 97·87×40, 개수 11px) / 화면 보기 field 면(전체 보기, 2.5D·어두운 배경 스위치 칸 52·70×40) / 오른쪽 끝(레이어·설정·속성 토글 81·68·68×40, 상태 11px, 정보 32×40). +- 상태: Hover = #266651 면, On·Open·선택 탭 = #FFC600 글자, Disabled = 60%, 스위치 off #0A221D / on #FFC600. +- 반응형: 1180px 미만 = 샘플·탭·스위치가 더보기(베이지 #F5F0E5, 260px)로, 900px 미만 = 패널 토글도 더보기로, 560px 미만 = 아이콘만 표시하고 상태 글자 숨김. + +**참고 팝업·설정창** +- 샘플 Dropdown(흰 면, #DEDBD2 테두리, 반경 4, 항목 36px, 강조 rgba(189,223,212,.45))과 더보기 Dropdown(라벨, 체크, 라디오 구획). +- DraggablePanel 3종(레이어 320×420, 옵션 340×520, 속성 320×420): 베이지 #E0DACE, 2px #897445, 제목 막대 #221D13·#FFC600 700, 곡선 녹색 닫기(Hover #E40000), 접기, 드래그(경계 10px), 네이티브 resize, 본문 12px 패딩, 카드 섹션 #F5F0E5. +- 라이선스 모달 Dialog. +- Context Menu와 다단계 서브메뉴는 참고 뷰어에 **없습니다**. 요청에 따라 공통 Dropdown 기능으로 추가했습니다. + +**기존 SW 패키지와의 차이** +- 기존 `SWHeader`는 Figma 26:8944 기준(49px, 고정 필드 구성)입니다. 데이터 기반 메뉴, 탭, 스위치, 드래그 패널이 없습니다. +- `SWPopup`은 314px 고정 Figma 속성창 프레임으로, 이동·크기 조절·접기를 지원하지 않습니다. +- 재사용: 사용자 확정 면 토큰 3종(`--hm-sw-header-document-*`, `object-*`, `property-*`, 참고 뷰어와 같은 값), SW 외곽선 토큰(`--hm-sw-header-text-outline`, `label-outline`, `text-outline-room`), `SWTheme` 범위·버튼 초기화, `SWHeader` 로고 Props 규칙. + +**분류** + +| 항목 | 분류 | 근거 | +|---|---|---| +| 일반 모드 Header | 재사용(변경 없음) | `SWHeader` | +| 면 배경·외곽선·글꼴 | 재사용 | 기존 토큰 | +| 뷰어 Header | 신규 | 기존 SWHeader는 Figma 고정 구성이고, 뷰어 메뉴 구조·크기가 다름 | +| Dropdown·서브메뉴·Context | 신규 | SW 패키지에 범용 Dropdown 없음(필드 전용 Dropdown만 있음) | +| 뷰어 팝업 | 신규 | `SWPopup` 프레임(314px Figma art)과 외형·동작이 다름. Variant로 만들면 기존 속성창 DOM·CSS를 바꿔야 해서 분리 | + +## B. 패키지 변경 결과 + +**신규 파일** +- `packages/sw/src/components/sw-viewer/`: `types.ts`, `SWViewerHeader.tsx`, `SWViewerMenu.tsx`, `SWViewerPanel.tsx`, `SWViewerControls.tsx`, `index.ts` +- `packages/sw/src/theme/sw-viewer.css` +- `packages/sw/ai/VIEWER.md`, `packages/sw/ai/examples/ExampleH-ViewerMode.tsx` +- `packages/sw/tests/viewer.browser.mjs`, `viewer-regression.browser.mjs` + +**수정 파일** +- `packages/sw/src/index.ts`: 끝에 Export 1블록 +- `packages/sw/ai/AI_USAGE.md`: 문서 표 1행 +- `packages/sw/tests/storybook-inventory.mjs`: 삭제한 Story id 기록 + +기존 컴포넌트·`sw.css`·`SWHeaderPropertyPanel.tsx`는 수정하지 않았습니다. A+B 통합 작업과 충돌 가능성이 있는 곳은 `index.ts`·`AI_USAGE.md` 각 1군데뿐입니다. + +**공개 API**(`@hm-design/sw`) +- `SWViewerHeader`: `groups`·`trailing`·`onCommand`·`documentTitle`·`logo`/`logoSrc`/`logoAlt`/`onHomeClick` +- `SWViewerHeaderButton` +- `SWViewerMenu`: `entries`·`anchorRef`/`anchorPoint`·`surface`·`initialFocus` +- `SWViewerPanel`: `children`·`footer`·`headerActions`·크기·위치·`strategy`·드래그·크기 조절·접기·`modal` +- 패널 콘텐츠: `SWViewerSection`, `SWViewerField`, `SWViewerHint`, `SWViewerSwitch`, `SWViewerSlider`, `SWViewerInput`, `SWViewerButton`, `SWViewerBadge`, `SWViewerStatus` +- 타입: `SWViewerHeaderItem`, `SWViewerHeaderGroup`, `SWViewerMenuEntry`, `SWViewerCommand`, `SWViewerPanelPlacement` 및 각 Props + +**외곽선**(SW Header 분석 → 같은 기준 적용) +- 텍스트: SW Header는 14px 글자에 검정 1.3px(16 text-shadow), 12px 라벨에 1px을 씁니다. 뷰어의 14px 글자(파일명·버튼·탭·로고)는 `--hm-sw-header-text-outline`, 11px(스위치 캡션·개수·상태)는 `--hm-sw-header-label-outline`을 그대로 사용합니다. 말줄임 파일명에는 `overflow-clip-margin`을 적용했습니다. +- 아이콘: SW Header 아이콘 자산(print·K·레이어)은 채움 + 1px 검정 바깥 Stroke(Figma mask outside) + glow(stdDeviation 1.615, #061A14)입니다. 프로그램 아이콘은 자유 SVG라서 같은 효과를 `drop-shadow` 체인(1px × 4방향 + glow)으로 재현합니다. 토큰 `--hm-sw-viewer-icon-outline`이며 아이콘 윤곽을 따라갑니다. +- 색·크기·굵기·간격은 유지합니다. Hover·Active는 채움 색만 바뀌고, Disabled는 버튼 전체 opacity로 함께 흐려집니다. Dropdown과 패널에는 외곽선이 없습니다(SW Header More 메뉴와 같음). + +**로고** +- `SWHeader`와 같은 Props(`logo`, `logoSrc`, `logoAlt`, `onHomeClick`)를 씁니다. +- 로고를 주지 않으면 사선 끝 24px만 남고 문자·아이콘은 없습니다. +- 로고를 주면 72px 면이 되고, 로고가 더 넓으면 `24 + 로고 + 25`px입니다. Header 높이 52px와 메뉴 위치는 변하지 않습니다. + +**Storybook** +- `SW/Viewer` 10개: Viewer Header(로고 없음 기본), Menu Groups, Item States, Header + Dropdown(서브메뉴·체크·라디오·Context Menu), Settings Popup(footer), Popup Content Variants, Variable Size Popups, Responsive Widths, SWHeader vs Viewer Header(모드 전환), Logo +- 공개 API만 사용합니다. Story CSS는 배치와 Story 자체 목록에만 쓰고 `hm-sw-*`는 사용하지 않습니다. +- `SW/Tool`(`sw-tool.stories.tsx`)만 삭제했습니다. `SW/Popup`(`sw-popup.stories.tsx`, 공통 `SWPopup` 예시)과 `sw-integrated-stories.css`는 원본 그대로 유지합니다. `SWToolButton`/`SWToolGroup`/`SWPopup`과 그 API도 유지합니다. +- 삭제한 `sw-tool--tool-buttons`를 여는 기존 `integrated-improvement.browser.mjs`는 과거 검증 기록용으로만 남습니다. 지금 다시 실행하면 해당 단계가 실패합니다. + +**AI 지침**: `ai/VIEWER.md`(역할·사용 환경·Props·이벤트·Import·Viewer 적용 조건·콘텐츠 교체·외곽선·로고·주의사항·올바른 예/잘못된 예), 예제 H, `AI_USAGE.md` 문서 표 반영. + +## C. SW 프로그램 통합 결과 + +이번 범위에서 제외(사용자 결정)했으므로 **NOT TESTED**입니다. Storybook `SWHeader vs Viewer Header`에서 Header 교체만 UI로 시연했고, 화면 상태(파일명·패널)는 유지됩니다. + +메뉴 명령은 모두 `onCommand` 로그로만 표시하며 실제 기능은 미연결입니다: 파일 열기, 전체 보기, 선택 확대, 인쇄, 내보내기, 측정. + +## D. 검증 결과 + +| 항목 | 판정 | 근거 | +|---|---|---| +| Typecheck | PASS | `npm run typecheck`(전체 패키지 build + `tsc -b` + 5개 workspace) exit 0 | +| Package Build | PASS | `build:packages` / `build:sw` 성공 | +| Storybook Build | PASS | `npm run build-storybook` exit 0. CSS 경고 1건은 기존 docs의 `bg-[var(...)]` 문구(기존부터 있음) | +| 공개 Export | PASS | `ai-docs.check.mjs` 25/25(문서 식별자·예제 Import·링크) | +| 독립 소비 프로젝트 | PASS (일부) | `ai-template-consumer.mjs`: npm pack → 새 프로젝트 설치 → 예제 A~H `tsc` + `vite build` 통과. 예제 H의 브라우저 렌더링은 소비 프로젝트에서 미실행(Storybook에서만 확인) | +| 실제 화면 비교 | PASS (알려진 차이 있음) | 1440×900 같은 해상도 캡처와 수치 비교. 버튼·토글·탭·스위치 칸 크기가 참고와 같음(px 단위). 도면 공간 field 면은 42px로 참고(41px)와 1px 차이. 원인은 참고 Tabs 루트 39px. 파일명 면 x는 로고 규칙 때문에 −48px(의도된 차이) | +| 사용자 인터랙션 | PASS | `viewer.browser.mjs` 74/74 PASS (아래 항목 참조) | +| 외곽선 | PASS | 텍스트 1.3px/1px 검정 각 16 shadow, 아이콘 drop-shadow 5개, 색·크기·굵기 유지, Hover·Disabled에서 유지, 3배 확대 캡처(`outline-*.png`) | +| 로고 | PASS | 없음: 문자·이미지 0, 면 24px. logoSrc·logo 표시. 높이 52px, 메뉴 y 동일 | +| `SW/Tool` 삭제·`SW/Popup` 유지 | PASS | dev `index.json`: SW 제목은 `SW/Header`, `SW/Popup`, `SW/Viewer` (`viewer.browser.mjs` 재실행) | +| 기존 기능 회귀 | PASS | 기존 SW/Header Story 11개 × 3폭(1920/1180/768) 픽셀 차이 0(33/33). 비교 대상은 기준 Storybook(6024, e8409ef)과 이 브랜치. `test:components` 9/9, `test:guard` 94/94, `git diff --check` 통과 | +| Window Move Motion Story | NOT TESTED | 애니메이션이라 픽셀 비교에서 제외 | +| Firefox·Safari, 실제 창 크기 변경 | NOT TESTED | Chrome headless만 실행. 폭은 viewport와 Story 폭으로 재현 | + +`viewer.browser.mjs` 74개 항목: 메뉴 열기·위치·Enter/Arrow/Escape(Focus 복귀)·바깥 클릭, 탭 화살표, 스위치, Hover 면, 토글 → 팝업, 패널 Focus·Escape·Focus 복귀, 모서리 크기 조절, 드래그·경계 10px, 접기·더블클릭, 닫기 Hover #E40000, 앞으로 가져오기, 모달 배경·Focus Trap·Escape, 서브메뉴 →/← 3단계, 체크·라디오·비활성 항목, `menuAlign`·`menuWidth`, Context Menu 포인터 위치, 화면 경계, 1440/1100/860/520 가로 넘침 0, More 구획(샘플 도면/도면 공간/화면 보기/패널), More 체크·라디오 명령, 모드 전환과 상태 유지, 로고, 외곽선, 메뉴 삭제, 페이지 오류 0. + +**참고 뷰어와 의도적으로 다른 점** +- 모서리 크기 조절: 네이티브 `resize` 대신 같은 위치의 Grip을 씁니다. Firefox 등 모든 브라우저에서 동작하고 자동 검증할 수 있습니다. +- 패널 Escape 닫기를 추가했습니다(Focus가 패널 안에 있을 때). +- 로고 기본 표시를 없앴습니다(사용자 결정). +- 서브메뉴와 Context Menu를 추가했습니다(요청 범위). + +## E. 최종 판정 + +**PARTIAL**: 패키지 컴포넌트 구현, Storybook, AI 지침, 주요 UI·인터랙션 검증은 끝났습니다. PASS가 아닌 이유는 요청 원문의 “SW 프로그램 뷰어 모드 통합”이 이번 범위에서 제외되어(사용자 결정) 진행하지 않았기 때문입니다. Commit·Push는 승인 대기입니다. + +## F. 후속 디자인 수정 (Push `7f42923` 이후, 미커밋) + +| 항목 | 적용 | 검증 | +|---|---|---| +| A. 아이콘 외곽선 filter → SVG stroke | 신규 `SWViewerIcon`(공개). 아이콘 뒤 복사본의 도형을 검정 Stroke(원래 두께 + 화면 기준 양쪽 1px, `--hm-sw-viewer-icon-outline-width`), 채운 도형은 검정 채움. 위 아이콘은 그대로. CSS `filter`와 glow 제거 | 계산값: filter `none`, 복사본 stroke 검정 5 unit / 원본 2 unit(24 unit 아이콘을 16px로 그린 경우 1px = 1.5 unit). 3배 캡처에서 모양·선 두께 유지 | +| B. Viewer Popup = SW Popup | `SWViewerPanel`이 공통 `SWPopup`을 렌더링(같은 DOM·CSS). `SWPopup`에 선택 Props `titleActions`, `footer` 추가(기본 동작 동일). 제목 아이콘 Prop 제거, 기본 폭 314. 314px가 아닌 폭은 제목 아트를 오른쪽 정렬 + 왼쪽 평면 확장(이음매 없음). 패널 콘텐츠 토큰을 SW 속성창 토큰(`--hm-sw-property-*`)에 연결 | SW/Popup·Viewer 패널 계산값 동일(1px #A67D03, r4, inset 1px 검정, #E4DBC9, 제목 막대 30px, 제목 #FFC600 14px 700 + 1px 외곽선). 드래그·크기 조절·접기·Escape·모달·앞으로 가져오기 PASS | +| C. SW Header 메뉴 배경 그리드 | Story 공용 변수 `--sw-story-canvas`(Viewer 캔버스와 같은 40px 칸, 1px #266651 18%, #0A0A0B)를 SW Header Overview 작업 영역과 Dropdown 공간에 적용. SW Header 컴포넌트 자체는 변경 없음 | 캡처 확인. 회귀: 이전 배경을 테스트 CSS로 되돌리면 Header·Popup 요소 39/39 픽셀 동일, 실제 차이는 배경 투과 픽셀뿐 | +| D. 레이어 전체 켜기 / 끄기 | `SWViewerButton tone="green"`: 기본 유지, Hover = 확인(primary) 버튼 Hover와 같은 토큰 `--hm-sw-viewer-hover`, 누르는 동안 = primary 면 `--hm-sw-viewer-panel-primary`. 새 HEX 없음. 다른 버튼 영향 없음 | 기본 → Hover → Active → 놓은 뒤 Hover → 이탈 후 기본 계산값 PASS, 확인 버튼 Hover와 정확히 동일 | + +- 해석(C): “Viewer Header의 검정 그리드”는 Header 컴포넌트가 아니라 Story 도면 영역 배경이라 Story 레벨 공용 변수로 적용했습니다. +- 높이(추가 요청): 패키지에 뷰어 영역 고정 높이가 없음을 확인했습니다(Header 52px 한 줄, 팝업 최대 90vh). Storybook 프레임 높이는 Story 전용 값이고, 프로그램 레이아웃 규칙은 `ai/VIEWER.md` §7에 적었습니다. 실제 테스트 프로젝트(`HMDesignSwTest-viewer`)는 다른 세션이 작업 중이라 이 세션에서는 수정하지 않았습니다. 읽기 확인 결과, 화면 높이는 `h-full` 세로 flex에 도면 영역 `flex-1 min-h-0`이고, 렌더러 크기 조정은 window `resize`에만 연결되어 있습니다(컨테이너 크기 변화에는 미대응). +- 검증: `viewer.browser.mjs` 76/76, 요소 회귀 39/39(`--neutral-canvas`), `npm run typecheck` 0 오류, `build-storybook` 성공, `ai-docs.check` 25/25. diff --git a/docs/sw/viewer-qa/outline-states-2x.png b/docs/sw/viewer-qa/outline-states-2x.png new file mode 100644 index 0000000..1f6e915 Binary files /dev/null and b/docs/sw/viewer-qa/outline-states-2x.png differ diff --git a/docs/sw/viewer-qa/outline-swheader-3x.png b/docs/sw/viewer-qa/outline-swheader-3x.png new file mode 100644 index 0000000..0f2b304 Binary files /dev/null and b/docs/sw/viewer-qa/outline-swheader-3x.png differ diff --git a/docs/sw/viewer-qa/outline-viewer-3x.png b/docs/sw/viewer-qa/outline-viewer-3x.png new file mode 100644 index 0000000..a1da4e4 Binary files /dev/null and b/docs/sw/viewer-qa/outline-viewer-3x.png differ diff --git a/docs/sw/viewer-qa/outline-viewer-right-3x.png b/docs/sw/viewer-qa/outline-viewer-right-3x.png new file mode 100644 index 0000000..843d4a5 Binary files /dev/null and b/docs/sw/viewer-qa/outline-viewer-right-3x.png differ diff --git a/docs/sw/viewer-qa/package-1440-loaded.png b/docs/sw/viewer-qa/package-1440-loaded.png new file mode 100644 index 0000000..b524102 Binary files /dev/null and b/docs/sw/viewer-qa/package-1440-loaded.png differ diff --git a/docs/sw/viewer-qa/package-1440-panels.png b/docs/sw/viewer-qa/package-1440-panels.png new file mode 100644 index 0000000..eceb9aa Binary files /dev/null and b/docs/sw/viewer-qa/package-1440-panels.png differ diff --git a/docs/sw/viewer-qa/package-1440-sample-menu.png b/docs/sw/viewer-qa/package-1440-sample-menu.png new file mode 100644 index 0000000..f481346 Binary files /dev/null and b/docs/sw/viewer-qa/package-1440-sample-menu.png differ diff --git a/docs/sw/viewer-qa/package-logo-element.png b/docs/sw/viewer-qa/package-logo-element.png new file mode 100644 index 0000000..4087677 Binary files /dev/null and b/docs/sw/viewer-qa/package-logo-element.png differ diff --git a/docs/sw/viewer-qa/package-logo-none.png b/docs/sw/viewer-qa/package-logo-none.png new file mode 100644 index 0000000..ee4f59d Binary files /dev/null and b/docs/sw/viewer-qa/package-logo-none.png differ diff --git a/docs/sw/viewer-qa/package-logo-src.png b/docs/sw/viewer-qa/package-logo-src.png new file mode 100644 index 0000000..2a86285 Binary files /dev/null and b/docs/sw/viewer-qa/package-logo-src.png differ diff --git a/docs/sw/viewer-qa/package-responsive-1100.png b/docs/sw/viewer-qa/package-responsive-1100.png new file mode 100644 index 0000000..317a856 Binary files /dev/null and b/docs/sw/viewer-qa/package-responsive-1100.png differ diff --git a/docs/sw/viewer-qa/package-responsive-1440.png b/docs/sw/viewer-qa/package-responsive-1440.png new file mode 100644 index 0000000..e49cca9 Binary files /dev/null and b/docs/sw/viewer-qa/package-responsive-1440.png differ diff --git a/docs/sw/viewer-qa/package-responsive-520.png b/docs/sw/viewer-qa/package-responsive-520.png new file mode 100644 index 0000000..edd40dd Binary files /dev/null and b/docs/sw/viewer-qa/package-responsive-520.png differ diff --git a/docs/sw/viewer-qa/package-responsive-860.png b/docs/sw/viewer-qa/package-responsive-860.png new file mode 100644 index 0000000..cda99bf Binary files /dev/null and b/docs/sw/viewer-qa/package-responsive-860.png differ diff --git a/docs/sw/viewer-qa/package-responsive-more-open.png b/docs/sw/viewer-qa/package-responsive-more-open.png new file mode 100644 index 0000000..4c111b6 Binary files /dev/null and b/docs/sw/viewer-qa/package-responsive-more-open.png differ diff --git a/docs/sw/viewer-qa/reference-1440-idle.png b/docs/sw/viewer-qa/reference-1440-idle.png new file mode 100644 index 0000000..7f51570 Binary files /dev/null and b/docs/sw/viewer-qa/reference-1440-idle.png differ diff --git a/docs/sw/viewer-qa/reference-1440-loaded.png b/docs/sw/viewer-qa/reference-1440-loaded.png new file mode 100644 index 0000000..f10eb00 Binary files /dev/null and b/docs/sw/viewer-qa/reference-1440-loaded.png differ diff --git a/docs/sw/viewer-qa/reference-1440-panels.png b/docs/sw/viewer-qa/reference-1440-panels.png new file mode 100644 index 0000000..21f03f6 Binary files /dev/null and b/docs/sw/viewer-qa/reference-1440-panels.png differ diff --git a/docs/sw/viewer-qa/reference-1440-sample-menu.png b/docs/sw/viewer-qa/reference-1440-sample-menu.png new file mode 100644 index 0000000..e44670f Binary files /dev/null and b/docs/sw/viewer-qa/reference-1440-sample-menu.png differ diff --git a/docs/sw/viewer-qa/regression/regression-neutral-canvas.json b/docs/sw/viewer-qa/regression/regression-neutral-canvas.json new file mode 100644 index 0000000..ffa3b2b --- /dev/null +++ b/docs/sw/viewer-qa/regression/regression-neutral-canvas.json @@ -0,0 +1,636 @@ +{ + "base": "http://127.0.0.1:6024", + "next": "http://127.0.0.1:6034", + "results": [ + { + "id": "sw-header--overview", + "width": 1920, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 1180, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 768, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 1920, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 1180, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 768, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 1920, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 1180, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 768, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 1920, + "elements": "18 / 18", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 1180, + "elements": "18 / 18", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 768, + "elements": "18 / 18", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1920, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1180, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 768, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 1920, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 1180, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 768, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 1920, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 1180, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 768, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 1920, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 1180, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 768, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-open", + "width": 1920, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-open", + "width": 1180, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-open", + "width": 768, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 1920, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 1180, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 768, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + } + ] +} diff --git a/docs/sw/viewer-qa/regression/regression.json b/docs/sw/viewer-qa/regression/regression.json new file mode 100644 index 0000000..c9c3b1a --- /dev/null +++ b/docs/sw/viewer-qa/regression/regression.json @@ -0,0 +1,636 @@ +{ + "base": "http://127.0.0.1:6024", + "next": "http://127.0.0.1:6034", + "results": [ + { + "id": "sw-header--overview", + "width": 1920, + "elements": "1 / 1", + "elementDiffPixels": [ + 667 + ], + "fullPageDiffPixels": 716941, + "result": "FAIL" + }, + { + "id": "sw-header--overview", + "width": 1180, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 606746, + "result": "PASS" + }, + { + "id": "sw-header--overview", + "width": 768, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 237853, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 1920, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 1180, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--interactive-states", + "width": 768, + "elements": "16 / 16", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 1920, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 1180, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--logo-slot", + "width": 768, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 1920, + "elements": "18 / 18", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 6111124, + "result": "PASS" + }, + { + "id": "sw-header--document-dropdown", + "width": 1180, + "elements": "18 / 18", + "elementDiffPixels": [ + 793, + 0, + 0, + 0, + 0, + 0, + 1109, + 793, + 793, + 793, + 793, + 793, + 793, + 0, + 0, + 0, + 0, + 48 + ], + "fullPageDiffPixels": 5602299, + "result": "FAIL" + }, + { + "id": "sw-header--document-dropdown", + "width": 768, + "elements": "18 / 18", + "elementDiffPixels": [ + 405, + 0, + 0, + 0, + 0, + 0, + 721, + 405, + 405, + 405, + 405, + 405, + 405, + 0, + 0, + 0, + 0, + 48 + ], + "fullPageDiffPixels": 3410951, + "result": "FAIL" + }, + { + "id": "sw-header--responsive-more", + "width": 1920, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 8338418, + "result": "PASS" + }, + { + "id": "sw-header--responsive-more", + "width": 1180, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 818, + 50, + 0, + 0, + 0, + 0, + 0, + 0, + 47, + 48, + 48, + 48, + 48, + 47, + 48, + 47, + 48, + 48 + ], + "fullPageDiffPixels": 7674707, + "result": "FAIL" + }, + { + "id": "sw-header--responsive-more", + "width": 768, + "elements": "19 / 19", + "elementDiffPixels": [ + 0, + 721, + 50, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 47, + 48, + 47, + 48, + 48 + ], + "fullPageDiffPixels": 4880711, + "result": "FAIL" + }, + { + "id": "sw-header--k-guide", + "width": 1920, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 1180, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--k-guide", + "width": 768, + "elements": "1 / 1", + "elementDiffPixels": [ + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 1920, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 1180, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--property-panel-compare", + "width": 768, + "elements": "4 / 4", + "elementDiffPixels": [ + 0, + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 1920, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 1180, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--composed-controls", + "width": 768, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--document-open", + "width": 1920, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 1199, + 1198, + 1180, + 1078, + 899, + 768, + 640, + 520, + 388, + 0, + 1200, + 1200, + 1180, + 1080, + 900, + 766, + 640, + 520, + 390 + ], + "fullPageDiffPixels": 10359147, + "result": "FAIL" + }, + { + "id": "sw-header--document-open", + "width": 1180, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 1108, + 1108, + 1110, + 1127, + 948, + 817, + 689, + 569, + 437, + 0, + 1110, + 1110, + 1110, + 1129, + 949, + 815, + 689, + 569, + 439 + ], + "fullPageDiffPixels": 9548042, + "result": "FAIL" + }, + { + "id": "sw-header--document-open", + "width": 768, + "elements": "23 / 23", + "elementDiffPixels": [ + 0, + 0, + 0, + 0, + 721, + 721, + 722, + 722, + 721, + 722, + 689, + 569, + 437, + 0, + 722, + 722, + 722, + 722, + 722, + 720, + 689, + 569, + 439 + ], + "fullPageDiffPixels": 6118190, + "result": "FAIL" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 1199, + 0 + ], + "fullPageDiffPixels": 1178934, + "result": "FAIL" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 1110, + 0 + ], + "fullPageDiffPixels": 1084137, + "result": "FAIL" + }, + { + "id": "sw-header--hidden-sub-controls", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 722, + 0 + ], + "fullPageDiffPixels": 676260, + "result": "FAIL" + }, + { + "id": "sw-header--detail-buttons", + "width": 1920, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 1180, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-header--detail-buttons", + "width": 768, + "elements": "0 / 0", + "elementDiffPixels": [], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--custom-content", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 1920, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 1180, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + }, + { + "id": "sw-popup--multiple-popups", + "width": 768, + "elements": "3 / 3", + "elementDiffPixels": [ + 0, + 0, + 0 + ], + "fullPageDiffPixels": 0, + "result": "PASS" + } + ] +} diff --git a/docs/sw/viewer-qa/report.json b/docs/sw/viewer-qa/report.json new file mode 100644 index 0000000..c7cb7db --- /dev/null +++ b/docs/sw/viewer-qa/report.json @@ -0,0 +1,631 @@ +{ + "storybook": "http://127.0.0.1:6034", + "reference": "http://127.0.0.1:5182", + "comparison": { + "reference": { + "document": [ + { + "x": 73, + "y": 1, + "w": 337, + "h": 50, + "text": "C0060202-001" + } + ], + "object": [ + { + "x": 412, + "y": 1, + "w": 1027, + "h": 50, + "text": "파일 열기샘플 Mode" + } + ], + "field": [ + { + "x": 622, + "y": 6, + "w": 197, + "h": 41, + "text": "Model17,377L" + }, + { + "x": 823, + "y": 5, + "w": 249, + "h": 42, + "text": "전체 보기2.5D어두운" + } + ], + "button": [ + { + "x": 421, + "y": 9, + "w": 109, + "h": 34, + "text": "파일 열기" + }, + { + "x": 534, + "y": 9, + "w": 80, + "h": 34, + "text": "샘플" + }, + { + "x": 828, + "y": 9, + "w": 109, + "h": 34, + "text": "전체 보기" + }, + { + "x": 1402, + "y": 6, + "w": 32, + "h": 40, + "text": "" + } + ], + "toggle": [ + { + "x": 1086, + "y": 6, + "w": 81, + "h": 40, + "text": "레이어" + }, + { + "x": 1171, + "y": 6, + "w": 68, + "h": 40, + "text": "설정" + }, + { + "x": 1243, + "y": 6, + "w": 68, + "h": 40, + "text": "속성" + } + ], + "tab": [ + { + "x": 627, + "y": 7, + "w": 97, + "h": 40, + "text": "Model17,377" + }, + { + "x": 728, + "y": 7, + "w": 87, + "h": 40, + "text": "Layout237" + } + ], + "switchField": [ + { + "x": 942, + "y": 6, + "w": 52, + "h": 40, + "text": "2.5D" + }, + { + "x": 998, + "y": 6, + "w": 70, + "h": 40, + "text": "어두운 배경" + } + ] + }, + "package": { + "document": [ + { + "x": 25, + "y": 1, + "w": 360, + "h": 50, + "text": "C0060202-001" + } + ], + "object": [ + { + "x": 387, + "y": 1, + "w": 1053, + "h": 50, + "text": "파일 열기샘플Model" + } + ], + "field": [ + { + "x": 597, + "y": 5, + "w": 197, + "h": 42, + "text": "Model17,377L" + }, + { + "x": 798, + "y": 5, + "w": 249, + "h": 42, + "text": "전체 보기2.5D어두운" + } + ], + "button": [ + { + "x": 396, + "y": 9, + "w": 109, + "h": 34, + "text": "파일 열기" + }, + { + "x": 509, + "y": 9, + "w": 80, + "h": 34, + "text": "샘플" + }, + { + "x": 803, + "y": 9, + "w": 109, + "h": 34, + "text": "전체 보기" + }, + { + "x": 1402, + "y": 6, + "w": 32, + "h": 40, + "text": "" + } + ], + "toggle": [ + { + "x": 1086, + "y": 6, + "w": 81, + "h": 40, + "text": "레이어" + }, + { + "x": 1171, + "y": 6, + "w": 68, + "h": 40, + "text": "설정" + }, + { + "x": 1243, + "y": 6, + "w": 68, + "h": 40, + "text": "속성" + } + ], + "tab": [ + { + "x": 602, + "y": 6, + "w": 97, + "h": 40, + "text": "Model17,377" + }, + { + "x": 702, + "y": 6, + "w": 87, + "h": 40, + "text": "Layout237" + } + ], + "switchField": [ + { + "x": 916, + "y": 6, + "w": 52, + "h": 40, + "text": "2.5D" + }, + { + "x": 972, + "y": 6, + "w": 70, + "h": 40, + "text": "어두운 배경" + } + ] + } + }, + "results": [ + { + "name": "geometry button sizes equal to reference", + "result": "PASS", + "detail": "reference 109x34 80x34 109x34 32x40 / package 109x34 80x34 109x34 32x40" + }, + { + "name": "geometry toggle sizes equal to reference", + "result": "PASS", + "detail": "reference 81x40 68x40 68x40 / package 81x40 68x40 68x40" + }, + { + "name": "geometry tab sizes equal to reference", + "result": "PASS", + "detail": "reference 97x40 87x40 / package 97x40 87x40" + }, + { + "name": "geometry switchField sizes equal to reference", + "result": "PASS", + "detail": "reference 52x40 70x40 / package 52x40 70x40" + }, + { + "name": "geometry field sizes equal to reference (±1px height, known)", + "result": "PASS", + "detail": "reference 197x41 249x42 / package 197x42 249x42" + }, + { + "name": "geometry document well height / top (x: logo rule)", + "result": "PASS", + "detail": "reference x73 y1 h50 / package x25 y1 h50" + }, + { + "name": "menu opens on click", + "result": "PASS", + "detail": "" + }, + { + "name": "menu has 3 entries", + "result": "PASS", + "detail": "" + }, + { + "name": "menu placed under its button", + "result": "PASS", + "detail": "menu 549,365 button 549,361" + }, + { + "name": "trigger shows open state", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowDown moves focus in menu", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape closes menu", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape returns focus to trigger", + "result": "PASS", + "detail": "" + }, + { + "name": "Enter opens with first entry focused", + "result": "PASS", + "detail": "" + }, + { + "name": "Enter selects entry (document changes)", + "result": "PASS", + "detail": "" + }, + { + "name": "onCommand reports menu entry", + "result": "PASS", + "detail": "Command: samples/sample-dxf" + }, + { + "name": "outside click closes menu", + "result": "PASS", + "detail": "" + }, + { + "name": "tabs ArrowRight selects Layout", + "result": "PASS", + "detail": "" + }, + { + "name": "header switch toggles", + "result": "PASS", + "detail": "" + }, + { + "name": "hover face #266651", + "result": "PASS", + "detail": "" + }, + { + "name": "toggle opens panel", + "result": "PASS", + "detail": "" + }, + { + "name": "toggle pressed state + #FFC600", + "result": "PASS", + "detail": "" + }, + { + "name": "panel focused on open", + "result": "PASS", + "detail": "" + }, + { + "name": "Escape closes panel", + "result": "PASS", + "detail": "" + }, + { + "name": "focus returns to toggle", + "result": "PASS", + "detail": "" + }, + { + "name": "corner resize changes size", + "result": "PASS", + "detail": "314x420 → 257x323" + }, + { + "name": "drag moves panel", + "result": "PASS", + "detail": "dx -300 dy 30" + }, + { + "name": "drag stays inside bounds (10px edge)", + "result": "PASS", + "detail": "right gap 10, bottom gap 10" + }, + { + "name": "collapse hides body", + "result": "PASS", + "detail": "" + }, + { + "name": "title double click expands", + "result": "PASS", + "detail": "" + }, + { + "name": "전체 켜기: default kept, green hover / active, back after release", + "result": "PASS", + "detail": "rgb(255, 255, 255) rgb(18, 51, 40) | rgb(38, 102, 81) rgb(255, 255, 255) | rgb(18, 51, 40) rgb(255, 255, 255) | rgb(38, 102, 81) rgb(255, 255, 255) | rgb(255, 255, 255) rgb(18, 51, 40)" + }, + { + "name": "panel content callback", + "result": "PASS", + "detail": "" + }, + { + "name": "close hover = SWPopup hover asset", + "result": "PASS", + "detail": "" + }, + { + "name": "close button closes", + "result": "PASS", + "detail": "" + }, + { + "name": "last touched panel on top", + "result": "PASS", + "detail": "layer z 47, options z 46" + }, + { + "name": "전체 켜기 hover = 라이선스 확인 hover (same token)", + "result": "PASS", + "detail": "rgb(38, 102, 81) rgb(255, 255, 255) / rgb(38, 102, 81) rgb(255, 255, 255)" + }, + { + "name": "modal popup opens with backdrop", + "result": "PASS", + "detail": "" + }, + { + "name": "modal focus stays inside", + "result": "PASS", + "detail": "" + }, + { + "name": "modal Escape closes", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowRight opens submenu with focus", + "result": "PASS", + "detail": "" + }, + { + "name": "submenu opens to the side", + "result": "PASS", + "detail": "parent right 596, sub left 596" + }, + { + "name": "third level opens on hover", + "result": "PASS", + "detail": "" + }, + { + "name": "ArrowLeft closes one level", + "result": "PASS", + "detail": "" + }, + { + "name": "checkbox entry toggles via onCommand", + "result": "PASS", + "detail": "Command: file/lineweight=true" + }, + { + "name": "checkbox state reflected", + "result": "PASS", + "detail": "" + }, + { + "name": "disabled entry does nothing", + "result": "PASS", + "detail": "" + }, + { + "name": "menuAlign end + menuWidth", + "result": "PASS", + "detail": "width 220" + }, + { + "name": "context menu opens at pointer", + "result": "PASS", + "detail": "90,729" + }, + { + "name": "context entry reported", + "result": "PASS", + "detail": "" + }, + { + "name": "menu stays inside the viewport", + "result": "PASS", + "detail": "left 4, right 224" + }, + { + "name": "no horizontal overflow at 1440 / 1100 / 860 / 520", + "result": "PASS", + "detail": "[[1440,0,0],[1100,0,0],[860,0,0],[520,0,0]]" + }, + { + "name": "1440: no More", + "result": "PASS", + "detail": "" + }, + { + "name": "1100: More, samples/tabs/switches moved", + "result": "PASS", + "detail": "" + }, + { + "name": "860: panel toggles moved too", + "result": "PASS", + "detail": "" + }, + { + "name": "520: 파일 열기 / 전체 보기 icon only", + "result": "PASS", + "detail": "" + }, + { + "name": "More sections like the reference", + "result": "PASS", + "detail": "샘플 도면 | 기본 도면 · DWG | 평면 및 종단면도 · DWG | 기본 도형 · DXF | 도면 공간 | Model · 17,377개 | Layout · 237개 | 화면 보기 | 2.5D | 어두운 배경 | 패널 | 레이어 | 설정 | 속성" + }, + { + "name": "More face beige 260px", + "result": "PASS", + "detail": "" + }, + { + "name": "More checkbox reports command", + "result": "PASS", + "detail": "Command: layers=true" + }, + { + "name": "More radio selects tab value", + "result": "PASS", + "detail": "" + }, + { + "name": "mode switch shows viewer header", + "result": "PASS", + "detail": "" + }, + { + "name": "brand click returns to normal SWHeader", + "result": "PASS", + "detail": "" + }, + { + "name": "state kept across mode switch (layer panel still open)", + "result": "PASS", + "detail": "" + }, + { + "name": "logo none: no HM / text / icon", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":false,\"width\":24,\"docX\":25,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "logo none: cap shrinks to its edge (no wide gap)", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":false,\"width\":24,\"docX\":25,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "logoSrc shows the image (cap = 24 + logo + 25, min 72)", + "result": "PASS", + "detail": "{\"text\":\"\",\"img\":true,\"width\":94,\"docX\":95,\"height\":52,\"fileOpenY\":9,\"logoWidth\":45}" + }, + { + "name": "logo element shown", + "result": "PASS", + "detail": "{\"text\":\"LOGO\",\"img\":true,\"width\":81,\"docX\":82,\"height\":52,\"fileOpenY\":9}" + }, + { + "name": "header height and menu row unchanged with / without logo", + "result": "PASS", + "detail": "52/9 52/9 52/9" + }, + { + "name": "text outline 1.3px black on 14px text (label / file name / tab)", + "result": "PASS", + "detail": "rgb(0, 0, 0) 1.3px 0px 0px, rgb(0, 0, 0) 1.2px 0.5px 0px, rg" + }, + { + "name": "label outline 1px black on 11px captions / counts", + "result": "PASS", + "detail": "rgb(0, 0, 0) 1px 0px 0px, rgb(0, 0, 0) 0.92px 0.38px 0px, rg" + }, + { + "name": "icon outline: SVG stroke copy, no CSS filter", + "result": "PASS", + "detail": "{\"filter\":\"none\",\"copyStroke\":\"rgb(0, 0, 0)\",\"copyWidth\":5,\"glyphStroke\":\"rgb(255, 255, 255)\",\"glyphWidth\":2}" + }, + { + "name": "fill / size / weight / spacing kept", + "result": "PASS", + "detail": "rgb(255, 255, 255) 14px 500 normal" + }, + { + "name": "hover changes fill only (outline kept)", + "result": "PASS", + "detail": "" + }, + { + "name": "disabled fades text + outline together", + "result": "PASS", + "detail": "[\"0.6\",true]" + }, + { + "name": "SW/Tool removed from the sidebar", + "result": "PASS", + "detail": "SW/Header, SW/Viewer, SW/Popup" + }, + { + "name": "SW/Popup, SW/Header and SW/Viewer remain", + "result": "PASS", + "detail": "" + }, + { + "name": "no page errors", + "result": "PASS", + "detail": "" + } + ], + "errors": [] +} diff --git a/docs/sw/viewer-qa/story-compare-with-sw-header.png b/docs/sw/viewer-qa/story-compare-with-sw-header.png new file mode 100644 index 0000000..76546fc Binary files /dev/null and b/docs/sw/viewer-qa/story-compare-with-sw-header.png differ diff --git a/docs/sw/viewer-qa/story-content-variants.png b/docs/sw/viewer-qa/story-content-variants.png new file mode 100644 index 0000000..35fe8dd Binary files /dev/null and b/docs/sw/viewer-qa/story-content-variants.png differ diff --git a/docs/sw/viewer-qa/story-dropdowns.png b/docs/sw/viewer-qa/story-dropdowns.png new file mode 100644 index 0000000..751fa33 Binary files /dev/null and b/docs/sw/viewer-qa/story-dropdowns.png differ diff --git a/docs/sw/viewer-qa/story-logo.png b/docs/sw/viewer-qa/story-logo.png new file mode 100644 index 0000000..4ef6877 Binary files /dev/null and b/docs/sw/viewer-qa/story-logo.png differ diff --git a/docs/sw/viewer-qa/story-menu-groups.png b/docs/sw/viewer-qa/story-menu-groups.png new file mode 100644 index 0000000..c4e5a35 Binary files /dev/null and b/docs/sw/viewer-qa/story-menu-groups.png differ diff --git a/docs/sw/viewer-qa/story-responsive.png b/docs/sw/viewer-qa/story-responsive.png new file mode 100644 index 0000000..634d727 Binary files /dev/null and b/docs/sw/viewer-qa/story-responsive.png differ diff --git a/docs/sw/viewer-qa/story-settings-panel.png b/docs/sw/viewer-qa/story-settings-panel.png new file mode 100644 index 0000000..ed6d041 Binary files /dev/null and b/docs/sw/viewer-qa/story-settings-panel.png differ diff --git a/docs/sw/viewer-qa/story-states.png b/docs/sw/viewer-qa/story-states.png new file mode 100644 index 0000000..86b9e88 Binary files /dev/null and b/docs/sw/viewer-qa/story-states.png differ diff --git a/docs/sw/viewer-qa/story-variable-size.png b/docs/sw/viewer-qa/story-variable-size.png new file mode 100644 index 0000000..c594a4d Binary files /dev/null and b/docs/sw/viewer-qa/story-variable-size.png differ diff --git a/docs/sw/viewer-qa/story-viewer-header.png b/docs/sw/viewer-qa/story-viewer-header.png new file mode 100644 index 0000000..20d5609 Binary files /dev/null and b/docs/sw/viewer-qa/story-viewer-header.png differ diff --git a/package-lock.json b/package-lock.json index a9406a5..e615788 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "@hm-design/center-graphic": "*", "@hm-design/org-chart": "*", "@hm-design/org-chart-react": "*", + "@hm-design/sw": "*", "@hm-design/ui": "*", "lucide-react": "^1.49.0", "react": "19.3.0", @@ -1218,6 +1219,10 @@ "resolved": "packages/org-chart-react", "link": true }, + "node_modules/@hm-design/sw": { + "resolved": "packages/sw", + "link": true + }, "node_modules/@hm-design/ui": { "resolved": "packages/ui", "link": true @@ -10718,6 +10723,14 @@ } } }, + "packages/sw": { + "name": "@hm-design/sw", + "version": "0.2.0", + "peerDependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + } + }, "packages/ui": { "name": "@hm-design/ui", "version": "0.1.0", diff --git a/package.json b/package.json index a9969fb..231a25c 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,8 @@ "build:publisher-example": "vite build --config examples/publisher-list/vite.config.ts", "test:components": "node --test scripts/publisher-components.test.mjs", "test:guard": "node --test scripts/ai-generation-guard.test.mjs", + "sync:ai-docs": "node scripts/ai-docs.mjs --sync", + "check:ai-docs": "node scripts/ai-docs.mjs --check", "build": "tsc -b && vite build", "build:dashboard-export": "npm run check:theme-defaults && npm run build:packages && vite build --config vite.dashboard-export.config.ts && node scripts/finalize-dashboard-export.mjs", "h2:preview": "node scripts/h2-preview.mjs", @@ -31,16 +33,19 @@ "dev:org-chart-example": "node examples/org-chart/serve.mjs", "test:org-chart-browser": "node examples/org-chart/verify.mjs", "build:org-chart-react": "npm run build -w @hm-design/org-chart-react", + "build:sw": "npm run build -w @hm-design/sw", + "typecheck:sw": "npm run typecheck -w @hm-design/sw", "typecheck:org-chart-react": "npm run typecheck -w @hm-design/org-chart-react", "build:org-chart-react-example": "vite build --config examples/org-chart-react/vite.config.ts", "dev:org-chart-react-example": "vite --config examples/org-chart-react/vite.config.ts", "test:org-chart-react-browser": "node examples/org-chart-react/verify.mjs", - "build:packages": "npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react" + "build:packages": "npm run build:org-chart && npm run build:ui && npm run build:center-graphic && npm run build:org-chart-react && npm run build:sw" }, "dependencies": { "@hm-design/org-chart": "*", "@hm-design/org-chart-react": "*", "@hm-design/center-graphic": "*", + "@hm-design/sw": "*", "@hm-design/ui": "*", "lucide-react": "^1.49.0", "react": "19.3.0", diff --git a/packages/org-chart-react/README.md b/packages/org-chart-react/README.md index 5a48681..d013ee9 100644 --- a/packages/org-chart-react/README.md +++ b/packages/org-chart-react/README.md @@ -144,3 +144,7 @@ npm run build --workspace @hm-design/org-chart-react ``` Storybook is one React host, not proof of every consumer deployment. The adapter delegates Auto Pan/Zoom to Core; it adds no alternate layout, additional relation overlays or API client. SSR/hydration, full screen reader behavior, physical touch, complete heap/GC recovery, HM Dialog without its Theme, Workdesk reference visual approval and every deployment environment require their own evidence. Default/Core rendering requires no HM Theme. Public ESM import without a DOM does not establish SSR/hydration support. Consult the minimal-install verification report for actual packed-package consumer results. + +## AI coding tools + +AI coding tools should read [`ai/AI_GUIDE.md`](./ai/AI_GUIDE.md) first (shared HMDesign entry point). [`ai/AI_USAGE.md`](./ai/AI_USAGE.md) points to the OrgChart rules, API catalog and patterns shipped in `@hm-design/org-chart/ai/`. `ai/` is included in the packed package. diff --git a/packages/org-chart-react/ai/AGENTS_SNIPPET.md b/packages/org-chart-react/ai/AGENTS_SNIPPET.md new file mode 100644 index 0000000..cd3372d --- /dev/null +++ b/packages/org-chart-react/ai/AGENTS_SNIPPET.md @@ -0,0 +1,16 @@ +## HMDesign 디자인 시스템 + + + +HMDesign 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart | 혼합(영역별로 적기, SW 영역은 모드까지) + +화면·컴포넌트를 구현하거나 수정하기 전에 다음을 지킨다. + +1. 설치된 HMDesign 패키지의 공통 가이드를 먼저 읽는다: `node_modules/@hm-design/<설치된 패키지>/ai/AI_GUIDE.md` (`ui`, `sw`, `org-chart`, `org-chart-react` 중 아무 사본이나 내용이 같다). +2. 위 "사용 유형"이 없고 요청으로도 정할 수 없으면 코드 작성 전에 "어떤 HMDesign 디자인 시스템을 사용하시겠습니까? 1. Web 2. SW (일반 모드 / 뷰어 모드) 3. OrgChart 4. 혼합 사용"을 묻는다. SW인데 모드(일반/뷰어)가 불명확하면 "SW 화면을 어떤 모드로 만들까요? 1. SW 일반 모드 2. SW 뷰어 모드"를 묻는다(근거는 `@hm-design/sw/ai/AI_USAGE.md` §0). 정해져 있으면 다시 묻지 않는다. +3. 선택한 패키지의 `ai/AI_USAGE.md` → `COMPONENT_CATALOG.md` → `DESIGN_RULES.md` → `COMPOSITION_PATTERNS.md` 순으로 필요한 절을 읽는다. + - Web: `node_modules/@hm-design/ui/ai/` + - SW: `node_modules/@hm-design/sw/ai/` (뷰어 모드는 `AI_USAGE.md` §0 다음 `VIEWER.md`) + - OrgChart: `node_modules/@hm-design/org-chart/ai/` (React는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`도) +4. 선택한 유형·모드 안에서 기존 컴포넌트 → Props → 조합 → (없는 부분만) 그 모드의 토큰·스타일로 신규 → (참고 값도 없으면) HMDesign 공통 규칙과 조화되게 구성하고 "AI 구성 값"으로 보고하는 순서를 지킨다. 패키지 파일 수정·내부 경로 import·구현 복사는 하지 않는다. +5. Web / SW 일반 / SW 뷰어 / OrgChart 스타일을 영역별로 분리하고(한 SW 화면에 일반·뷰어 컴포넌트를 섞지 않음), 완료 후 AI_GUIDE의 결과 보고 형식으로 유형·모드, 재사용·신규·토큰·AI 구성 값·검증·NOT VERIFIED를 보고한다. diff --git a/packages/org-chart-react/ai/AI_GUIDE.md b/packages/org-chart-react/ai/AI_GUIDE.md new file mode 100644 index 0000000..a9a6b58 --- /dev/null +++ b/packages/org-chart-react/ai/AI_GUIDE.md @@ -0,0 +1,275 @@ +# HMDesign AI 작업 가이드 — 공통 진입점 + +> 이 파일은 HMDesign 패키지(`@hm-design/ui`, `@hm-design/sw`, `@hm-design/org-chart`, `@hm-design/org-chart-react`)의 `ai/AI_GUIDE.md`에 **같은 내용으로** 들어 있습니다. 원본은 HMDesign 저장소 `docs/ai/AI_GUIDE.md`이며 패키지 사본은 `npm run sync:ai-docs`로 갱신합니다. 사본을 직접 고치지 않습니다. + +사용자가 "HMDesign 패키지를 기준으로 화면을 구현해 주세요", "HMDesign SW로 화면을 만들어 주세요"처럼 요청하면 AI 코딩 도구는 이 파일의 1~7단계를 순서대로 따릅니다. 이 문서와 각 패키지의 `ai/` 문서는 실제 공개 API·CSS에서 확인한 내용만 적습니다. 여기에 없는 컴포넌트·Props·토큰은 없는 것으로 취급합니다. + +## 0. 읽는 순서 + +1. **이 파일**(어느 패키지의 사본이든 같음) +2. 선택한 패키지의 `ai/AI_USAGE.md` → `ai/COMPONENT_CATALOG.md` → `ai/DESIGN_RULES.md` → `ai/COMPOSITION_PATTERNS.md` (SW 뷰어 모드는 `AI_USAGE.md` §0 다음에 `ai/VIEWER.md`를 먼저 읽고 카탈로그의 뷰어 절을 봅니다) +3. API가 의심스러우면 그 패키지의 `dist/*.d.ts`(공개 진입점에서 export되는 것만) + +| 유형 | 패키지 | 지침 위치(설치 후) | JS 진입점 | CSS | +|---|---|---|---|---| +| ① Web UI | `@hm-design/ui` | `node_modules/@hm-design/ui/ai/` | `@hm-design/ui`, `@hm-design/ui/theme` | `@hm-design/ui/tailwind.css` + `@hm-design/ui/theme.css`(Tailwind CSS 4 필요), 선택 `@hm-design/ui/dashboard-status.css` | +| ② SW UI — 일반 모드 | `@hm-design/sw` | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 모드 선택 → 일반 모드 문서) | `@hm-design/sw` | `@hm-design/sw/styles.css` | +| ② SW UI — 뷰어 모드 | `@hm-design/sw`(같은 패키지) | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 → `VIEWER.md`) | `@hm-design/sw` | `@hm-design/sw/styles.css`(같은 파일) | +| ③ OrgChart | `@hm-design/org-chart`(Core) + React면 `@hm-design/org-chart-react` | `node_modules/@hm-design/org-chart/ai/` (React 어댑터 안내는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`) | `@hm-design/org-chart`, `@hm-design/org-chart-react`, 선택 `@hm-design/org-chart-react/hm-dialog` | `@hm-design/org-chart/engine.css`, `@hm-design/org-chart/style.css`(URL로 전달 — Shadow DOM 안에 로드) | +| 기타 | `@hm-design/center-graphic` | AI 지침 없음. 패키지 `README.md`만 | `@hm-design/center-graphic` | 자동 import | + +모든 패키지는 서로 독립입니다(`@hm-design/org-chart-react`만 Core에 의존, `@hm-design/ui`는 `/hm-dialog`를 쓸 때만 선택 peer). React·React DOM `^19`는 peer입니다. + +## 1단계. 사용 목적 확인 + +화면 구현 요청을 받으면 코드 작성 전에 **사용 유형**을 정합니다. 유형은 다음 넷이고, SW는 다시 두 모드로 나뉩니다. + +1. Web +2. SW — **SW 일반 모드**(편집용: `SWHeader`, `SWPopup` …) / **SW 뷰어 모드**(보기 전용: `SWViewerHeader`, `SWViewerMenu`, `SWViewerPanel` …) +3. OrgChart +4. 혼합 사용(영역마다 위 유형 하나) + +다음 순서로 판단하고, **판단되면 다시 묻지 않습니다.** + +1. 소비 프로젝트의 `AGENTS.md`·`CLAUDE.md` 등에 `HMDesign 사용 유형:` 설정이 있으면 그대로 따릅니다(§9). 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: …)`입니다. 값이 `SW`뿐이면 유형은 정해진 것이고 모드만 아래 4번으로 정합니다. +2. 사용자 요청이 유형을 분명히 말하면 그대로 따릅니다. + - Web: 웹 화면, 관리자·업무 화면, 목록·검색·Form, 대시보드, GNB/LNB, Dialog, Table … + - SW: 데스크톱 SW, 도면·CAD, SW Header, 툴바, 레이어/색상/선스타일, 속성창·SW Popup, 뷰어 … + - OrgChart: 조직도, 조직 계층·직원 카드, 조직 JSON/CSV/Excel 시각화 … + - 둘 이상이 함께 나오면 ④ 혼합(예: "업무 화면 안에 조직도" = Web + OrgChart). +3. 위로 정할 수 없으면 코드 작성 전에 **그대로** 묻습니다. + +> 어떤 HMDesign 디자인 시스템을 사용하시겠습니까? +> +> 1. Web +> 2. SW (일반 모드 / 뷰어 모드) +> 3. OrgChart +> 4. 혼합 사용 + +4. **SW가 정해졌거나 포함됐는데 모드가 불명확하면** 코드 작성 전에 묻습니다. 설정 값(`SW 일반`/`SW 뷰어`)이나 요청이 모드를 분명히 말하면 묻지 않습니다. 판단 근거와 질문 문구는 `@hm-design/sw/ai/AI_USAGE.md` §0을 따릅니다. 유형 질문이 필요한 경우에는 같은 메시지에서 2번 선택 시의 모드도 함께 묻습니다(한 번에 끝냄). + +> SW 화면을 어떤 모드로 만들까요? +> +> 1. SW 일반 모드 — 편집용 Header(`SWHeader`)·속성창·SW Popup +> 2. SW 뷰어 모드 — 보기 전용 Header(`SWViewerHeader`)·뷰어 메뉴·뷰어 패널 + +- "HMDesign SW로 화면을 만들어 주세요"처럼 SW만 말하고 모드 근거가 없으면 유형은 SW로 확정하고 4번의 모드 질문만 합니다. +- `package.json`에 설치된 패키지가 하나뿐이어도 그것만으로 유형을 확정하지 않습니다(설치가 덜 된 상태일 수 있음). 요청 내용과 맞을 때만 근거로 씁니다. SW 모드도 같은 패키지이므로 설치 상태로는 판단하지 않습니다. +- 정해진 유형·모드는 결과 보고(7단계)에 적고, 작업 중에 다른 유형·모드의 컴포넌트·스타일을 임의로 섞지 않습니다(5단계). +- 혼합을 고르면 영역별 패키지(예: "페이지 = Web, 가운데 영역 = OrgChart")를 확인합니다. SW 영역이 있으면 그 영역의 모드(일반/뷰어)까지 정합니다. +- **OrgChart가 포함되고 생성 방식이 없으면** 같은 메시지에서 다음도 묻습니다(이미 말했으면 묻지 않음): "조직도만 기존 페이지에 삽입할까요(Chart Only), 아니면 레이아웃까지 구성한 새 페이지 전체를 생성할까요(Full Page)?" 상세는 `@hm-design/org-chart/ai/AI_USAGE.md` §1. +- 선택한 패키지가 설치되어 있지 않으면 설치가 필요하다고 보고합니다. 다른 HMDesign 패키지나 임의 라이브러리로 대신하지 않습니다. + +## 2단계. 패키지 분석 + +1. `node_modules/@hm-design/<패키지>/package.json`의 `version`·`exports`·`peerDependencies`를 확인합니다. `exports`에 없는 경로(`src/...`, `dist/components/...`)는 import하지 않습니다. +2. 그 패키지의 `ai/` 문서를 §0 순서로 읽습니다. 필요한 절만 읽고 전체 `dist`를 훑지 않습니다. +3. 카탈로그와 실제 `dist/index.d.ts`가 다르면 **`.d.ts`가 기준**입니다. 차이를 결과 보고에 적습니다. +4. 소비 프로젝트의 기존 CSS 진입점·폰트·빌드 도구(Vite 등)·이미 쓰는 디자인 시스템을 확인합니다. 기존 프로젝트의 디자인 시스템을 바꾸지 않습니다. + +## 3단계. 화면 분석 + +요청 화면을 항목으로 나누고 항목마다 판단을 기록합니다. + +| 요청 항목 | 판단 | 근거(카탈로그의 실제 이름) | +|---|---|---| +| 예: 상단 메뉴 | 재사용 | Web `GNB` + `GNBMobileMenu` | +| 예: 레이어 선택(SW 일반) | 재사용 | SW `SWHeaderLayerMenu` | +| 예: 상단 메뉴(SW 뷰어) | Props 설정 | SW `SWViewerHeader`의 `groups` | +| 예: 검색 상자(SW 일반) | 신규 | SW 카탈로그에 없음 → `SWHeaderInput` 재사용 + 일반 모드 토큰 | + +판단 값은 **재사용**(그대로) / **Props 설정**(기존 Variant·Props) / **조합**(기존 컴포넌트 배치) / **신규**(소비 프로젝트에 최소 구현) 중 하나입니다. + +## 4단계. UI 구현 + +우선순위(위가 먼저): + +1. 선택 패키지의 기존 컴포넌트·Pattern을 그대로 사용 +2. 기존 Variant / Props / Callback으로 해결 +3. 기존 컴포넌트 조합(배치용 CSS만 소비 프로젝트에 작성) +4. 조합으로 안 되는 부분만 **소비 프로젝트에** 새로 구현 — 아래 "없는 컴포넌트 처리 3단계" + +모든 단계는 **1단계에서 정한 유형·모드 안에서만** 찾습니다. SW 뷰어 모드는 뷰어 컴포넌트(`SWViewer*`)를, SW 일반 모드는 일반 컴포넌트(`SWHeader`·`SWPopup` …)를 먼저 씁니다. 다른 모드에 같은 역할의 컴포넌트가 있어도 가져오지 않습니다. + +### 없는 컴포넌트 처리 3단계 + +| 단계 | 조건 | 할 일 | 결과 보고 | +|---|---|---|---| +| ① 재사용 | 선택 유형·모드에 컴포넌트·Variant·Props·조합이 있음 | 그대로 사용(위 1~3) | 재사용 / Props 설정 / 조합 | +| ② 같은 모드 스타일로 신규 | 컴포넌트는 없지만 그 모드의 토큰·확인값·상태 표현이 있음 | 소비 프로젝트에 최소 구현. 그 유형·모드의 토큰과 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 크기·색·상태 표현만 읽고, 안쪽에는 그 모드의 공개 컴포넌트를 재사용 | 신규 · 읽은 토큰 목록 | +| ③ HMDesign과 조화되는 새 스타일 | ②로 참고할 토큰·확인값이 없음 | HMDesign 공통 규칙(아래)과 선택 유형·모드의 가장 가까운 토큰을 기준으로 새 스타일을 구성 | 신규 · **"AI 구성 값 — 디자인 확인 필요"** 목록(속성·값·이유) | + +- 토큰·확인값이 있으면 ②에서 반드시 그것을 씁니다. ③은 참고할 값이 정말 없을 때만이며, ③에서 만든 값은 확정 디자인이 아니라 확인 대상입니다. 화면 인상을 크게 바꾸는 값(주요 색·Header 높이 등)이 필요하면 구현 전에 사용자에게 먼저 확인합니다. +- 유형·모드별 구체 토큰과 예는 각 패키지 `ai/AI_USAGE.md`에 있습니다. + +규칙: + +- `node_modules` 안 패키지 파일을 수정하지 않습니다. 패키지 `dist` 구현이나 내부 CSS 블록을 복사해 같은 컴포넌트를 다시 만들지 않습니다. +- 이미 있는 컴포넌트와 같은 역할의 컴포넌트를 새로 만들지 않습니다(예: Web에 `Dialog`가 있는데 자체 Modal 작성 금지). +- 토큰·확인값이 있는 속성에 새 값을 만들지 않습니다. 색·크기·간격·radius·그림자는 각 패키지 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 토큰·확인값을 씁니다. 값이 없을 때만 위 ③으로 구성하고 "AI 구성 값"으로 보고합니다(추측한 값을 확정값처럼 쓰지 않음). +- 공통: Font Weight는 400 / 500 / 700만 씁니다(600 없음). Light/Dark 분기를 만들지 않습니다. 새 컴포넌트 CSS에 `html`·`body`·`*` 전역 규칙을 넣지 않습니다. 새 class는 소비 프로젝트 접두사(예: `app-`)를 씁니다. +- 요청에 없는 메뉴·통계·설명·다운로드·외부 API·AI 입력 UI를 추가하지 않습니다. 필요해 보이면 제안으로만 보고합니다. + +### 없는 UI를 같은 스타일로 만들 때 확인할 항목 + +신규 항목마다 아래를 선택 유형·모드의 문서에서 찾아 그대로 적용합니다(②). 찾을 수 없는 항목은 ③으로 구성하고 "AI 구성 값 — 디자인 확인 필요"로 보고합니다. + +| 항목 | Web(`@hm-design/ui`) | SW 일반 모드(`@hm-design/sw`) | SW 뷰어 모드(`@hm-design/sw`) | OrgChart | +|---|---|---|---|---| +| 토큰·CSS 변수 | `--hm-sem-*`, `--hm-color-*`, `--hm-radius-*`(`:root`) | `--hm-sw-header-*`, `--hm-sw-property-*`(`SWTheme` 범위) | `--hm-sw-viewer-*` + 두 Header가 공유하는 `--hm-sw-header-document-*`·`object-*`·`property-*`(SW 범위) | `--hm-orgchart-*` 공개 입력(Shadow DOM 상속) | +| 색·Typography | DESIGN_RULES §2·§3 | DESIGN_RULES §2·§3 | VIEWER.md `SWViewerHeader`·디자인 변경 절 | DESIGN_RULES §2·§3 | +| 크기·여백 | DESIGN_RULES §4 | DESIGN_RULES §1 | VIEWER.md 디자인 변경 절(52px Header 등 실측값) | 카드·간격 변경 금지(승인 디자인) | +| Border·Radius·배경·그림자 | DESIGN_RULES §2·§4 | DESIGN_RULES §2·§8 | VIEWER.md `SWViewerPanel` 절(프레임은 SWPopup과 같음) | 공개 입력만 | +| 아이콘 | `lucide-react`(패키지 의존성) | 패키지 내장 SVG만, 새 아이콘은 사용자 제공 | 프로그램 제공 16px `currentColor` 아이콘, 외곽선은 `SWViewerIcon` | Core 내장 | +| 스크롤바 | `ScrollArea`(Radix), DESIGN_RULES §6 | 전용 디자인 없음 — 브라우저 기본(AI_USAGE §2) | 전용 디자인 없음 — 패널 본문 스크롤은 `SWViewerPanel` | Core 내부 Zoom/Pan | +| Hover / Active / Focus / Disabled | DESIGN_RULES §5 | DESIGN_RULES §4 | VIEWER.md `SWViewerHeader` 절 상태 표현 | Core 내장 | +| Popup·Panel | `Dialog`·`AlertDialog`·`Sheet`·`Drawer`·`Popover` | `SWPopup` + `SWPopupSection`/`SWPopupRow` | `SWViewerPanel`(+ `modal`) + `SWViewerSection`/`SWViewerField` | Core 팝업 / HM Dialog / 어댑터 | +| 동작·키보드 | Radix 동작 유지 | 카탈로그 "공통 키보드" | VIEWER.md `SWViewerMenu`·`SWViewerPanel` 키보드 | Core 키보드(Pan, Alt+M 이동 등) | + +## 5단계. 패키지별 디자인 분리 (혼합 사용 포함) + +각 패키지의 스타일 범위는 다음과 같습니다(실제 CSS 기준). + +| 패키지 | 스타일이 적용되는 범위 | 주의 | +|---|---|---| +| Web | `theme.css`의 토큰은 `:root, [data-hm-theme]`. `tailwind.css`는 Tailwind base에서 `*`(border·outline), `body`(배경·글자), `html`(글꼴)을 **문서 전체에** 적용. 앱이 import하는 `tailwindcss`의 Preflight도 전역 | Web CSS를 넣은 문서에서는 다른 영역에도 전역 초기화가 적용됨 | +| SW(일반·뷰어 공통) | 토큰은 `.hm-sw-header`와 `.hm-sw-theme`에만 정의(뷰어 토큰 `--hm-sw-viewer-*`도 같은 범위). 전역 선택자 없음. `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`은 자기 root에 `hm-sw-theme`를 가짐. 토큰 기본값은 가장 바깥 SW 범위에서만 선언되고 안쪽 SW 범위는 상속(변경은 가장 바깥 범위의 `style`, SW `AI_USAGE.md` §3.1) | 일반 모드의 Header 밖 SW 부품은 반드시 `` 안 | +| OrgChart | Core가 자기 open Shadow DOM에만 CSS 로드. 호스트 CSS selector는 안쪽에 닿지 않고 **Custom Property 상속만** 통과 | 호스트 class로 카드 모양을 바꾸려 하지 않음 | + +혼합 규칙: + +1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 Noto Sans KR(`--hm-sw-header-font-family`, 2026-10-20 확정, Dotum 기본값 철회), Web 기본 글꼴도 Noto Sans KR(`--hm-font-family-base`)이지만 토큰은 각자 쓰고, OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 토큰·값을 다른 영역에 복사하지 않습니다. +2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) + - OrgChart Full Page의 바깥 레이아웃 = Web(또는 요청된 패키지) + - OrgChart React의 직원 팝업 = 선택 `@hm-design/org-chart-react/hm-dialog`(Web `Dialog`, Web Theme CSS 필요) +3. 패키지 class(`hm-sw-*`, `hm-orgchart-*`, Web `data-slot`)를 소비 코드에서 덮어쓰지 않습니다. 배치는 `className`·`style`과 소비 프로젝트 class로 합니다. +4. **Web + SW를 한 문서에 함께 쓰면** Web의 전역 base(위 표)가 SW 화면에도 적용됩니다. SW는 자기 범위에서 버튼 등을 초기화하지만 이 조합의 시각 결과는 패키지에서 검증된 적이 없습니다(NOT VERIFIED). 이 조합이면 브라우저에서 SW 부품의 글꼴·테두리·배경을 직접 확인하고 차이를 보고합니다. 가능하면 Web CSS가 없는 SW 전용 화면(별도 entry)으로 분리합니다. +5. Web Scoped Theme(`[data-hm-theme]`)는 body Portal(Select·Popover·DatePicker 팝업)에 전달되지 않습니다. Web 영역만 다른 테마로 바꾸려면 Global Theme를 쓰거나 차이를 보고합니다. + +### SW 일반 모드 ↔ 뷰어 모드 분리 + +SW 일반 모드와 뷰어 모드는 같은 패키지·같은 CSS 파일이지만 **서로 다른 디자인**입니다. 한 화면(한 Header 영역)에는 한 모드만 씁니다. + +1. 일반 모드 화면: `SWHeader`·개별 컨트롤·`SWPopup`·`SWHeaderPropertyPanel`·`SWToolButton`/`SWToolGroup`. `SWViewer*` 컴포넌트와 `--hm-sw-viewer-*` 토큰을 쓰지 않습니다. +2. 뷰어 모드 화면: `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`과 뷰어 패널 컨트롤(`SWViewerSection`·`SWViewerField` …). `SWHeader`에 뷰어 메뉴를 억지로 넣거나 `SWPopup`을 뷰어처럼 재스타일하지 않습니다. +3. 패키지가 실제로 공유하는 부분은 혼합이 아닙니다: `SWViewerPanel`은 `SWPopup` 프레임을 그대로 렌더링하고, 두 Header는 파일명·객체 수정·속성 면 토큰(`--hm-sw-header-document-*`·`object-*`·`property-*`)을 공유합니다. 소비 코드가 이 공유를 흉내 내 다른 모드 부품을 섞어도 된다는 뜻은 아닙니다. +4. 프로그램이 두 모드를 모두 가지면 모드 전환 시 Header 컴포넌트를 바꿔 끼웁니다(파일·패널 상태는 프로그램 상태로 유지). 세부는 `@hm-design/sw/ai/AI_USAGE.md` §0과 `VIEWER.md`. + +## 6단계. 디자인 검증 + +소비 프로젝트에서 실제로 실행한 것만 PASS로 적습니다. + +1. Typecheck(`tsc --noEmit` 등)와 Production Build +2. 브라우저 렌더링: 재사용한 컴포넌트가 HM 외형으로 보이는지(CSS 진입점 누락 확인), 신규 UI가 같은 토큰을 쓰는지 +3. 상태·동작: Hover / Focus(키보드) / Disabled, Popup 열기·닫기·Escape·Focus 복귀, 선택 패키지의 핵심 동작 +4. 폭: Web 390 / 768 / 1280 / 1440px, SW 일반 모드는 대상 창 폭(Header는 반응형 More 포함), SW 뷰어 모드는 대상 창 폭과 항목 `collapseBelow`·`iconOnlyBelow` 경계 전후(More 이동·아이콘만 표시), OrgChart는 캔버스 크기·초기 Fit +5. 혼합이면 영역 경계에서 스타일 침범이 없는지, SW면 선택하지 않은 모드의 컴포넌트·토큰이 섞이지 않았는지(§5) +6. 실행하지 못한 항목은 `NOT VERIFIED`로 남깁니다. + +## 7단계. 결과 보고 형식 + +```md +## HMDesign 적용 결과 +- 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart(Chart Only|Full Page) | 혼합(영역별: …) +- 유형·모드 판단 근거: 프로젝트 설정 | 요청 문구 "…" | 사용자 답변 +- 패키지·버전: @hm-design/ui 0.1.0, … +- 재사용한 컴포넌트: …(Props 설정 포함) +- 조합한 부분: … +- AI가 새로 구현한 부분: 파일 경로 · 이유(카탈로그에 없음) · 안쪽에서 재사용한 컴포넌트 +- 적용한 디자인 토큰: --hm-… (신규 UI가 읽은 것) +- AI 구성 값 — 디자인 확인 필요: 없음 | 속성 · 값 · 이유(4단계 ③) +- 카탈로그와 .d.ts 차이: 없음 | … +- 검증: Typecheck PASS · Build PASS · 브라우저(폭/상태) … · NOT VERIFIED: … +- 제안(구현하지 않음): … +``` + +## 8. 상황별 예시 + +### 예시 A — Web 화면 (목록 + 검색) + +- 읽기: `node_modules/@hm-design/ui/ai/` → COMPOSITION_PATTERNS "목록 화면" +- 재사용: `LNB`(또는 `GNB`) 중 **하나**, `PageHeader`, `Card`, `FilterBar` + `FilterBarSearch` + `FilterBarActions`, `DataTable` + `useDataTable`, `Button` +- 신규(필요 시만): 카탈로그에 없는 콘텐츠 블록 → 소비 프로젝트 컴포넌트, `--hm-sem-*` 토큰과 `Card` 재사용 + +```css +/* src/index.css */ +@import "tailwindcss"; +@import "@hm-design/ui/tailwind.css"; +@import "@hm-design/ui/theme.css"; +``` + +```tsx +import { Button, Card, CardContent, FilterBar, FilterBarActions, FilterBarSearch, PageHeader, PageHeaderContent, PageHeaderTitle } from "@hm-design/ui" +``` + +### 예시 B0 — "HMDesign SW로 화면을 만들어 주세요" (모드 미지정) + +- 유형은 SW로 확정, 모드 근거가 없으므로 코드 작성 전에 1단계 4번의 모드 질문만 합니다. 답에 따라 B1 또는 B2로 진행합니다. +- 소비 프로젝트 설정이 `HMDesign 사용 유형: SW 일반` 또는 `SW 뷰어`이면 묻지 않고 바로 B1/B2입니다. + +### 예시 B1 — SW 일반 모드 (편집 Header + 도구 막대 + 설정 Popup) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(일반 모드) → COMPOSITION_PATTERNS "6. 파일 열기 + 도구 막대", 예제 `ai/examples/ExampleF-ViewerToolbar.tsx`(파일 이름의 Viewer는 과거 명칭이며 일반 모드 `SWHeader` 예제) +- 재사용: `SWHeader`(`documentOpenPlacement="header"`, `controls`, `tools`), `SWToolGroup` + `SWToolButton`(Model/Layout 탭, Fit 등), `SWPopup` + `SWPopupSection` + `SWPopupRow` + `SWHeaderInput`(설정 Popup), 로고(홈) 버튼 메뉴는 `SWHeader`의 `homeMenu` + `SWRecentFiles`(**일반 모드 전용**, 예제 `ExampleG-HomeMenu.tsx`) +- 신규: SW에 없는 기능(예: 검색) → 소비 프로젝트 컴포넌트, `` 안, `--hm-sw-header-*` 토큰, 안쪽 입력은 `SWHeaderInput`(예제 `ExampleD-SearchExtension.tsx`) + +```tsx +import { SWHeader, SWPopup, SWTheme, SWToolButton, SWToolGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 B2 — SW 뷰어 모드 (뷰어 Header + 메뉴 + 패널) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(뷰어 모드) → `VIEWER.md`, 예제 `ai/examples/ExampleH-ViewerMode.tsx` +- 재사용: `SWViewerHeader`(`groups` 데이터: `button`·`toggle`·`menu`·`tabs`·`switch`·`custom` 항목, `onCommand`, `trailing`에 `SWViewerStatus`·`SWViewerHeaderButton`), Dropdown은 `type: "menu"` 항목의 `entries`(단독·우클릭은 `SWViewerMenu`), 팝업은 `SWViewerPanel` + `SWViewerSection`·`SWViewerField`·`SWViewerSwitch`·`SWViewerSlider`·`SWViewerInput`·`SWViewerButton` +- 신규: 뷰어에 없는 패널 콘텐츠 → 소비 프로젝트 컴포넌트를 `SWViewerPanel`의 `children`에, 안쪽은 `SWViewerField` + `SWViewerInput` 등, 외형은 `--hm-sw-viewer-*` 토큰 +- 하지 않음: `SWHeader`·`SWPopup`을 뷰어 화면에 섞기, 로고(홈) 메뉴(`SWHomeMenu`·`SWRecentFiles`·`homeMenu`)를 뷰어 화면에 넣거나 비슷하게 만들기(홈 메뉴는 일반 모드 전용), 로고가 없다고 임의 문자·아이콘 넣기, 연결할 명령이 없는 메뉴를 가짜 동작으로 만들기(제외 또는 `disabled` + 미연결 보고) + +```tsx +import { SWViewerHeader, SWViewerPanel, SWViewerSection, SWViewerField, SWViewerSwitch, type SWViewerHeaderGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 C — 조직도만 (Chart Only) + +- 읽기: `node_modules/@hm-design/org-chart/ai/` → COMPOSITION_PATTERNS "1. Chart Only" +- 재사용: React `OrgChart`(`@hm-design/org-chart-react`) 또는 Vanilla `createOrgChart`, 데이터 `JsonOrgChartDataSource` + `validateOrgChartDataset` +- 필수 옵션: `layoutMode="auto"` + `presentationMode="chart-only"`(초기 Fit·직접 휠 Zoom이 기본) +- **추가하지 않음:** 페이지 제목·통계·설명·Zoom 버튼 바·외부 회색 배경·Navigation. Fixed Chart Only는 미지원(`TypeError`) + +```tsx +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" // Vite. 다른 도구는 실제 배포 URL +import coreUrl from "@hm-design/org-chart/style.css?url" +``` + +### 예시 D — Web + OrgChart (Full Page) + +- 영역: 페이지 레이아웃·제목·필터 = Web, 조직도 영역 = OrgChart +- 읽기: Web `ai/` + OrgChart `ai/COMPOSITION_PATTERNS.md` "2. Full Page" +- 재사용: Web `LNB`/`GNB` 중 하나, `PageHeader`, `Card`, `Select`·`Label`(회사 선택 등 요청된 컨트롤만) + OrgChart `OrgChart`(`selectedCompanyIds` 등 Props로 연결) +- 직원 팝업을 Web Dialog로: `import { OrgChart } from "@hm-design/org-chart-react/hm-dialog"` + `employeePopup="hm-dialog"`(Web CSS 진입점 필요) +- 분리: 조직도 카드·색은 OrgChart 기본 유지. Web 토큰을 조직도에 넣지 않음(바꿔야 하면 `--hm-orgchart-*` 공개 입력만) + +## 9. 소비 프로젝트 설정 — AI가 이 지침을 찾게 하기 + +AI 코딩 도구는 보통 **프로젝트 루트의** `AGENTS.md`(Codex 등)·`CLAUDE.md`(Claude Code)·도구별 규칙 파일만 자동으로 읽고 `node_modules`는 읽지 않습니다. 패키지 설치만으로 지침이 자동 적용되지는 않으므로 소비 프로젝트에서 한 번 연결합니다. + +1. 패키지에 들어 있는 `ai/AGENTS_SNIPPET.md`를 루트 `AGENTS.md`(없으면 새로 만듦)에 붙여 넣고 `HMDesign 사용 유형:` 줄을 프로젝트에 맞게 고칩니다. 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: 예 "페이지 = Web, 중앙 = OrgChart")` 중 하나입니다. SW 프로젝트면 모드까지 적어야 AI가 모드를 다시 묻지 않습니다(`SW`만 적으면 모드를 묻습니다). 정하지 않았으면 그 줄을 지워 AI가 1단계에서 묻게 합니다. + ```bash + cat node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md >> AGENTS.md + ``` + (PowerShell: `Get-Content node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md | Add-Content AGENTS.md`. 설치한 아무 HMDesign 패키지의 사본이나 같습니다.) +2. Claude Code는 `CLAUDE.md`에 `@AGENTS.md` 한 줄을 두면 같은 내용을 읽습니다. 다른 도구(Cursor 규칙 등)는 그 도구의 규칙 파일에 같은 내용을 넣습니다. +3. 패키지를 업데이트한 뒤 스니펫이 바뀌었는지 확인합니다(스니펫은 경로 안내만 하므로 보통 그대로 둡니다). + +자동으로 되지 않는 것: 패키지 설치 시 루트 파일 생성(`postinstall` 없음), 도구가 `node_modules`를 스스로 탐색하는 것. 위 연결이 없으면 사용자가 "node_modules/@hm-design/…/ai/AI_GUIDE.md를 먼저 읽어"라고 요청해야 합니다. + +**Git Submodule + npm Workspace로 연결한 경우**(Registry 없이 HMDesign 저장소를 예: `HMDesign/` 폴더에 Submodule로 고정하고 `workspaces`에 `HMDesign/packages/<패키지>`를 등록한 구성): `node_modules/@hm-design/<패키지>`는 `HMDesign/packages/<패키지>`로 연결되므로 지침 위치는 위 표와 같습니다(`HMDesign/packages/<패키지>/ai/`와 같은 파일). 공개 진입점은 `dist/`를 가리키므로 HMDesign 폴더 안에서 `npm ci`와 `npm run build:packages`를 먼저 실행해야 하며, `dist/`가 없으면 Import 오류를 컴포넌트 결함으로 보고하지 말고 빌드 필요로 보고합니다. HMDesign 저장소 루트의 `AGENTS.md`·`CLAUDE.md`는 HMDesign 개발용이므로 소비 프로젝트 지침으로 쓰지 않습니다. + +## 10. 문서 갱신 (HMDesign 저장소 유지보수자) + +컴포넌트를 추가·수정하면 같은 변경에서 해당 패키지 `ai/COMPONENT_CATALOG.md`와 필요한 `DESIGN_RULES.md`·`COMPOSITION_PATTERNS.md`를 갱신하고 `npm run check:ai-docs`를 통과시킵니다. 절차는 저장소 `docs/ai/MAINTAINING.md`(패키지 미포함)에 있습니다. diff --git a/packages/org-chart-react/ai/AI_USAGE.md b/packages/org-chart-react/ai/AI_USAGE.md new file mode 100644 index 0000000..fa07b34 --- /dev/null +++ b/packages/org-chart-react/ai/AI_USAGE.md @@ -0,0 +1,20 @@ +# @hm-design/org-chart-react — AI 코딩 도구 사용 안내 + +먼저 [AI_GUIDE.md](./AI_GUIDE.md)(공통 1~7단계)를 읽습니다. 이 패키지는 OrgChart Core의 **React 수명주기 어댑터**일 뿐이며 자체 디자인·레이아웃이 없습니다. 사용 유형은 공통 체계(1 Web / 2 SW 일반·뷰어 / 3 OrgChart / 4 혼합)를 따르며 이 패키지는 3 OrgChart 또는 혼합의 조직도 영역에서 씁니다. OrgChart 작업 규칙·API·디자인·없는 UI 처리 3단계는 Core 패키지의 `ai/` 폴더가 기준이며 여기에 반복하지 않습니다. + +| 읽을 문서 | 설치 후 위치 | +|---|---| +| 사용 유형·혼합 규칙, 생성 방식(Chart Only / Full Page), 작업 순서, 데이터 규칙 | `node_modules/@hm-design/org-chart/ai/AI_USAGE.md` | +| React `OrgChart` Props 전체 + Core API | `node_modules/@hm-design/org-chart/ai/COMPONENT_CATALOG.md` §1 | +| 디자인·CSS 입력 | `node_modules/@hm-design/org-chart/ai/DESIGN_RULES.md` | +| React·Vanilla 조합 예시 | `node_modules/@hm-design/org-chart/ai/COMPOSITION_PATTERNS.md` | + +Core는 이 패키지의 runtime dependency이므로 함께 설치됩니다. 패키지 관리자가 중첩 설치한 경우 `node_modules/@hm-design/org-chart-react/node_modules/@hm-design/org-chart/ai/`에 있습니다. + +## 이 패키지에서 확인할 것 + +- Entry: `@hm-design/org-chart-react`(runtime export `OrgChart` 하나, HM UI 불필요) / `@hm-design/org-chart-react/hm-dialog`(`OrgChart` + `HMEmployeeDialog`, `@hm-design/ui` 0.1.0 선택 peer와 Web CSS 필요). +- 타입: `OrgChartProps`, `OrgChartEmployeeSelection`, `OrgChartEmployeePopupProps`와 Core 공개 타입(type-only 재export). `JsonOrgChartDataSource` 같은 runtime helper는 `@hm-design/org-chart`에서 import합니다. +- Peer: `react` `^19.0.0`. `react-dom`은 앱이 제공합니다. +- `"use client"` 경계가 유지됩니다. SSR/hydration은 검증 범위 밖입니다. +- 공개 `ref`·imperative handle·`children`·`data`·`title` Props는 없습니다. diff --git a/packages/org-chart-react/package.json b/packages/org-chart-react/package.json index 8630125..1420a02 100644 --- a/packages/org-chart-react/package.json +++ b/packages/org-chart-react/package.json @@ -17,7 +17,7 @@ "default": "./dist/hm-dialog.js" } }, - "files": ["dist", "README.md"], + "files": ["dist", "ai", "README.md"], "sideEffects": false, "scripts": { "typecheck": "tsc -p tsconfig.json", diff --git a/packages/org-chart/README.md b/packages/org-chart/README.md index 2927903..6ab930e 100644 --- a/packages/org-chart/README.md +++ b/packages/org-chart/README.md @@ -271,3 +271,7 @@ Enter로도 이동하며 Esc로 취소한다. Fixed에는 편집을 적용하지 데이터는 브라우저 인스턴스에만 유지한다. 회사 표시 선택은 이동 내용을 보존하고, 새 source의 reload/update는 새 데이터로 대체한다. JSON 파일·서버 저장은 수행하지 않는다. + +## AI coding tools + +AI coding tools should read [`ai/AI_GUIDE.md`](./ai/AI_GUIDE.md) first (shared HMDesign entry point), then the OrgChart rules in [`ai/AI_USAGE.md`](./ai/AI_USAGE.md) (Chart Only / Full Page pre-selection, data rules), [`ai/COMPONENT_CATALOG.md`](./ai/COMPONENT_CATALOG.md) (Core and React API), [`ai/DESIGN_RULES.md`](./ai/DESIGN_RULES.md) and [`ai/COMPOSITION_PATTERNS.md`](./ai/COMPOSITION_PATTERNS.md). `ai/` is included in the packed package. To make a consumer project pick them up automatically, copy [`ai/AGENTS_SNIPPET.md`](./ai/AGENTS_SNIPPET.md) into its root `AGENTS.md`. diff --git a/packages/org-chart/ai/AGENTS_SNIPPET.md b/packages/org-chart/ai/AGENTS_SNIPPET.md new file mode 100644 index 0000000..cd3372d --- /dev/null +++ b/packages/org-chart/ai/AGENTS_SNIPPET.md @@ -0,0 +1,16 @@ +## HMDesign 디자인 시스템 + + + +HMDesign 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart | 혼합(영역별로 적기, SW 영역은 모드까지) + +화면·컴포넌트를 구현하거나 수정하기 전에 다음을 지킨다. + +1. 설치된 HMDesign 패키지의 공통 가이드를 먼저 읽는다: `node_modules/@hm-design/<설치된 패키지>/ai/AI_GUIDE.md` (`ui`, `sw`, `org-chart`, `org-chart-react` 중 아무 사본이나 내용이 같다). +2. 위 "사용 유형"이 없고 요청으로도 정할 수 없으면 코드 작성 전에 "어떤 HMDesign 디자인 시스템을 사용하시겠습니까? 1. Web 2. SW (일반 모드 / 뷰어 모드) 3. OrgChart 4. 혼합 사용"을 묻는다. SW인데 모드(일반/뷰어)가 불명확하면 "SW 화면을 어떤 모드로 만들까요? 1. SW 일반 모드 2. SW 뷰어 모드"를 묻는다(근거는 `@hm-design/sw/ai/AI_USAGE.md` §0). 정해져 있으면 다시 묻지 않는다. +3. 선택한 패키지의 `ai/AI_USAGE.md` → `COMPONENT_CATALOG.md` → `DESIGN_RULES.md` → `COMPOSITION_PATTERNS.md` 순으로 필요한 절을 읽는다. + - Web: `node_modules/@hm-design/ui/ai/` + - SW: `node_modules/@hm-design/sw/ai/` (뷰어 모드는 `AI_USAGE.md` §0 다음 `VIEWER.md`) + - OrgChart: `node_modules/@hm-design/org-chart/ai/` (React는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`도) +4. 선택한 유형·모드 안에서 기존 컴포넌트 → Props → 조합 → (없는 부분만) 그 모드의 토큰·스타일로 신규 → (참고 값도 없으면) HMDesign 공통 규칙과 조화되게 구성하고 "AI 구성 값"으로 보고하는 순서를 지킨다. 패키지 파일 수정·내부 경로 import·구현 복사는 하지 않는다. +5. Web / SW 일반 / SW 뷰어 / OrgChart 스타일을 영역별로 분리하고(한 SW 화면에 일반·뷰어 컴포넌트를 섞지 않음), 완료 후 AI_GUIDE의 결과 보고 형식으로 유형·모드, 재사용·신규·토큰·AI 구성 값·검증·NOT VERIFIED를 보고한다. diff --git a/packages/org-chart/ai/AI_GUIDE.md b/packages/org-chart/ai/AI_GUIDE.md new file mode 100644 index 0000000..a9a6b58 --- /dev/null +++ b/packages/org-chart/ai/AI_GUIDE.md @@ -0,0 +1,275 @@ +# HMDesign AI 작업 가이드 — 공통 진입점 + +> 이 파일은 HMDesign 패키지(`@hm-design/ui`, `@hm-design/sw`, `@hm-design/org-chart`, `@hm-design/org-chart-react`)의 `ai/AI_GUIDE.md`에 **같은 내용으로** 들어 있습니다. 원본은 HMDesign 저장소 `docs/ai/AI_GUIDE.md`이며 패키지 사본은 `npm run sync:ai-docs`로 갱신합니다. 사본을 직접 고치지 않습니다. + +사용자가 "HMDesign 패키지를 기준으로 화면을 구현해 주세요", "HMDesign SW로 화면을 만들어 주세요"처럼 요청하면 AI 코딩 도구는 이 파일의 1~7단계를 순서대로 따릅니다. 이 문서와 각 패키지의 `ai/` 문서는 실제 공개 API·CSS에서 확인한 내용만 적습니다. 여기에 없는 컴포넌트·Props·토큰은 없는 것으로 취급합니다. + +## 0. 읽는 순서 + +1. **이 파일**(어느 패키지의 사본이든 같음) +2. 선택한 패키지의 `ai/AI_USAGE.md` → `ai/COMPONENT_CATALOG.md` → `ai/DESIGN_RULES.md` → `ai/COMPOSITION_PATTERNS.md` (SW 뷰어 모드는 `AI_USAGE.md` §0 다음에 `ai/VIEWER.md`를 먼저 읽고 카탈로그의 뷰어 절을 봅니다) +3. API가 의심스러우면 그 패키지의 `dist/*.d.ts`(공개 진입점에서 export되는 것만) + +| 유형 | 패키지 | 지침 위치(설치 후) | JS 진입점 | CSS | +|---|---|---|---|---| +| ① Web UI | `@hm-design/ui` | `node_modules/@hm-design/ui/ai/` | `@hm-design/ui`, `@hm-design/ui/theme` | `@hm-design/ui/tailwind.css` + `@hm-design/ui/theme.css`(Tailwind CSS 4 필요), 선택 `@hm-design/ui/dashboard-status.css` | +| ② SW UI — 일반 모드 | `@hm-design/sw` | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 모드 선택 → 일반 모드 문서) | `@hm-design/sw` | `@hm-design/sw/styles.css` | +| ② SW UI — 뷰어 모드 | `@hm-design/sw`(같은 패키지) | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 → `VIEWER.md`) | `@hm-design/sw` | `@hm-design/sw/styles.css`(같은 파일) | +| ③ OrgChart | `@hm-design/org-chart`(Core) + React면 `@hm-design/org-chart-react` | `node_modules/@hm-design/org-chart/ai/` (React 어댑터 안내는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`) | `@hm-design/org-chart`, `@hm-design/org-chart-react`, 선택 `@hm-design/org-chart-react/hm-dialog` | `@hm-design/org-chart/engine.css`, `@hm-design/org-chart/style.css`(URL로 전달 — Shadow DOM 안에 로드) | +| 기타 | `@hm-design/center-graphic` | AI 지침 없음. 패키지 `README.md`만 | `@hm-design/center-graphic` | 자동 import | + +모든 패키지는 서로 독립입니다(`@hm-design/org-chart-react`만 Core에 의존, `@hm-design/ui`는 `/hm-dialog`를 쓸 때만 선택 peer). React·React DOM `^19`는 peer입니다. + +## 1단계. 사용 목적 확인 + +화면 구현 요청을 받으면 코드 작성 전에 **사용 유형**을 정합니다. 유형은 다음 넷이고, SW는 다시 두 모드로 나뉩니다. + +1. Web +2. SW — **SW 일반 모드**(편집용: `SWHeader`, `SWPopup` …) / **SW 뷰어 모드**(보기 전용: `SWViewerHeader`, `SWViewerMenu`, `SWViewerPanel` …) +3. OrgChart +4. 혼합 사용(영역마다 위 유형 하나) + +다음 순서로 판단하고, **판단되면 다시 묻지 않습니다.** + +1. 소비 프로젝트의 `AGENTS.md`·`CLAUDE.md` 등에 `HMDesign 사용 유형:` 설정이 있으면 그대로 따릅니다(§9). 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: …)`입니다. 값이 `SW`뿐이면 유형은 정해진 것이고 모드만 아래 4번으로 정합니다. +2. 사용자 요청이 유형을 분명히 말하면 그대로 따릅니다. + - Web: 웹 화면, 관리자·업무 화면, 목록·검색·Form, 대시보드, GNB/LNB, Dialog, Table … + - SW: 데스크톱 SW, 도면·CAD, SW Header, 툴바, 레이어/색상/선스타일, 속성창·SW Popup, 뷰어 … + - OrgChart: 조직도, 조직 계층·직원 카드, 조직 JSON/CSV/Excel 시각화 … + - 둘 이상이 함께 나오면 ④ 혼합(예: "업무 화면 안에 조직도" = Web + OrgChart). +3. 위로 정할 수 없으면 코드 작성 전에 **그대로** 묻습니다. + +> 어떤 HMDesign 디자인 시스템을 사용하시겠습니까? +> +> 1. Web +> 2. SW (일반 모드 / 뷰어 모드) +> 3. OrgChart +> 4. 혼합 사용 + +4. **SW가 정해졌거나 포함됐는데 모드가 불명확하면** 코드 작성 전에 묻습니다. 설정 값(`SW 일반`/`SW 뷰어`)이나 요청이 모드를 분명히 말하면 묻지 않습니다. 판단 근거와 질문 문구는 `@hm-design/sw/ai/AI_USAGE.md` §0을 따릅니다. 유형 질문이 필요한 경우에는 같은 메시지에서 2번 선택 시의 모드도 함께 묻습니다(한 번에 끝냄). + +> SW 화면을 어떤 모드로 만들까요? +> +> 1. SW 일반 모드 — 편집용 Header(`SWHeader`)·속성창·SW Popup +> 2. SW 뷰어 모드 — 보기 전용 Header(`SWViewerHeader`)·뷰어 메뉴·뷰어 패널 + +- "HMDesign SW로 화면을 만들어 주세요"처럼 SW만 말하고 모드 근거가 없으면 유형은 SW로 확정하고 4번의 모드 질문만 합니다. +- `package.json`에 설치된 패키지가 하나뿐이어도 그것만으로 유형을 확정하지 않습니다(설치가 덜 된 상태일 수 있음). 요청 내용과 맞을 때만 근거로 씁니다. SW 모드도 같은 패키지이므로 설치 상태로는 판단하지 않습니다. +- 정해진 유형·모드는 결과 보고(7단계)에 적고, 작업 중에 다른 유형·모드의 컴포넌트·스타일을 임의로 섞지 않습니다(5단계). +- 혼합을 고르면 영역별 패키지(예: "페이지 = Web, 가운데 영역 = OrgChart")를 확인합니다. SW 영역이 있으면 그 영역의 모드(일반/뷰어)까지 정합니다. +- **OrgChart가 포함되고 생성 방식이 없으면** 같은 메시지에서 다음도 묻습니다(이미 말했으면 묻지 않음): "조직도만 기존 페이지에 삽입할까요(Chart Only), 아니면 레이아웃까지 구성한 새 페이지 전체를 생성할까요(Full Page)?" 상세는 `@hm-design/org-chart/ai/AI_USAGE.md` §1. +- 선택한 패키지가 설치되어 있지 않으면 설치가 필요하다고 보고합니다. 다른 HMDesign 패키지나 임의 라이브러리로 대신하지 않습니다. + +## 2단계. 패키지 분석 + +1. `node_modules/@hm-design/<패키지>/package.json`의 `version`·`exports`·`peerDependencies`를 확인합니다. `exports`에 없는 경로(`src/...`, `dist/components/...`)는 import하지 않습니다. +2. 그 패키지의 `ai/` 문서를 §0 순서로 읽습니다. 필요한 절만 읽고 전체 `dist`를 훑지 않습니다. +3. 카탈로그와 실제 `dist/index.d.ts`가 다르면 **`.d.ts`가 기준**입니다. 차이를 결과 보고에 적습니다. +4. 소비 프로젝트의 기존 CSS 진입점·폰트·빌드 도구(Vite 등)·이미 쓰는 디자인 시스템을 확인합니다. 기존 프로젝트의 디자인 시스템을 바꾸지 않습니다. + +## 3단계. 화면 분석 + +요청 화면을 항목으로 나누고 항목마다 판단을 기록합니다. + +| 요청 항목 | 판단 | 근거(카탈로그의 실제 이름) | +|---|---|---| +| 예: 상단 메뉴 | 재사용 | Web `GNB` + `GNBMobileMenu` | +| 예: 레이어 선택(SW 일반) | 재사용 | SW `SWHeaderLayerMenu` | +| 예: 상단 메뉴(SW 뷰어) | Props 설정 | SW `SWViewerHeader`의 `groups` | +| 예: 검색 상자(SW 일반) | 신규 | SW 카탈로그에 없음 → `SWHeaderInput` 재사용 + 일반 모드 토큰 | + +판단 값은 **재사용**(그대로) / **Props 설정**(기존 Variant·Props) / **조합**(기존 컴포넌트 배치) / **신규**(소비 프로젝트에 최소 구현) 중 하나입니다. + +## 4단계. UI 구현 + +우선순위(위가 먼저): + +1. 선택 패키지의 기존 컴포넌트·Pattern을 그대로 사용 +2. 기존 Variant / Props / Callback으로 해결 +3. 기존 컴포넌트 조합(배치용 CSS만 소비 프로젝트에 작성) +4. 조합으로 안 되는 부분만 **소비 프로젝트에** 새로 구현 — 아래 "없는 컴포넌트 처리 3단계" + +모든 단계는 **1단계에서 정한 유형·모드 안에서만** 찾습니다. SW 뷰어 모드는 뷰어 컴포넌트(`SWViewer*`)를, SW 일반 모드는 일반 컴포넌트(`SWHeader`·`SWPopup` …)를 먼저 씁니다. 다른 모드에 같은 역할의 컴포넌트가 있어도 가져오지 않습니다. + +### 없는 컴포넌트 처리 3단계 + +| 단계 | 조건 | 할 일 | 결과 보고 | +|---|---|---|---| +| ① 재사용 | 선택 유형·모드에 컴포넌트·Variant·Props·조합이 있음 | 그대로 사용(위 1~3) | 재사용 / Props 설정 / 조합 | +| ② 같은 모드 스타일로 신규 | 컴포넌트는 없지만 그 모드의 토큰·확인값·상태 표현이 있음 | 소비 프로젝트에 최소 구현. 그 유형·모드의 토큰과 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 크기·색·상태 표현만 읽고, 안쪽에는 그 모드의 공개 컴포넌트를 재사용 | 신규 · 읽은 토큰 목록 | +| ③ HMDesign과 조화되는 새 스타일 | ②로 참고할 토큰·확인값이 없음 | HMDesign 공통 규칙(아래)과 선택 유형·모드의 가장 가까운 토큰을 기준으로 새 스타일을 구성 | 신규 · **"AI 구성 값 — 디자인 확인 필요"** 목록(속성·값·이유) | + +- 토큰·확인값이 있으면 ②에서 반드시 그것을 씁니다. ③은 참고할 값이 정말 없을 때만이며, ③에서 만든 값은 확정 디자인이 아니라 확인 대상입니다. 화면 인상을 크게 바꾸는 값(주요 색·Header 높이 등)이 필요하면 구현 전에 사용자에게 먼저 확인합니다. +- 유형·모드별 구체 토큰과 예는 각 패키지 `ai/AI_USAGE.md`에 있습니다. + +규칙: + +- `node_modules` 안 패키지 파일을 수정하지 않습니다. 패키지 `dist` 구현이나 내부 CSS 블록을 복사해 같은 컴포넌트를 다시 만들지 않습니다. +- 이미 있는 컴포넌트와 같은 역할의 컴포넌트를 새로 만들지 않습니다(예: Web에 `Dialog`가 있는데 자체 Modal 작성 금지). +- 토큰·확인값이 있는 속성에 새 값을 만들지 않습니다. 색·크기·간격·radius·그림자는 각 패키지 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 토큰·확인값을 씁니다. 값이 없을 때만 위 ③으로 구성하고 "AI 구성 값"으로 보고합니다(추측한 값을 확정값처럼 쓰지 않음). +- 공통: Font Weight는 400 / 500 / 700만 씁니다(600 없음). Light/Dark 분기를 만들지 않습니다. 새 컴포넌트 CSS에 `html`·`body`·`*` 전역 규칙을 넣지 않습니다. 새 class는 소비 프로젝트 접두사(예: `app-`)를 씁니다. +- 요청에 없는 메뉴·통계·설명·다운로드·외부 API·AI 입력 UI를 추가하지 않습니다. 필요해 보이면 제안으로만 보고합니다. + +### 없는 UI를 같은 스타일로 만들 때 확인할 항목 + +신규 항목마다 아래를 선택 유형·모드의 문서에서 찾아 그대로 적용합니다(②). 찾을 수 없는 항목은 ③으로 구성하고 "AI 구성 값 — 디자인 확인 필요"로 보고합니다. + +| 항목 | Web(`@hm-design/ui`) | SW 일반 모드(`@hm-design/sw`) | SW 뷰어 모드(`@hm-design/sw`) | OrgChart | +|---|---|---|---|---| +| 토큰·CSS 변수 | `--hm-sem-*`, `--hm-color-*`, `--hm-radius-*`(`:root`) | `--hm-sw-header-*`, `--hm-sw-property-*`(`SWTheme` 범위) | `--hm-sw-viewer-*` + 두 Header가 공유하는 `--hm-sw-header-document-*`·`object-*`·`property-*`(SW 범위) | `--hm-orgchart-*` 공개 입력(Shadow DOM 상속) | +| 색·Typography | DESIGN_RULES §2·§3 | DESIGN_RULES §2·§3 | VIEWER.md `SWViewerHeader`·디자인 변경 절 | DESIGN_RULES §2·§3 | +| 크기·여백 | DESIGN_RULES §4 | DESIGN_RULES §1 | VIEWER.md 디자인 변경 절(52px Header 등 실측값) | 카드·간격 변경 금지(승인 디자인) | +| Border·Radius·배경·그림자 | DESIGN_RULES §2·§4 | DESIGN_RULES §2·§8 | VIEWER.md `SWViewerPanel` 절(프레임은 SWPopup과 같음) | 공개 입력만 | +| 아이콘 | `lucide-react`(패키지 의존성) | 패키지 내장 SVG만, 새 아이콘은 사용자 제공 | 프로그램 제공 16px `currentColor` 아이콘, 외곽선은 `SWViewerIcon` | Core 내장 | +| 스크롤바 | `ScrollArea`(Radix), DESIGN_RULES §6 | 전용 디자인 없음 — 브라우저 기본(AI_USAGE §2) | 전용 디자인 없음 — 패널 본문 스크롤은 `SWViewerPanel` | Core 내부 Zoom/Pan | +| Hover / Active / Focus / Disabled | DESIGN_RULES §5 | DESIGN_RULES §4 | VIEWER.md `SWViewerHeader` 절 상태 표현 | Core 내장 | +| Popup·Panel | `Dialog`·`AlertDialog`·`Sheet`·`Drawer`·`Popover` | `SWPopup` + `SWPopupSection`/`SWPopupRow` | `SWViewerPanel`(+ `modal`) + `SWViewerSection`/`SWViewerField` | Core 팝업 / HM Dialog / 어댑터 | +| 동작·키보드 | Radix 동작 유지 | 카탈로그 "공통 키보드" | VIEWER.md `SWViewerMenu`·`SWViewerPanel` 키보드 | Core 키보드(Pan, Alt+M 이동 등) | + +## 5단계. 패키지별 디자인 분리 (혼합 사용 포함) + +각 패키지의 스타일 범위는 다음과 같습니다(실제 CSS 기준). + +| 패키지 | 스타일이 적용되는 범위 | 주의 | +|---|---|---| +| Web | `theme.css`의 토큰은 `:root, [data-hm-theme]`. `tailwind.css`는 Tailwind base에서 `*`(border·outline), `body`(배경·글자), `html`(글꼴)을 **문서 전체에** 적용. 앱이 import하는 `tailwindcss`의 Preflight도 전역 | Web CSS를 넣은 문서에서는 다른 영역에도 전역 초기화가 적용됨 | +| SW(일반·뷰어 공통) | 토큰은 `.hm-sw-header`와 `.hm-sw-theme`에만 정의(뷰어 토큰 `--hm-sw-viewer-*`도 같은 범위). 전역 선택자 없음. `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`은 자기 root에 `hm-sw-theme`를 가짐. 토큰 기본값은 가장 바깥 SW 범위에서만 선언되고 안쪽 SW 범위는 상속(변경은 가장 바깥 범위의 `style`, SW `AI_USAGE.md` §3.1) | 일반 모드의 Header 밖 SW 부품은 반드시 `` 안 | +| OrgChart | Core가 자기 open Shadow DOM에만 CSS 로드. 호스트 CSS selector는 안쪽에 닿지 않고 **Custom Property 상속만** 통과 | 호스트 class로 카드 모양을 바꾸려 하지 않음 | + +혼합 규칙: + +1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 Noto Sans KR(`--hm-sw-header-font-family`, 2026-10-20 확정, Dotum 기본값 철회), Web 기본 글꼴도 Noto Sans KR(`--hm-font-family-base`)이지만 토큰은 각자 쓰고, OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 토큰·값을 다른 영역에 복사하지 않습니다. +2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) + - OrgChart Full Page의 바깥 레이아웃 = Web(또는 요청된 패키지) + - OrgChart React의 직원 팝업 = 선택 `@hm-design/org-chart-react/hm-dialog`(Web `Dialog`, Web Theme CSS 필요) +3. 패키지 class(`hm-sw-*`, `hm-orgchart-*`, Web `data-slot`)를 소비 코드에서 덮어쓰지 않습니다. 배치는 `className`·`style`과 소비 프로젝트 class로 합니다. +4. **Web + SW를 한 문서에 함께 쓰면** Web의 전역 base(위 표)가 SW 화면에도 적용됩니다. SW는 자기 범위에서 버튼 등을 초기화하지만 이 조합의 시각 결과는 패키지에서 검증된 적이 없습니다(NOT VERIFIED). 이 조합이면 브라우저에서 SW 부품의 글꼴·테두리·배경을 직접 확인하고 차이를 보고합니다. 가능하면 Web CSS가 없는 SW 전용 화면(별도 entry)으로 분리합니다. +5. Web Scoped Theme(`[data-hm-theme]`)는 body Portal(Select·Popover·DatePicker 팝업)에 전달되지 않습니다. Web 영역만 다른 테마로 바꾸려면 Global Theme를 쓰거나 차이를 보고합니다. + +### SW 일반 모드 ↔ 뷰어 모드 분리 + +SW 일반 모드와 뷰어 모드는 같은 패키지·같은 CSS 파일이지만 **서로 다른 디자인**입니다. 한 화면(한 Header 영역)에는 한 모드만 씁니다. + +1. 일반 모드 화면: `SWHeader`·개별 컨트롤·`SWPopup`·`SWHeaderPropertyPanel`·`SWToolButton`/`SWToolGroup`. `SWViewer*` 컴포넌트와 `--hm-sw-viewer-*` 토큰을 쓰지 않습니다. +2. 뷰어 모드 화면: `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`과 뷰어 패널 컨트롤(`SWViewerSection`·`SWViewerField` …). `SWHeader`에 뷰어 메뉴를 억지로 넣거나 `SWPopup`을 뷰어처럼 재스타일하지 않습니다. +3. 패키지가 실제로 공유하는 부분은 혼합이 아닙니다: `SWViewerPanel`은 `SWPopup` 프레임을 그대로 렌더링하고, 두 Header는 파일명·객체 수정·속성 면 토큰(`--hm-sw-header-document-*`·`object-*`·`property-*`)을 공유합니다. 소비 코드가 이 공유를 흉내 내 다른 모드 부품을 섞어도 된다는 뜻은 아닙니다. +4. 프로그램이 두 모드를 모두 가지면 모드 전환 시 Header 컴포넌트를 바꿔 끼웁니다(파일·패널 상태는 프로그램 상태로 유지). 세부는 `@hm-design/sw/ai/AI_USAGE.md` §0과 `VIEWER.md`. + +## 6단계. 디자인 검증 + +소비 프로젝트에서 실제로 실행한 것만 PASS로 적습니다. + +1. Typecheck(`tsc --noEmit` 등)와 Production Build +2. 브라우저 렌더링: 재사용한 컴포넌트가 HM 외형으로 보이는지(CSS 진입점 누락 확인), 신규 UI가 같은 토큰을 쓰는지 +3. 상태·동작: Hover / Focus(키보드) / Disabled, Popup 열기·닫기·Escape·Focus 복귀, 선택 패키지의 핵심 동작 +4. 폭: Web 390 / 768 / 1280 / 1440px, SW 일반 모드는 대상 창 폭(Header는 반응형 More 포함), SW 뷰어 모드는 대상 창 폭과 항목 `collapseBelow`·`iconOnlyBelow` 경계 전후(More 이동·아이콘만 표시), OrgChart는 캔버스 크기·초기 Fit +5. 혼합이면 영역 경계에서 스타일 침범이 없는지, SW면 선택하지 않은 모드의 컴포넌트·토큰이 섞이지 않았는지(§5) +6. 실행하지 못한 항목은 `NOT VERIFIED`로 남깁니다. + +## 7단계. 결과 보고 형식 + +```md +## HMDesign 적용 결과 +- 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart(Chart Only|Full Page) | 혼합(영역별: …) +- 유형·모드 판단 근거: 프로젝트 설정 | 요청 문구 "…" | 사용자 답변 +- 패키지·버전: @hm-design/ui 0.1.0, … +- 재사용한 컴포넌트: …(Props 설정 포함) +- 조합한 부분: … +- AI가 새로 구현한 부분: 파일 경로 · 이유(카탈로그에 없음) · 안쪽에서 재사용한 컴포넌트 +- 적용한 디자인 토큰: --hm-… (신규 UI가 읽은 것) +- AI 구성 값 — 디자인 확인 필요: 없음 | 속성 · 값 · 이유(4단계 ③) +- 카탈로그와 .d.ts 차이: 없음 | … +- 검증: Typecheck PASS · Build PASS · 브라우저(폭/상태) … · NOT VERIFIED: … +- 제안(구현하지 않음): … +``` + +## 8. 상황별 예시 + +### 예시 A — Web 화면 (목록 + 검색) + +- 읽기: `node_modules/@hm-design/ui/ai/` → COMPOSITION_PATTERNS "목록 화면" +- 재사용: `LNB`(또는 `GNB`) 중 **하나**, `PageHeader`, `Card`, `FilterBar` + `FilterBarSearch` + `FilterBarActions`, `DataTable` + `useDataTable`, `Button` +- 신규(필요 시만): 카탈로그에 없는 콘텐츠 블록 → 소비 프로젝트 컴포넌트, `--hm-sem-*` 토큰과 `Card` 재사용 + +```css +/* src/index.css */ +@import "tailwindcss"; +@import "@hm-design/ui/tailwind.css"; +@import "@hm-design/ui/theme.css"; +``` + +```tsx +import { Button, Card, CardContent, FilterBar, FilterBarActions, FilterBarSearch, PageHeader, PageHeaderContent, PageHeaderTitle } from "@hm-design/ui" +``` + +### 예시 B0 — "HMDesign SW로 화면을 만들어 주세요" (모드 미지정) + +- 유형은 SW로 확정, 모드 근거가 없으므로 코드 작성 전에 1단계 4번의 모드 질문만 합니다. 답에 따라 B1 또는 B2로 진행합니다. +- 소비 프로젝트 설정이 `HMDesign 사용 유형: SW 일반` 또는 `SW 뷰어`이면 묻지 않고 바로 B1/B2입니다. + +### 예시 B1 — SW 일반 모드 (편집 Header + 도구 막대 + 설정 Popup) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(일반 모드) → COMPOSITION_PATTERNS "6. 파일 열기 + 도구 막대", 예제 `ai/examples/ExampleF-ViewerToolbar.tsx`(파일 이름의 Viewer는 과거 명칭이며 일반 모드 `SWHeader` 예제) +- 재사용: `SWHeader`(`documentOpenPlacement="header"`, `controls`, `tools`), `SWToolGroup` + `SWToolButton`(Model/Layout 탭, Fit 등), `SWPopup` + `SWPopupSection` + `SWPopupRow` + `SWHeaderInput`(설정 Popup), 로고(홈) 버튼 메뉴는 `SWHeader`의 `homeMenu` + `SWRecentFiles`(**일반 모드 전용**, 예제 `ExampleG-HomeMenu.tsx`) +- 신규: SW에 없는 기능(예: 검색) → 소비 프로젝트 컴포넌트, `` 안, `--hm-sw-header-*` 토큰, 안쪽 입력은 `SWHeaderInput`(예제 `ExampleD-SearchExtension.tsx`) + +```tsx +import { SWHeader, SWPopup, SWTheme, SWToolButton, SWToolGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 B2 — SW 뷰어 모드 (뷰어 Header + 메뉴 + 패널) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(뷰어 모드) → `VIEWER.md`, 예제 `ai/examples/ExampleH-ViewerMode.tsx` +- 재사용: `SWViewerHeader`(`groups` 데이터: `button`·`toggle`·`menu`·`tabs`·`switch`·`custom` 항목, `onCommand`, `trailing`에 `SWViewerStatus`·`SWViewerHeaderButton`), Dropdown은 `type: "menu"` 항목의 `entries`(단독·우클릭은 `SWViewerMenu`), 팝업은 `SWViewerPanel` + `SWViewerSection`·`SWViewerField`·`SWViewerSwitch`·`SWViewerSlider`·`SWViewerInput`·`SWViewerButton` +- 신규: 뷰어에 없는 패널 콘텐츠 → 소비 프로젝트 컴포넌트를 `SWViewerPanel`의 `children`에, 안쪽은 `SWViewerField` + `SWViewerInput` 등, 외형은 `--hm-sw-viewer-*` 토큰 +- 하지 않음: `SWHeader`·`SWPopup`을 뷰어 화면에 섞기, 로고(홈) 메뉴(`SWHomeMenu`·`SWRecentFiles`·`homeMenu`)를 뷰어 화면에 넣거나 비슷하게 만들기(홈 메뉴는 일반 모드 전용), 로고가 없다고 임의 문자·아이콘 넣기, 연결할 명령이 없는 메뉴를 가짜 동작으로 만들기(제외 또는 `disabled` + 미연결 보고) + +```tsx +import { SWViewerHeader, SWViewerPanel, SWViewerSection, SWViewerField, SWViewerSwitch, type SWViewerHeaderGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 C — 조직도만 (Chart Only) + +- 읽기: `node_modules/@hm-design/org-chart/ai/` → COMPOSITION_PATTERNS "1. Chart Only" +- 재사용: React `OrgChart`(`@hm-design/org-chart-react`) 또는 Vanilla `createOrgChart`, 데이터 `JsonOrgChartDataSource` + `validateOrgChartDataset` +- 필수 옵션: `layoutMode="auto"` + `presentationMode="chart-only"`(초기 Fit·직접 휠 Zoom이 기본) +- **추가하지 않음:** 페이지 제목·통계·설명·Zoom 버튼 바·외부 회색 배경·Navigation. Fixed Chart Only는 미지원(`TypeError`) + +```tsx +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" // Vite. 다른 도구는 실제 배포 URL +import coreUrl from "@hm-design/org-chart/style.css?url" +``` + +### 예시 D — Web + OrgChart (Full Page) + +- 영역: 페이지 레이아웃·제목·필터 = Web, 조직도 영역 = OrgChart +- 읽기: Web `ai/` + OrgChart `ai/COMPOSITION_PATTERNS.md` "2. Full Page" +- 재사용: Web `LNB`/`GNB` 중 하나, `PageHeader`, `Card`, `Select`·`Label`(회사 선택 등 요청된 컨트롤만) + OrgChart `OrgChart`(`selectedCompanyIds` 등 Props로 연결) +- 직원 팝업을 Web Dialog로: `import { OrgChart } from "@hm-design/org-chart-react/hm-dialog"` + `employeePopup="hm-dialog"`(Web CSS 진입점 필요) +- 분리: 조직도 카드·색은 OrgChart 기본 유지. Web 토큰을 조직도에 넣지 않음(바꿔야 하면 `--hm-orgchart-*` 공개 입력만) + +## 9. 소비 프로젝트 설정 — AI가 이 지침을 찾게 하기 + +AI 코딩 도구는 보통 **프로젝트 루트의** `AGENTS.md`(Codex 등)·`CLAUDE.md`(Claude Code)·도구별 규칙 파일만 자동으로 읽고 `node_modules`는 읽지 않습니다. 패키지 설치만으로 지침이 자동 적용되지는 않으므로 소비 프로젝트에서 한 번 연결합니다. + +1. 패키지에 들어 있는 `ai/AGENTS_SNIPPET.md`를 루트 `AGENTS.md`(없으면 새로 만듦)에 붙여 넣고 `HMDesign 사용 유형:` 줄을 프로젝트에 맞게 고칩니다. 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: 예 "페이지 = Web, 중앙 = OrgChart")` 중 하나입니다. SW 프로젝트면 모드까지 적어야 AI가 모드를 다시 묻지 않습니다(`SW`만 적으면 모드를 묻습니다). 정하지 않았으면 그 줄을 지워 AI가 1단계에서 묻게 합니다. + ```bash + cat node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md >> AGENTS.md + ``` + (PowerShell: `Get-Content node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md | Add-Content AGENTS.md`. 설치한 아무 HMDesign 패키지의 사본이나 같습니다.) +2. Claude Code는 `CLAUDE.md`에 `@AGENTS.md` 한 줄을 두면 같은 내용을 읽습니다. 다른 도구(Cursor 규칙 등)는 그 도구의 규칙 파일에 같은 내용을 넣습니다. +3. 패키지를 업데이트한 뒤 스니펫이 바뀌었는지 확인합니다(스니펫은 경로 안내만 하므로 보통 그대로 둡니다). + +자동으로 되지 않는 것: 패키지 설치 시 루트 파일 생성(`postinstall` 없음), 도구가 `node_modules`를 스스로 탐색하는 것. 위 연결이 없으면 사용자가 "node_modules/@hm-design/…/ai/AI_GUIDE.md를 먼저 읽어"라고 요청해야 합니다. + +**Git Submodule + npm Workspace로 연결한 경우**(Registry 없이 HMDesign 저장소를 예: `HMDesign/` 폴더에 Submodule로 고정하고 `workspaces`에 `HMDesign/packages/<패키지>`를 등록한 구성): `node_modules/@hm-design/<패키지>`는 `HMDesign/packages/<패키지>`로 연결되므로 지침 위치는 위 표와 같습니다(`HMDesign/packages/<패키지>/ai/`와 같은 파일). 공개 진입점은 `dist/`를 가리키므로 HMDesign 폴더 안에서 `npm ci`와 `npm run build:packages`를 먼저 실행해야 하며, `dist/`가 없으면 Import 오류를 컴포넌트 결함으로 보고하지 말고 빌드 필요로 보고합니다. HMDesign 저장소 루트의 `AGENTS.md`·`CLAUDE.md`는 HMDesign 개발용이므로 소비 프로젝트 지침으로 쓰지 않습니다. + +## 10. 문서 갱신 (HMDesign 저장소 유지보수자) + +컴포넌트를 추가·수정하면 같은 변경에서 해당 패키지 `ai/COMPONENT_CATALOG.md`와 필요한 `DESIGN_RULES.md`·`COMPOSITION_PATTERNS.md`를 갱신하고 `npm run check:ai-docs`를 통과시킵니다. 절차는 저장소 `docs/ai/MAINTAINING.md`(패키지 미포함)에 있습니다. diff --git a/packages/org-chart/ai/AI_USAGE.md b/packages/org-chart/ai/AI_USAGE.md new file mode 100644 index 0000000..0dbc3f8 --- /dev/null +++ b/packages/org-chart/ai/AI_USAGE.md @@ -0,0 +1,84 @@ +# @hm-design/org-chart — AI 코딩 도구 사용 안내 (OrgChart) + +먼저 [AI_GUIDE.md](./AI_GUIDE.md)(공통 1~7단계)를 읽고 사용 유형이 **3 OrgChart** 또는 OrgChart가 포함된 **4 혼합**일 때 이 폴더를 씁니다. 이 폴더(`node_modules/@hm-design/org-chart/ai/`)는 Core `@hm-design/org-chart` 0.1.0과 React 어댑터 `@hm-design/org-chart-react` 0.1.0의 공개 Export·타입에서 확인한 내용만 적습니다. + +| 문서 | 내용 | +|---|---| +| [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md) | Core 함수·Handle·옵션, 데이터 계약·Validator, React `OrgChart` Props, 선택 Entry `/hm-dialog` | +| [DESIGN_RULES.md](./DESIGN_RULES.md) | 승인된 기본 디자인, 회사 컬러, 공개 CSS 입력 `--hm-orgchart-*`, 변경 가능/불가 경계 | +| [COMPOSITION_PATTERNS.md](./COMPOSITION_PATTERNS.md) | Chart Only(React·Vanilla), Full Page(Web + OrgChart), 데이터 생성·변환, 팝업 선택 | + +## 0. 사용 유형 (공통 체계) + +사용 유형은 **1 Web / 2 SW(SW 일반 모드 · SW 뷰어 모드) / 3 OrgChart / 4 혼합**이고, 소비 프로젝트 설정 값은 `HMDesign 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart | 혼합(영역별)`입니다. 확인 순서·질문 문구·설정 방법은 [AI_GUIDE.md](./AI_GUIDE.md)가 정의하며 여기서 반복하지 않습니다. 유형·모드 사이를 임의로 섞지 않고, 이 패키지의 컴포넌트·CSS 원본은 수정하지 않습니다. + +- **OrgChart 선택 시** 아래 §1의 Chart Only / Full Page 질문은 유형 질문과 **같은 메시지에서 한 번만** 묻습니다. 유형·생성 방식이 이미 정해졌으면 묻지 않습니다. +- **혼합:** 영역별로 패키지를 나눕니다. Full Page의 바깥(Page·Navigation·제목·필터)은 Web(또는 요청한 패키지), 조직도 영역은 OrgChart입니다. SW 화면 안의 조직도는 SW 영역과 OrgChart 영역을 분리하고, SW 모드 규칙은 `node_modules/@hm-design/sw/ai/` 문서를 따릅니다. 두 패키지는 서로 의존하지 않으며 **SW 화면 + 조직도 조합은 패키지에서 검증된 적이 없어 NOT VERIFIED**입니다(결과 보고에 적습니다). + +### 없는 UI의 처리 (OrgChart 기준 3단계) + +1. **기존 Core/React 우선:** [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md)의 컴포넌트·옵션·Props로 먼저 해결합니다(예: `presentationMode`, `autoLayout`, `employeePopup`, `companyTopNodes`). +2. **없으면 소비 프로젝트에 신규 구현:** 조직도 바깥 UI는 소비 프로젝트에 만들고, 조직도에 맞춘 색·글꼴은 공개 입력 `--hm-orgchart-*`와 [DESIGN_RULES.md](./DESIGN_RULES.md)를 참고합니다. 카드·연결선·배치(승인 디자인)는 바꾸지 않고 패키지 원본·Shadow DOM 내부도 수정하지 않습니다. +3. **참고할 값이 없으면:** HMDesign 공통 규칙(Font Weight 400/500/700, Light/Dark 없음, 전역 CSS 금지)과 조화되게 구성합니다. 토큰·승인 기록에 없는 값은 결과 보고에 **"AI 구성 값 — 디자인 확인 필요"**로 적습니다. + +## 1. 생성 방식 사전 선택 (필수) + +새 조직도 컴포넌트나 조직도 페이지를 만들 때 **생성 방식이 요청에 없으면 코드 작성 전에** 대화에서 묻습니다(웹페이지에 선택 UI를 만들지 않음). 사용 유형도 정해지지 않았다면 유형 질문과 같은 메시지에서 한 번에 묻고, 이미 말했으면 다시 묻지 않습니다. + +> 조직도만 기존 페이지에 삽입할까요, 아니면 레이아웃까지 구성한 새 페이지 전체를 생성할까요? +> +> ① 조직도만 생성 (Chart Only) ② 새 페이지 전체 생성 (Full Page) + +| 방식 | 만드는 것 | 만들지 않는 것 | +|---|---|---| +| **Chart Only** | 기존 페이지에 넣을 독립 조직도 컴포넌트: 흰색 캔버스 + 노드 + 연결선, 최초 Fit to View, 일반 휠 Zoom, Pan. Core 내부 기능(그룹 접기, 직원 팝업)은 유지 | 페이지 제목·기준일·회사 수/인원 요약·설명·Zoom/Fit 버튼 바·배율 안내·Drag & Drop 문구·JSON/디버그 패널·외부 회색 배경·Page Header·Navigation·AI 입력 UI | +| **Full Page** | 기존 HM UI(보통 Web `@hm-design/ui`)로 요청된 제목·정보·필터·컨트롤과 전체 배치·반응형 + 조직도 영역 | 요청에 없는 통계·설명·다운로드·외부 API·추가 메뉴 | + +- `layoutMode`(Fixed / Auto)는 배치 모드이며 생성 방식 선택을 대신하지 않습니다. +- **Chart Only는 Auto 전용**입니다: `layoutMode: 'auto'` + `presentationMode: 'chart-only'`. Fixed와 함께 쓰면 `TypeError`. Fixed Chart Only 요청은 Auto로 임의 변경하지 말고 "미지원"으로 보고합니다. +- Chart Only에는 일반 Web 화면의 Navigation(GNB/LNB/DASHBOARD) 의무를 적용하지 않습니다. Full Page에는 Web 화면 규칙([Web COMPOSITION_PATTERNS §1](../../ui/ai/COMPOSITION_PATTERNS.md) — 설치 경로 `node_modules/@hm-design/ui/ai/`)을 적용합니다. + +## 2. 작업 순서 + +1. 요청을 가변 구조로 정리합니다: 회사 수·ID, 대표이사 유무, 조직 유형과 명칭, 부모·자식 관계, 조직별 하위 조직 수·직원 수, 전체 직원 수, Depth(회사·직원 카드 포함 여부), 집계 기준. 의미가 불분명해 구조·총원이 달라지는 항목만 질문합니다. +2. 데이터 만들기·변환 → `validateOrgChartDataset`로 검증(§3). 실패 항목을 지워서 통과시키지 않습니다. +3. 기존 Core·React `OrgChart`를 그대로 씁니다. 새 조직도 엔진·카드·연결선을 만들지 않고 Shadow DOM 내부를 조작하지 않습니다. +4. 공개 옵션으로 표현할 수 없는 요구(예: Fixed Chart Only, 임의 회사 프리셋 등록)는 지원 한계와 대안을 보고합니다. +5. 검증: 요청 대비 회사·조직·Depth·직원·조직장 수가 실제 데이터(`organizations`, 고유 `employees`)와 일치하는지, 렌더링·초기 Fit·Zoom/Pan·접기·팝업·키보드를 브라우저에서 확인합니다. + +## 3. 데이터 규칙 + +- **요청을 정확히 반영:** 명시된 회사·조직명·관계·유형·조직 수·직원 수·직위·대표이사 유무를 그대로 만듭니다. 이전 예시의 회사·Depth·인원을 재사용하지 않고 특정 Depth를 강제하지 않습니다. +- **제공 JSON·CSV·Excel 보존:** 직원·조직을 임의로 추가·삭제·병합하지 않고 이름·직위·원본 ID·상하 관계를 바꾸지 않습니다(trim·철자 교정 포함). 원본에 없는 근무 상태·관계사·유형을 실제 정보처럼 채우지 않습니다. Core는 CSV/XLSX parser를 제공하지 않습니다 — 변환 결과는 `unknown`으로 보고 Validator를 통과시킵니다. +- **직원 1회 생성:** 대표이사·조직장은 `employees`에 한 번만 만들고 `leaderId`로 참조합니다. 별도 지시가 없으면 총원에 포함합니다. +- **복수 회사:** 회사마다 `parentId: null`인 별도 Root. 회사들을 잇는 가짜 상위 조직을 만들지 않습니다. Root에 `companyId`(하위 조직이 상속). +- **조직 유형:** `type`은 `root | division | office | div | cell | team`뿐입니다. 업무 명칭(본부·실·부서 …)은 `name`에 그대로 두고 `type`은 가장 가까운 값으로 대응한 뒤 그 대응을 보고합니다. 새 enum을 만들지 않습니다. +- **팀·셀 위계(확장형 데이터 생성 규칙):** 팀(`team`)을 셀(`cell`)의 직접 자식이나 셀의 어떤 하위 계층에도 두지 않습니다. 팀 → 셀은 허용합니다. 제공 데이터가 이 규칙과 충돌하면 원본 경로·ID를 보고하고 조용히 고치지 않습니다(이 규칙은 데이터 생성 규칙이며 Validator가 자동 거절하지는 않음). +- **회사 컬러:** Auto 회사 ID는 `hanmac`, `saman`, `jangheon-industry`, `jangheon`, `ptc`, `halla`, `baron` 7개뿐입니다. 미등록 회사를 기존 ID에 임의로 연결하지 않고 제약으로 보고합니다. 알 수 없는 ID는 Auto에서 `TypeError`. +- `createOrgChartExampleDataset`은 기존 fixture template에서 20 / 100 / 300명 예시를 만드는 helper입니다. 임의 인원 생성기나 실제 데이터 변환 API가 아닙니다. + +## 4. 설치·Import + +```tsx +// React +import { OrgChart } from "@hm-design/org-chart-react" // 기본 Entry, HM UI 불필요 +import { JsonOrgChartDataSource, validateOrgChartDataset } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" // Vite 전용 문법 +import coreUrl from "@hm-design/org-chart/style.css?url" +``` + +- 최소 설치: Core + Vanilla = `@hm-design/org-chart`. React = `@hm-design/org-chart` + `@hm-design/org-chart-react` + React 19 + `react-dom`. HM Dialog 팝업을 쓸 때만 `@hm-design/ui`와 그 CSS 진입점 추가. +- Core exports: `.`, `./style.css`, `./engine.css`, `./browser`(IIFE 전역 `window.HMOrgChart`, ESM named import용 아님). React exports: `.`, `./hm-dialog`. 내부 `src`/`dist` 경로 import 금지. +- `stylesheetUrls: { engine, core }`는 **필수**이며 CSS의 **URL**입니다. Core가 자기 Shadow DOM에 engine → core 순으로 link를 넣습니다. 문서에 CSS를 import하는 것만으로는 카드가 스타일링되지 않습니다. `?url`은 Vite 문법이며 다른 도구는 공개 CSS를 실제 배포 URL로 바꿔 전달합니다. +- 글꼴: 기본 Noto Sans KR. 호스트가 font-face를 한 번 등록합니다(Web 패키지 `theme.css`를 쓰면 이미 포함). +- URL JSON은 HTTP(S)/상대 경로만. `file://` fetch는 지원하지 않습니다. + +## 5. 디자인 보호 + +- 승인된 기본 디자인(카드·회사색·그룹 제목·연결선·Typography·간격)을 바꾸지 않습니다. 의도적 커스터마이징은 공개 CSS 입력 `--hm-orgchart-*`(외부 테마)로만 하고, 기본값 자체 변경은 사용자 확인이 필요합니다([DESIGN_RULES.md](./DESIGN_RULES.md)). +- 접근성 미해결: 삼안(`#F08300`, 약 2.64:1)·장헌산업(`#4580A6`, 약 4.29:1) 그룹 제목의 흰 글자 대비가 WCAG AA 4.5:1 미달입니다. 숨기거나 PASS로 보고하지 않습니다. +- Font Weight 400 / 500 / 700만 사용합니다. + +## 6. 공개하지 않은 것 + +`chartOnly`, `showToolbar`, `showHeader`, React `ref`/imperative handle, `data`·`title`·`children` Props, 회사 프리셋 등록 setter, 카드 교체 API, Compact 모드는 **없습니다**. Chart Only의 정확한 API는 `presentationMode`입니다. `displayMode: 'readOnly'`나 `createOrgChartTree`는 Chart Only를 대신하지 않습니다. diff --git a/packages/org-chart/ai/COMPONENT_CATALOG.md b/packages/org-chart/ai/COMPONENT_CATALOG.md new file mode 100644 index 0000000..f47dacd --- /dev/null +++ b/packages/org-chart/ai/COMPONENT_CATALOG.md @@ -0,0 +1,109 @@ +# OrgChart 공개 API 카탈로그 + +기준: `@hm-design/org-chart` 0.1.0(`src/index.ts` → `dist/index.d.ts`)과 `@hm-design/org-chart-react` 0.1.0(`.`, `./hm-dialog`). **이 문서에 없는 이름은 공개 API가 아닙니다.** 저장소의 `npm run check:ai-docs`가 이 문서와 실제 Export의 일치를 검사합니다. + +- 런타임 helper(`JsonOrgChartDataSource` 등)는 항상 Core에서 import합니다. React 패키지는 Core 타입을 type-only로 다시 export합니다. +- 옵션은 생성 시점에 고정되는 것이 많습니다. 아래 "변경 방법"을 확인하고, React에서는 객체 Props를 `useMemo`로 고정합니다. + +## 1. React — `@hm-design/org-chart-react` + +| Export | 내용 | +|---|---| +| `OrgChart` | 유일한 기본 runtime export. React가 전용 container를 소유하고 Core handle의 mount·subscribe·destroy를 관리. Props는 아래 표 | +| 타입 `OrgChartProps`, `OrgChartEmployeeSelection`, `OrgChartEmployeePopupProps` | `OrgChartEmployeePopupProps = { selection: { employee, context } \| null; onClose }` | +| `/hm-dialog`의 `OrgChart`, `HMEmployeeDialog` | 같은 Props. 직원 팝업을 Web `Dialog`로(`employeePopup="hm-dialog"` 명시). `@hm-design/ui` 0.1.0 peer와 Web CSS 진입점 필요. `HMEmployeeDialog`는 이 Entry에서만 export | + +`OrgChartProps` = Core `OrgChartOptions`에서 `container`·`onStateChange`를 뺀 것 + 아래 React 전용 Props. + +| Prop | 값 | 변경 시 | +|---|---|---| +| `dataSource` (필수) | `OrgChartDataSource` (`new JsonOrgChartDataSource(data)`) | 새 객체 → 같은 handle `reload` (useMemo로 고정) | +| `stylesheetUrls` (필수) | `{ engine: string; core: string }` CSS URL | 문자열 값이 바뀌면 재생성 | +| `layoutMode` | `'fixed'`(기본) · `'auto'` | 재생성 | +| `displayMode` | `'interactive'`(기본) · `'readOnly'` | 재생성 | +| `presentationMode` | `'default'`(기본) · `'chart-only'` — **Auto 전용**, Fixed와 쓰면 `TypeError` | — | +| `initialView` | `'center'` · `'fit'` (chart-only 기본 `fit`) | — | +| `wheelZoom` | `'modifier'`(Ctrl/⌘ + 휠) · `'direct'` (chart-only 기본 `direct`) | — | +| `companyId` | Auto 기본 회사 프리셋(기본 `hanmac`) | 재생성 | +| `selectedCompanyIds` | `undefined` = 전체, `[]` = 없음 (Auto) | 같은 handle에서 선택 변경 | +| `autoLayout` | `{ type?: 'tb' \| 'lr' \| 'hybrid'; hybridStartDepth?: 2 \| 3 \| 4; initialVisibleDepth?: 1 \| 2 \| 3 \| 'all'; hybridOrganizationIds?: string[] }` | 같은 handle | +| `interactions` | `{ collapse?, zoom?, pan? }` 모두 기본 true (Auto) | 같은 handle | +| `dragDropEnabled` | 기본 `false`. true면 Auto 직원·그룹 이동(포인터, `Alt+M` → 방향키 → Enter) | 같은 handle | +| `companyTopNodes` | `{ [companyId]: { employeeId?, title?, name?, profileImage?, organizationName?, display?: 'card' \| 'titleOnly' \| 'hidden' } }` (표시만 변경) | 재생성 | +| `employeeConnections` | `{ [organizationId]: 'top' \| 'left' \| 'right' }` 직원 연결선 방향 | 재생성 | +| `zoom` | `{ min?, max?, step? }` (기본 5–300%) | 재생성 | +| `organizationLinks` | `{ [organizationId]: url }` 1Depth 제목만 링크. HTTP(S)·상대 URL | 재생성 | +| `employeePopup` | `'core'`(기본) · `'hm-dialog'` · `'adapter'` · `'none'` (Auto. Fixed는 항상 Core 팝업) | 같은 handle | +| `employeePopupAdapter` | `ComponentType` (`employeePopup="adapter"`와 함께) | — | +| `onEmployeeClick(employee, context)` | 호스트 소유 정보 UI. 지정하면 기본 팝업 대신 호출(최우선) | — | +| `onMove(result)` | Auto 이동 결과(`moved` 성공/거절). 서버 저장 없음 | — | +| `aggregationPolicy` | `ApprovedAggregationPolicy` (업무 집계 정책) | 재생성 | +| `onStateChange(state)` | `loading` → `ready`(summary 포함) / `error`(issues) | — | +| `onLifecycleError(error)` | 생성·mount·reload·cleanup의 예기치 않은 오류 | — | +| `className`, `style` | 바깥 container에만 적용. 캔버스 높이는 container 높이(미지정 시 최소 320px) | — | + +없는 것: `ref`/imperative handle, `children`, `data`, `title`, `chartOnly`, `showToolbar`. React에서 `fitToView` 등을 직접 호출하는 공개 경로는 없습니다(Chart Only의 `initialView="fit"`이 초기 Fit 담당). + +## 2. Core — `@hm-design/org-chart` + +### 2.1 렌더링 + +| Export | 내용 | +|---|---| +| `createOrgChart(options)` → `OrgChartHandle` | 전체 조직도. 옵션 = §1 표의 Core 항목 + `container?: HTMLElement`, `onStateChange?`. DOM 없이 생성 가능, `mount`에서 연결된 HTMLElement 필요 | +| `createOrgChartTree(options)` | 계층만 렌더링(독립 Tree). Chart Only를 대신하지 않음 | +| `createPositionSummary`, `createAffiliationSummary`, `createStatusSummary` (옵션 타입 `OrgChartSummaryComponentOptions`) | 직위별·관계사별·근무 상태별 요약 독립 모듈 | + +`OrgChartHandle`: + +| 메서드 | 내용 | +|---|---| +| `mount(container?)`, `update(input)`, `reload(source?)`, `destroy()` | 수명주기. `destroy`는 최종·idempotent — 다시 쓰려면 새 handle | +| `subscribe(listener)` → unsubscribe, `getState()` | 상태 구독 | +| `setSelectedCompanies(ids?)`, `getSelectedCompanies()` | Auto 회사 선택 | +| `setAutoLayout(options)`, `getAutoLayout()` | Auto 배치 변경(접기 상태 유지) | +| `setInteractions(options)`, `getInteractions()` | Auto 접기·Zoom·Pan on/off | +| `setEmployeeClickHandler(handler?)` | Auto 팝업 소유자 변경 | +| `setDragDropEnabled(enabled)`, `getDragDropEnabled()`, `move(request)`, `getData()` | Auto 이동 편집(브라우저 메모리만) | +| `zoomTo(scale)`, `panBy(x, y)`, `fitToView()`, `getViewportState()` | 보기 조작 | + +### 2.2 데이터 계약·검증 + +| Export | 내용 | +|---|---| +| 타입 `OrgChartDataset` | `{ schemaVersion: '0.1-draft'; organizations; employees; affiliations; relations?; presentation?; metadata: { asOfDate; dataVersion; schemaVersion?; updatedAt?; updateNote? } }` (`SCHEMA_VERSION` 상수) | +| 타입 `Organization` | `{ id; companyId?; parentId: string \| null; name; type: OrganizationType; leaderId: string \| null; displayOrder: number }` | +| 타입 `Employee` | `{ id; organizationId; affiliationId; name; position; jobTitle: string \| null; profileImage: string \| null; workStatus: WorkStatus }` | +| 타입 `OrganizationType`, `WorkStatus`, `Affiliation`, `ID` | `'root' \| 'division' \| 'office' \| 'div' \| 'cell' \| 'team'` / `'active' \| 'dispatched' \| 'onLeave'` / `{ id; name }` / `string` | +| 타입 `OrganizationRelation`, `RelationType`, `PresentationConfig`, `Metadata` | 관계(`cooperation` · `support`, 검증만 하고 그리지 않음), 표시 설정, 메타데이터 | +| `validateOrgChartDataset(input)` → `ValidationResult` | `{ valid: true, data }`(깊게 freeze) 또는 `{ valid: false, issues: ValidationIssue[] }`. 알 수 없는 필드·중복 ID·참조 오류·순환·안전하지 않은 URL 등 거절. `organizations: []`는 오류, `employees: []`는 유효 | +| `isSafeImageUrl(url)` | 이미지 URL 안전성 검사 | +| `normalizeOrgChartDataset(data)` → `NormalizedOrgChartDataset` (`OrganizationTreeNode`) | 트리 정규화 | +| `calculateSummary(data, policy?)` → `OrgChartSummary` (`SummaryCounts`, `AggregationResult`) | `raw` = 원본 고유 직원 집계(업무 승인 인원 아님). 정책 없으면 `aggregation.status='unavailable'` | +| 타입 `ApprovedAggregationPolicy`, `AggregationPolicy` | `{ policyVersion; includedStatuses; activeStatuses; includeLeaders; membershipMode }` | +| `snapshotOrgChartDataset(data)` | 불변 snapshot | +| `JsonOrgChartDataSource(input, options?)` (`JsonOrgChartDataSourceOptions` = `{ fetch? }`) | inline dataset 또는 HTTP(S)/상대 URL. 생성 시 inline 입력 고정 | +| `OrgChartSourceError` (`OrgChartSourceErrorCode` = `SOURCE_LOAD` · `SOURCE_PARSE` · `SOURCE_ABORT` · `SOURCE_URL` · `SOURCE_SNAPSHOT`) | Source 오류 | +| 타입 `OrgChartDataSource`, `ValidationIssue`, `ValidationResult` | 사용자 정의 Source는 `load(options?: { signal?: AbortSignal }): Promise` 구현 | + +### 2.3 회사 컬러·예시·이동 + +| Export | 내용 | +|---|---| +| `companyColorPresets`, `getCompanyColorPreset(id)` / 타입 `CompanyId`, `CompanyColorPreset` | 7개 회사 `{ companyId, companyName, primary, secondary }`. 등록 setter 없음 | +| `createOrgChartExampleDataset(template, selection)` / 타입 `OrgChartExampleScope`, `OrgChartExampleEmployeeCount`, `OrgChartExampleSelection` | 기존 large fixture template에서 `employeeCount: 20 \| 100 \| 300`, `scope: 'total' \| 'per-company'`, `companyIds?` 예시 생성 | +| `createOrgChartMoveValidator`, `validateOrgChartMove`, `applyOrgChartMove` / 타입 `OrgChartMoveRequest`, `OrgChartMoveFailureCode`, `OrgChartMoveFailure`, `OrgChartMoveValidation`, `OrgChartMoveResult` | 순수 이동 검증·적용(`{ kind: 'employee' \| 'organization', sourceId, targetOrganizationId }`) | + +### 2.4 옵션·상태 타입 + +`OrgChartOptions`, `OrgChartHandle`, `OrgChartState`, `OrgChartDisplayMode`, `OrgChartLayoutMode`, `OrgChartPresentationMode`, `OrgChartInitialView`, `OrgChartWheelZoom`, `OrgChartAutoLayoutType`, `OrgChartAutoLayoutOptions`, `OrgChartInteractionOptions`, `OrgChartConnectionDirection`, `OrgChartTopNode`, `OrgChartViewportState`, `OrgChartOrganizationLinks`, `OrgChartEmployeeClickContext`(`{ organization, affiliation, trigger, originalEvent }`). + +## 3. 상태·오류 + +- `OrgChartState.status`: `loading` → `ready`(`dataVersion`, `summary`, `aggregation`) 또는 `error`(`issues: { code, path, message }[]`). 타입에 `empty`·`idle`·`destroyed`가 있으나 지원되는 Empty UI 증거는 아닙니다. +- Auto는 회사 프리셋·회사 경계·상단 직원 설정을 추가 검사합니다(`COMPANY_PRESET`, `COMPANY_HIERARCHY`, `TOP_NODE_CONFIG`, `TOP_NODE_REFERENCE`). Validator 통과만으로 Auto 표시가 보장되지 않습니다. +- 데이터·Source·스타일 오류 = `state.error`, 예기치 않은 생성·수명주기 오류 = React `onLifecycleError`. + +## 4. 지원하지 않는 것 + +자연어 → 데이터 자동 생성 UI, CSV/XLSX 직접 import, 서버 저장·외부 API·이미지/PDF export, 임의 회사 프리셋 등록, 카드 교체, Compact 모드, 공개 collapse setter, React imperative ref, Fixed Chart Only, Fixed의 휠 Zoom/Pan, SSR/hydration(검증 범위 밖). diff --git a/packages/org-chart/ai/COMPOSITION_PATTERNS.md b/packages/org-chart/ai/COMPOSITION_PATTERNS.md new file mode 100644 index 0000000..1e6ce15 --- /dev/null +++ b/packages/org-chart/ai/COMPOSITION_PATTERNS.md @@ -0,0 +1,186 @@ +# OrgChart 조합 패턴 + +모든 패턴은 공개 Export만 씁니다([COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md)). 예시 데이터는 가상이며 회사·분기·인원을 기본값으로 쓰지 않습니다. + +## 0. 어떤 패턴을 고를까 + +| 요청 | 패턴 | +|---|---| +| 조직도만 기존 페이지에 삽입 | 1. Chart Only (Auto) | +| 조직도가 들어간 새 페이지 전체 | 2. Full Page (Web + OrgChart) | +| 직원 정보 팝업을 Web 디자인으로 | 3. HM Dialog 팝업 | +| 다른 디자인 시스템의 팝업 | 4. 팝업 어댑터 | +| 자연어·CSV·Excel → 데이터 | 5. 데이터 만들기 | +| Web·SW 등 다른 영역과 혼합 | 2. Full Page의 영역 분리 원칙. SW 화면 + 조직도는 NOT VERIFIED([AI_USAGE.md §0](./AI_USAGE.md)) | +| 기존 Workdesk(고정) 구성 | `layoutMode="fixed"`(기본), `displayMode="readOnly"` 등 — Chart Only 불가 | + +## 1. Chart Only (Auto) — 조직도 영역만 + +**React** + +```tsx +import { useMemo } from "react" +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource, type OrgChartDataset } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" +import coreUrl from "@hm-design/org-chart/style.css?url" + +const stylesheetUrls = { engine: engineUrl, core: coreUrl } + +export function OrganizationChart({ data }: { data: OrgChartDataset }) { + const dataSource = useMemo(() => new JsonOrgChartDataSource(data), [data]) + return ( + console.error(error)} + /> + ) +} +``` + +**Vanilla (React 없음)** + +```ts +import { createOrgChart, JsonOrgChartDataSource, type OrgChartDataset } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" +import coreUrl from "@hm-design/org-chart/style.css?url" + +export async function mountOrganizationChart(container: HTMLElement, data: OrgChartDataset): Promise<() => void> { + const chart = createOrgChart({ + container, dataSource: new JsonOrgChartDataSource(data), + stylesheetUrls: { engine: engineUrl, core: coreUrl }, + layoutMode: "auto", presentationMode: "chart-only", dragDropEnabled: false, + }) + try { + await chart.mount() + if (chart.getState().status !== "ready") throw new Error("조직도를 표시할 수 없습니다.") + return () => chart.destroy() + } catch (error) { + chart.destroy() + throw error + } +} +``` + +- 이 컴포넌트에 제목·통계·버튼 바·설명·바깥 회색 영역을 **추가하지 않습니다.** 호스트 페이지의 기존 UI도 바꾸지 않습니다. +- 독립 미리보기가 필요하면 흰색 조직도 영역을 최상위로 두는 별도 entry만 만듭니다(`html, body, #root { height: 100%; margin: 0 }` 같은 페이지 설정은 **미리보기 entry의 index.html/CSS**에만). +- 레이아웃 방향 등 요청된 조직도 내부 옵션만 추가: `autoLayout={{ type: "lr" }}`, `selectedCompanyIds`, `employeePopup` … + +## 2. Full Page (Web + OrgChart) + +영역: 페이지·Navigation·제목·필터 = Web(`@hm-design/ui`, `node_modules/@hm-design/ui/ai/` 규칙), 조직도 영역 = OrgChart. + +```tsx +import { useId, useMemo, useState } from "react" +import { + Card, CardContent, Label, PageHeader, PageHeaderContent, PageHeaderTitle, + Select, SelectContent, SelectItem, SelectTrigger, SelectValue, +} from "@hm-design/ui" +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource, companyColorPresets, type CompanyId, type OrgChartDataset } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" +import coreUrl from "@hm-design/org-chart/style.css?url" + +const stylesheetUrls = { engine: engineUrl, core: coreUrl } + +export function OrganizationPage({ data, companyIds }: { data: OrgChartDataset; companyIds: CompanyId[] }) { + const selectId = useId() + const [company, setCompany] = useState<"all" | CompanyId>("all") + const dataSource = useMemo(() => new JsonOrgChartDataSource(data), [data]) + const selected = useMemo(() => (company === "all" ? undefined : [company]), [company]) + return ( +
    + 조직도 + + + + +
    + +
    +
    +
    +
    + ) +} +``` + +```css +/* 소비 레이아웃만. 조직도 안쪽 디자인은 건드리지 않음 */ +.app-org-page { display: flex; flex-direction: column; gap: 16px; } +.app-org-canvas { height: 640px; margin-top: 16px; } +``` + +- 위 회사 선택 Select는 **요청된 경우의 예**입니다. 요청에 없는 필터·통계·설명을 넣지 않습니다. +- Full Page의 Navigation(GNB/LNB/DASHBOARD 중 하나)과 Web 규칙은 Web 문서를 따릅니다. +- Web 토큰(`--hm-sem-*`)을 조직도에 넣지 않습니다. 조직도 색을 맞춰야 하면 [DESIGN_RULES.md](./DESIGN_RULES.md) §3의 `--hm-orgchart-*` 입력으로 따로 연결합니다(자동 동기화 없음). +- `presentationMode`를 생략하면 Auto 기본 화면(조직도 내부 제목·요약·툴바 포함)입니다. Full Page에서 그 내장 UI가 요청 UI와 겹치면 `presentationMode="chart-only"`로 조직도 영역만 쓰고 바깥 UI는 Web으로 만듭니다. + +## 3. HM Dialog 팝업 (Web Dialog) + +```tsx +import { OrgChart } from "@hm-design/org-chart-react/hm-dialog" + +``` + +- `@hm-design/ui` 0.1.0 설치 + 앱 CSS 진입점에 Web `tailwind.css`·`theme.css` 필요(`/hm-dialog`가 CSS를 자동 import하지 않음). +- `@hm-design/ui` 설치만으로 팝업이 바뀌지 않습니다. Entry와 `employeePopup`을 모두 명시합니다. Fixed는 항상 Core 팝업입니다. + +## 4. 팝업 어댑터 (다른 디자인 시스템) + +```tsx +import { OrgChart, type OrgChartEmployeePopupProps } from "@hm-design/org-chart-react" + +function MyEmployeePopup({ selection, onClose }: OrgChartEmployeePopupProps) { + if (!selection) return null + // selection.employee / selection.context를 읽기만 한다. 모달 접근성·Escape·context.trigger로 Focus 복귀는 어댑터 책임. + return
    …
    +} + + +``` + +`onEmployeeClick`을 주면 어떤 팝업 설정보다 우선합니다. + +## 5. 데이터 만들기 + +```ts +import { validateOrgChartDataset, type OrgChartDataset } from "@hm-design/org-chart" + +const data: OrgChartDataset = { + schemaVersion: "0.1-draft", + organizations: [ + { id: "hanmac-root", companyId: "hanmac", parentId: null, name: "한맥기술", type: "root", leaderId: "e-ceo", displayOrder: 0 }, + { id: "hanmac-office-1", parentId: "hanmac-root", name: "1본부", type: "office", leaderId: "e-1", displayOrder: 0 }, + { id: "hanmac-team-1", parentId: "hanmac-office-1", name: "1팀", type: "team", leaderId: null, displayOrder: 0 }, + ], + employees: [ + { id: "e-ceo", organizationId: "hanmac-root", affiliationId: "hanmac", name: "가상 대표", position: "대표이사", jobTitle: null, profileImage: null, workStatus: "active" }, + { id: "e-1", organizationId: "hanmac-office-1", affiliationId: "hanmac", name: "가상 본부장", position: "본부장", jobTitle: null, profileImage: null, workStatus: "active" }, + { id: "e-2", organizationId: "hanmac-team-1", affiliationId: "hanmac", name: "가상 사원", position: "사원", jobTitle: null, profileImage: null, workStatus: "active" }, + ], + affiliations: [{ id: "hanmac", name: "한맥기술" }], + metadata: { asOfDate: "2026-10-19", dataVersion: "example-1" }, +} + +const checked = validateOrgChartDataset(data) +if (!checked.valid) throw new Error(JSON.stringify(checked.issues)) +``` + +- 필드는 위가 전부입니다(알 수 없는 필드는 Validator가 거절). 이름 규칙: `displayOrder`, `jobTitle`, `profileImage`, `workStatus`. +- 업무 명칭 "본부"는 `name`에 두고 `type: "office"`로 대응했습니다 — 이런 대응은 결과 보고에 적습니다. +- 회사 추가 = `parentId: null`인 Root를 하나 더(+ 그 회사 `affiliations` 항목). 가짜 상위 조직 금지. +- 검증 후 보고: 요청 대비 회사 수, 조직 수, Depth, 고유 직원 수(대표·조직장 포함 여부), 조직별 직속/하위 포함 인원. diff --git a/packages/org-chart/ai/DESIGN_RULES.md b/packages/org-chart/ai/DESIGN_RULES.md new file mode 100644 index 0000000..1bc4f8f --- /dev/null +++ b/packages/org-chart/ai/DESIGN_RULES.md @@ -0,0 +1,82 @@ +# OrgChart 디자인 규칙 + +출처: Core `style.css`(원본 `src/styles/design-tokens.css`)·`src/core/style-presets.ts`·`company-color-presets.ts`와 사용자 승인 기록(2026-10-13 APPROVED). OrgChart는 **독립 디자인**입니다. Web(`--hm-sem-*`)·SW(`--hm-sw-*`) 토큰의 영향을 받지 않고, 그 토큰을 조직도 안에 넣지 않습니다. + +## 1. 원칙 + +1. **승인된 기본 디자인을 그대로 씁니다.** 카드·회사색·그룹 제목·연결선·Typography·간격·배치를 바꾸지 않습니다. 기본값 자체를 바꾸려면 사용자 확인이 먼저입니다. +2. **커스터마이징은 공개 CSS 입력(`--hm-orgchart-*`)만**으로 합니다(외부 테마). 이는 기본값 변경과 구분해 보고합니다. +3. 새 카드·연결선·노드 디자인을 만들지 않습니다. Shadow DOM 내부 DOM을 스크립트로 바꾸지 않습니다. +4. 조직도 바깥에 새 UI가 필요하고 참고할 `--hm-orgchart-*` 값이 없으면 HMDesign 공통 규칙(Font Weight 400/500/700, Light/Dark 없음, 전역 CSS 금지)과 조화되게 구성하고, 토큰에 없는 값은 보고에 "AI 구성 값 — 디자인 확인 필요"로 적습니다([AI_USAGE.md §0](./AI_USAGE.md)). +5. `resolved-*`, `current-*`, `expanded-primary`, `expanded-card-primary`는 내부 계산 변수입니다. 쓰지 않습니다. + +## 2. 승인된 기본값 + +| 항목 | 값 | +|---|---| +| Auto(Expanded)·Chart Only 캔버스 | 흰색 `#FFFFFF` | +| Fixed readOnly / Full Composition 배경 | `#F5F8FB`(`bg-content` 기본) | +| 회사 메인 컬러(Auto 그룹 제목·카드 강조) | `hanmac` 한맥기술 `#CB2E28`, `saman` 삼안 `#F08300`, `jangheon-industry` 장헌산업 `#4580A6`, `jangheon` 장헌 `#1D418D`, `ptc` 피티씨 `#84338E`, `halla` 한라산업개발 `#0068B7`, `baron` 바론컨설턴트 `#0C367F` | +| 그룹 제목 글자 | 흰색 | +| Auto 연결선 | `#738399`(`expanded-line-color` 기본) | +| Fixed 부서 Gradient | 6종(`business-management`, `business-planning`, `talent-growth`, `integrated-system`, `design-planning`, `solution-sales`). 회사색과 별개 — 서로 대체하지 않음 | +| 글꼴 | Noto Sans KR(`--hm-orgchart-font-family`로 override 가능). 호스트가 font-face 등록 | +| Weight | 400 / 500 / 700만 | + +**접근성 미해결(숨기지 않음):** 삼안 `#F08300`(흰 글자 약 2.64:1), 장헌산업 `#4580A6`(약 4.29:1)은 WCAG AA 4.5:1 미달입니다. 디자인은 승인됐지만 접근성 준수 판정은 NOT VERIFIED입니다. + +## 3. 공개 CSS 입력 (`--hm-orgchart-` 접두사) + +| 입력(접두사 생략) | 범위 | +|---|---| +| `fixed-canvas-background`, `expanded-canvas-background` | Fixed composition·stage / Auto 내부 viewport 배경(서로 독립) | +| `bg-surface`, `bg-content`, `bg-subtle`, `bg-brand` | 캔버스·내용·보조·브랜드 배경 | +| `fg-primary`, `fg-secondary` | 글자 | +| `stroke-default`, `stroke-input-default`, `stroke-input-focus` | 테두리·Focus | +| `accent-color`, `on-accent`, `action-primary`, `on-action-primary` | 강조·액션 | +| `company-{id}`, `company-{id}-secondary-{n}` | Auto 회사 제목·소속 카드 강조선(7개 ID) | +| `group-title-background`, `group-title-color`, `group-border` | 그룹 제목·Fixed 조직 카드 상단 Border | +| `card-background`, `card-color`, `card-position-color`, `card-border`, `card-accent` | 카드 | +| `leader-card-background`, `top-leader-card-background` | Auto 그룹장·대표자 카드 | +| `card-hover-background`, `card-focus-color` | Hover·Focus | +| `expanded-line-color`, `fixed-line-color` | 연결선 | +| `gradient`, `border`, `department-color`, `{department}-gradient` / `-border` / `-department-color` / `-card-background` / `-card-color` | Fixed 부서 | +| `status-title-*`, `status-card-*`, `dispatched-*`, `on-leave-*` | 파견·휴직 | +| `dialog-background`, `dialog-color`, `dialog-border`, `dialog-close-color`, `dialog-close-hover-background`, `dialog-focus-color` | Core 기본 팝업 | +| `font-family` | 글꼴 | + +### 적용 방법 (둘 중 하나) + +```css +/* A. 호스트 상속: 기본 stylesheetUrls.core 유지 + 컨테이너 class (변수만 Shadow DOM을 통과) */ +.app-orgchart-theme { + --hm-orgchart-company-hanmac: #2457a7; + --hm-orgchart-expanded-line-color: #249a79; +} +``` + +```css +/* B. Shadow DOM 안 외부 테마 파일: 기본 CSS를 먼저 import하고 :host에 override → 이 파일 URL을 stylesheetUrls.core로 */ +@import "@hm-design/org-chart/style.css"; /* Vite. 일반 서버는 복사한 style.css URL */ +:host { --hm-orgchart-card-background: #f4f8ff; } +``` + +- 호스트의 `.hm-orgchart-…` 같은 selector는 Shadow DOM 안에 닿지 않습니다. 내부 selector 수정이 꼭 필요하면 B 파일 안에 작성합니다. +- `stylesheetUrls.core`를 변수만 있는 파일로 바꾸면 기본 레이아웃이 사라집니다(B는 반드시 기본 CSS import 포함). +- Fixed의 PNG·SVG 카드·로고 이미지 내부 색은 CSS로 바뀌지 않습니다. +- Web Dialog(`/hm-dialog`) 팝업은 Shadow DOM 밖 Web 컴포넌트라 `dialog-*` 입력이 아니라 Web Theme를 따릅니다. + +## 4. 레이아웃·동작 기준 + +| 항목 | Fixed | Auto(Expanded) | +|---|---|---| +| 배치 | 승인된 Workdesk 구성, 비례 축소 | 데이터 기반 가변 계층(TB / LR / Hybrid) | +| Zoom / Pan | 없음 | 5–300%(`zoom`), Ctrl/⌘+휠(기본) 또는 일반 휠(`wheelZoom='direct'`), 빈 공간 Drag Pan, 방향키 Pan | +| Chart Only | **미지원** | `presentationMode='chart-only'` | +| 접기 | — | 그룹 제목 클릭(native toggle, `aria-expanded`) | +| 직원 팝업 | Core 팝업 | Core / HM Dialog / 어댑터 / 없음 | +| 이동 편집 | 없음 | `dragDropEnabled` (기본 OFF) | + +- Chart Only 초기 Fit: 전체 Bounds를 16px 여백 안에 가로·세로 중앙 배치, 100% 이상 확대하지 않음. 사용자가 조작한 뒤에는 크기가 바뀌어도 다시 Fit하지 않음. +- 캔버스 높이는 container 높이(정해지지 않으면 최소 320px). Chart Only 컴포넌트의 높이는 호스트가 정합니다. +- 조직도 바깥(제목·필터·패널)은 OrgChart 디자인이 아닙니다. Full Page에서는 Web 등 선택한 패키지의 규칙을 따릅니다. diff --git a/packages/org-chart/package.json b/packages/org-chart/package.json index d767c41..6b1bdd6 100644 --- a/packages/org-chart/package.json +++ b/packages/org-chart/package.json @@ -11,7 +11,7 @@ "./engine.css": "./dist/engine.css", "./browser": "./dist/orgchart.browser.js" }, - "files": ["dist", "README.md"], + "files": ["dist", "ai", "README.md"], "sideEffects": ["**/*.css"], "scripts": { "typecheck": "tsc -p tsconfig.json", diff --git a/packages/sw/.gitattributes b/packages/sw/.gitattributes new file mode 100644 index 0000000..604c258 --- /dev/null +++ b/packages/sw/.gitattributes @@ -0,0 +1,4 @@ +# Package files are LF on every checkout so dist, ai/ and the tarball are byte-identical (core.autocrlf=true included). +* text=auto eol=lf +*.png binary +*.svg text eol=lf diff --git a/packages/sw/README.md b/packages/sw/README.md new file mode 100644 index 0000000..4e81dc4 --- /dev/null +++ b/packages/sw/README.md @@ -0,0 +1,85 @@ +# @hm-design/sw + +HM Design System의 SW(설치형·도면 SW) 전용 React 컴포넌트 패키지입니다(0.2.0). `@hm-design/ui`와 독립적으로 빌드·배포·사용하며 서로 의존하지 않습니다. 공개 API의 기준은 패키지에 포함된 [ai/COMPONENT_CATALOG.md](./ai/COMPONENT_CATALOG.md)와 `dist/index.d.ts`입니다. 이 README는 요약입니다. + +## 설치·Import + +```tsx +import { SWHeader } from "@hm-design/sw" +import "@hm-design/sw/styles.css" // 앱 진입점에서 한 번 + + +``` + +- 진입점은 `@hm-design/sw`(JS·타입)와 `@hm-design/sw/styles.css` 두 개뿐입니다. `dist/components/...` 같은 내부 경로는 공개 API가 아닙니다. +- Peer: `react`, `react-dom` `^19.0.0`. 런타임 dependency는 없고, SVG·PNG 자산은 JS에 data URI로 포함됩니다. CSS는 자동 import되지 않으며 전역 선택자(`html`, `body`, `*`)를 쓰지 않습니다. +- Registry에는 아직 게시하지 않았습니다. 소비 프로젝트는 HMDesign 저장소를 Git Submodule + npm Workspace로 연결하거나 `npm pack`으로 만든 tarball을 설치합니다. +- 패키지 내용: `dist/`(`index.js`·`index.d.ts`·`styles.css`·`build-info.json` — 출처 Commit·도구 버전), `ai/`(AI 코딩 도구용 안내·예제), `README.md`, `package.json`. + +## 글꼴·테마 + +- SW 기본 글꼴은 **Noto Sans KR**입니다(`--hm-sw-header-font-family: "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif`, 2026-10-20 확정, Figma의 Dotum은 의도적으로 대체). 패키지는 글꼴 파일을 포함하지 않으므로 앱이 Noto Sans KR 400 / 500 / 700을 로드합니다. +- Weight(400 / 700 적용 범위)는 사용자 확정값입니다. 상세는 [ai/AI_USAGE.md](./ai/AI_USAGE.md) §2, [ai/DESIGN_RULES.md](./ai/DESIGN_RULES.md) §3. +- `SWHeader` 밖에서 하위 컴포넌트를 쓰면 ``로 감쌉니다. `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`·`SWFooter`·`SWFooterCommandLine`은 자기 루트에 SW 범위를 가집니다. +- 토큰(`--hm-sw-*`) 변경은 가장 바깥 SW 범위(``) 한 곳에서 합니다. Light/Dark 분기는 없습니다. 방법은 [ai/AI_USAGE.md](./ai/AI_USAGE.md) §3.1, 예제 [ExampleJ-Theme.tsx](./ai/examples/ExampleJ-Theme.tsx). + +## SW 모드 + +한 화면에는 하나의 모드만 씁니다(Header 하나). 모드 선택 기준은 [ai/AI_USAGE.md](./ai/AI_USAGE.md) §0입니다. + +| 모드 | 용도 | 컴포넌트 | +|---|---|---| +| SW 일반 모드 | 도면 **편집** SW 상단·하단(Figma 이지빔-SW `26:8944`, 49px Header) | `SWHeader`·개별 컨트롤, `SWPopup`, `SWToolButton`/`SWToolGroup`, 로고 클릭 메뉴, `SWFooter` | +| SW 뷰어 모드 | 도면 **보기** 화면 상단(참고 DWG/DXF 뷰어 실측, 52px Header) | `SWViewerHeader`, `SWViewerMenu`, `SWViewerPanel`과 패널 컨트롤 | + +## 공개 컴포넌트 (요약) + +| 영역 | 컴포넌트 | 안내 | +|---|---|---| +| 완성형 Header | `SWHeader`(문서·레이어·색상·선/문자/치수스타일 Dropdown, 속성Bar·속성창, 반응형 More, `controls`·`hiddenControls`·`menuOrder`·`documentOpenPlacement`·`leading`·`tools`) | 카탈로그 §1 | +| 개별 컨트롤 | `SWHeaderHome`, `SWHeaderDocumentTitle`, `SWHeaderLayerMenu`, `SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu`, `SWHeaderInput`, `SWHeaderProperties`, `SWHeaderPropertyBar`, `SWHeaderPropertyPanel`, `SWHeaderActions`, `SWHeaderWindowControls` 등 | 카탈로그 §2 | +| Popup | `SWPopup`(속성창 프레임 + 자유 `children`) + `SWPopupSection` / `SWPopupRow`, 레이어·색상·선스타일 행 `SWPopupPropertyRow`, 게이지바 `SWSlider`(`appearance` `"panel"` / `"property"`), 선택 목록 `SWSelect`. SWHeader 필드 Dropdown은 Header 전용이라 Popup에 넣지 않습니다 | 카탈로그 §3 | +| 도구 막대 | `SWToolButton`(`text`·`pill`·`document`), `SWToolGroup`(`selection="single"` = Model/Layout 탭) | 카탈로그 §4 | +| 로고 클릭 메뉴 | `SWHeader`의 `homeMenu` + `SWHomeMenu` / `SWHomeMenuSection` / `SWHomeMenuItem` / `SWRecentFiles` / `useSWHomeMenuClose`(일반 모드 전용) | 카탈로그 §5 | +| 뷰어 모드 | `SWViewerHeader`, `SWViewerHeaderButton`, `SWViewerMenu`, `SWViewerIcon`, `SWViewerPanel`, `SWViewerSection`, `SWViewerField`, `SWViewerSwitch`, `SWViewerSlider`, `SWViewerInput`, `SWViewerButton`, `SWViewerBadge`, `SWViewerHint`, `SWViewerStatus` | 카탈로그 §9, [ai/VIEWER.md](./ai/VIEWER.md) | +| Footer | `SWFooter`, `SWFooterLayoutTabs`, `SWFooterCommandLine`과 부품 `SWFooterSideButton`·`SWFooterAuxGroup`·`SWFooterAuxButton`·`SWFooterToolButton`·`SWFooterAddSlot`·`SWFooterGuide`·`SWFooterMenu`(일반 모드 전용) | 카탈로그 §10, [ai/FOOTER.md](./ai/FOOTER.md) | +| 테마 | `SWTheme` | 위 "글꼴·테마" | + +로고·파일 처리·도면 렌더링·명령 실행은 각 프로그램이 Props와 Callback으로 담당합니다. 패키지에는 로고·메뉴 항목·명령이 없습니다. + +## AI 코딩 도구용 안내 + +다른 프로젝트의 AI 코딩 도구는 설치된 패키지의 `ai/` 폴더를 먼저 읽습니다: [AI_GUIDE.md](./ai/AI_GUIDE.md)(HMDesign 공통 진입점) → [AI_USAGE.md](./ai/AI_USAGE.md)(모드 선택·작업 순서·Import 규칙) → [COMPONENT_CATALOG.md](./ai/COMPONENT_CATALOG.md)(공개 API) → [DESIGN_RULES.md](./ai/DESIGN_RULES.md)(토큰·상태) → [COMPOSITION_PATTERNS.md](./ai/COMPOSITION_PATTERNS.md)(조합) → [VIEWER.md](./ai/VIEWER.md)·[FOOTER.md](./ai/FOOTER.md) → [examples/](./ai/examples)(공개 API만 쓰는 예제 A~J. B·F 파일명의 "Viewer"는 과거 이름이며 일반 모드 예제, 뷰어 모드는 H). + +## Storybook (HMDesign 저장소) + +SW Story는 40개입니다(`SW/Header` 20 · `SW/Footer` 6 · `SW/Popup` 3 · `SW/Viewer` 10 · `SW/Theme` 1). 이 중 11개는 `verification` 태그라 사이드바에서 기본으로 숨겨지며 직접 URL·태그 필터로 엽니다. + +- `SW/Header`: Overview, Interactive States, Logo Slot, Document Dropdown, Responsive More, Dropdown(개별 컨트롤 조합), Document Open, Hidden Sub Controls, Home Menu, Home Menu · 단독 사용 · 조합형 (+ verification 10) +- `SW/Footer`: 전체 Footer · 실제 조합, 도구 그룹별 표시, 도구 및 메뉴 변경 예제, 화면 폭 변화, 개별 부품 (+ verification 1) +- `SW/Popup`: Custom Content, Multiple Popups, Property Panel · 4개 비교(Story ID `sw-header--property-panel-compare`) +- `SW/Viewer`: Viewer Header, Menu Groups, Item States, Header + Dropdown, Settings Popup, Popup Content Variants, Variable Size Popups, Responsive Widths, SWHeader vs Viewer Header, Logo +- `SW/Theme`: Theme Inheritance + +## 빌드 (HMDesign 저장소) + +```bash +npm run build -w @hm-design/sw +npm run typecheck -w @hm-design/sw +``` + +`dist/styles.css`는 `src/theme/*.css`에서 만들어집니다. dist를 직접 편집하지 않습니다. + +## 저장소 문서 + +아래 문서는 HMDesign 저장소에만 있고 npm 패키지에는 포함되지 않습니다(저장소 루트 기준 경로). + +- 사용 가이드 `docs/sw/sw-header-usage.md`, 디자인 명세 `docs/sw/sw-header-design-spec.md` +- 뷰어 모드 기준 `docs/sw/sw-viewer-mode-2026-10-19.md`, Footer Figma 매핑 `docs/sw/sw-footer-figma-mapping-2026-10-20.md` +- 날짜별 구현·검증 기록 `docs/sw/*-YYYY-MM-DD.md`(작성 당시 기록이며, 현재 기준은 이 README와 `ai/` 문서) + +## 변경 요약 + +- **2026-10-20:** `SWSlider`, `SWSelect`, `SWPopupPropertyRow` 추가(Popup 레이어·색상·선스타일 = 속성창 picker). `SWFooter*` 추가. SW 기본 글꼴 Noto Sans KR 확정, 같은 날의 Dotum 기본값 철회. +- **2026-10-19:** 0.2.0 통합 개선 — `SWPopup` / `SWPopupSection` / `SWPopupRow`, `SWToolButton` / `SWToolGroup`, `SWHeader`의 `documentOpenPlacement`·`leading`·`tools`, 실측 More. 로고 클릭 메뉴(`SWHomeMenu` 계열), 뷰어 모드(`SWViewer*`). AI 안내(`ai/`) 포함. +- **2026-10-16:** 색상·선/문자/치수스타일 Dropdown, 속성Bar·속성창(`SWHeaderPropertyBar`·`SWHeaderPropertyPanel`), `controls`·`hiddenControls`·`menuOrder`, K 가이드, 창 이동 Hover Motion(1.4초). diff --git a/packages/sw/ai/AGENTS_SNIPPET.md b/packages/sw/ai/AGENTS_SNIPPET.md new file mode 100644 index 0000000..cd3372d --- /dev/null +++ b/packages/sw/ai/AGENTS_SNIPPET.md @@ -0,0 +1,16 @@ +## HMDesign 디자인 시스템 + + + +HMDesign 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart | 혼합(영역별로 적기, SW 영역은 모드까지) + +화면·컴포넌트를 구현하거나 수정하기 전에 다음을 지킨다. + +1. 설치된 HMDesign 패키지의 공통 가이드를 먼저 읽는다: `node_modules/@hm-design/<설치된 패키지>/ai/AI_GUIDE.md` (`ui`, `sw`, `org-chart`, `org-chart-react` 중 아무 사본이나 내용이 같다). +2. 위 "사용 유형"이 없고 요청으로도 정할 수 없으면 코드 작성 전에 "어떤 HMDesign 디자인 시스템을 사용하시겠습니까? 1. Web 2. SW (일반 모드 / 뷰어 모드) 3. OrgChart 4. 혼합 사용"을 묻는다. SW인데 모드(일반/뷰어)가 불명확하면 "SW 화면을 어떤 모드로 만들까요? 1. SW 일반 모드 2. SW 뷰어 모드"를 묻는다(근거는 `@hm-design/sw/ai/AI_USAGE.md` §0). 정해져 있으면 다시 묻지 않는다. +3. 선택한 패키지의 `ai/AI_USAGE.md` → `COMPONENT_CATALOG.md` → `DESIGN_RULES.md` → `COMPOSITION_PATTERNS.md` 순으로 필요한 절을 읽는다. + - Web: `node_modules/@hm-design/ui/ai/` + - SW: `node_modules/@hm-design/sw/ai/` (뷰어 모드는 `AI_USAGE.md` §0 다음 `VIEWER.md`) + - OrgChart: `node_modules/@hm-design/org-chart/ai/` (React는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`도) +4. 선택한 유형·모드 안에서 기존 컴포넌트 → Props → 조합 → (없는 부분만) 그 모드의 토큰·스타일로 신규 → (참고 값도 없으면) HMDesign 공통 규칙과 조화되게 구성하고 "AI 구성 값"으로 보고하는 순서를 지킨다. 패키지 파일 수정·내부 경로 import·구현 복사는 하지 않는다. +5. Web / SW 일반 / SW 뷰어 / OrgChart 스타일을 영역별로 분리하고(한 SW 화면에 일반·뷰어 컴포넌트를 섞지 않음), 완료 후 AI_GUIDE의 결과 보고 형식으로 유형·모드, 재사용·신규·토큰·AI 구성 값·검증·NOT VERIFIED를 보고한다. diff --git a/packages/sw/ai/AI_GUIDE.md b/packages/sw/ai/AI_GUIDE.md new file mode 100644 index 0000000..a9a6b58 --- /dev/null +++ b/packages/sw/ai/AI_GUIDE.md @@ -0,0 +1,275 @@ +# HMDesign AI 작업 가이드 — 공통 진입점 + +> 이 파일은 HMDesign 패키지(`@hm-design/ui`, `@hm-design/sw`, `@hm-design/org-chart`, `@hm-design/org-chart-react`)의 `ai/AI_GUIDE.md`에 **같은 내용으로** 들어 있습니다. 원본은 HMDesign 저장소 `docs/ai/AI_GUIDE.md`이며 패키지 사본은 `npm run sync:ai-docs`로 갱신합니다. 사본을 직접 고치지 않습니다. + +사용자가 "HMDesign 패키지를 기준으로 화면을 구현해 주세요", "HMDesign SW로 화면을 만들어 주세요"처럼 요청하면 AI 코딩 도구는 이 파일의 1~7단계를 순서대로 따릅니다. 이 문서와 각 패키지의 `ai/` 문서는 실제 공개 API·CSS에서 확인한 내용만 적습니다. 여기에 없는 컴포넌트·Props·토큰은 없는 것으로 취급합니다. + +## 0. 읽는 순서 + +1. **이 파일**(어느 패키지의 사본이든 같음) +2. 선택한 패키지의 `ai/AI_USAGE.md` → `ai/COMPONENT_CATALOG.md` → `ai/DESIGN_RULES.md` → `ai/COMPOSITION_PATTERNS.md` (SW 뷰어 모드는 `AI_USAGE.md` §0 다음에 `ai/VIEWER.md`를 먼저 읽고 카탈로그의 뷰어 절을 봅니다) +3. API가 의심스러우면 그 패키지의 `dist/*.d.ts`(공개 진입점에서 export되는 것만) + +| 유형 | 패키지 | 지침 위치(설치 후) | JS 진입점 | CSS | +|---|---|---|---|---| +| ① Web UI | `@hm-design/ui` | `node_modules/@hm-design/ui/ai/` | `@hm-design/ui`, `@hm-design/ui/theme` | `@hm-design/ui/tailwind.css` + `@hm-design/ui/theme.css`(Tailwind CSS 4 필요), 선택 `@hm-design/ui/dashboard-status.css` | +| ② SW UI — 일반 모드 | `@hm-design/sw` | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 모드 선택 → 일반 모드 문서) | `@hm-design/sw` | `@hm-design/sw/styles.css` | +| ② SW UI — 뷰어 모드 | `@hm-design/sw`(같은 패키지) | `node_modules/@hm-design/sw/ai/` (`AI_USAGE.md` §0 → `VIEWER.md`) | `@hm-design/sw` | `@hm-design/sw/styles.css`(같은 파일) | +| ③ OrgChart | `@hm-design/org-chart`(Core) + React면 `@hm-design/org-chart-react` | `node_modules/@hm-design/org-chart/ai/` (React 어댑터 안내는 `node_modules/@hm-design/org-chart-react/ai/AI_USAGE.md`) | `@hm-design/org-chart`, `@hm-design/org-chart-react`, 선택 `@hm-design/org-chart-react/hm-dialog` | `@hm-design/org-chart/engine.css`, `@hm-design/org-chart/style.css`(URL로 전달 — Shadow DOM 안에 로드) | +| 기타 | `@hm-design/center-graphic` | AI 지침 없음. 패키지 `README.md`만 | `@hm-design/center-graphic` | 자동 import | + +모든 패키지는 서로 독립입니다(`@hm-design/org-chart-react`만 Core에 의존, `@hm-design/ui`는 `/hm-dialog`를 쓸 때만 선택 peer). React·React DOM `^19`는 peer입니다. + +## 1단계. 사용 목적 확인 + +화면 구현 요청을 받으면 코드 작성 전에 **사용 유형**을 정합니다. 유형은 다음 넷이고, SW는 다시 두 모드로 나뉩니다. + +1. Web +2. SW — **SW 일반 모드**(편집용: `SWHeader`, `SWPopup` …) / **SW 뷰어 모드**(보기 전용: `SWViewerHeader`, `SWViewerMenu`, `SWViewerPanel` …) +3. OrgChart +4. 혼합 사용(영역마다 위 유형 하나) + +다음 순서로 판단하고, **판단되면 다시 묻지 않습니다.** + +1. 소비 프로젝트의 `AGENTS.md`·`CLAUDE.md` 등에 `HMDesign 사용 유형:` 설정이 있으면 그대로 따릅니다(§9). 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: …)`입니다. 값이 `SW`뿐이면 유형은 정해진 것이고 모드만 아래 4번으로 정합니다. +2. 사용자 요청이 유형을 분명히 말하면 그대로 따릅니다. + - Web: 웹 화면, 관리자·업무 화면, 목록·검색·Form, 대시보드, GNB/LNB, Dialog, Table … + - SW: 데스크톱 SW, 도면·CAD, SW Header, 툴바, 레이어/색상/선스타일, 속성창·SW Popup, 뷰어 … + - OrgChart: 조직도, 조직 계층·직원 카드, 조직 JSON/CSV/Excel 시각화 … + - 둘 이상이 함께 나오면 ④ 혼합(예: "업무 화면 안에 조직도" = Web + OrgChart). +3. 위로 정할 수 없으면 코드 작성 전에 **그대로** 묻습니다. + +> 어떤 HMDesign 디자인 시스템을 사용하시겠습니까? +> +> 1. Web +> 2. SW (일반 모드 / 뷰어 모드) +> 3. OrgChart +> 4. 혼합 사용 + +4. **SW가 정해졌거나 포함됐는데 모드가 불명확하면** 코드 작성 전에 묻습니다. 설정 값(`SW 일반`/`SW 뷰어`)이나 요청이 모드를 분명히 말하면 묻지 않습니다. 판단 근거와 질문 문구는 `@hm-design/sw/ai/AI_USAGE.md` §0을 따릅니다. 유형 질문이 필요한 경우에는 같은 메시지에서 2번 선택 시의 모드도 함께 묻습니다(한 번에 끝냄). + +> SW 화면을 어떤 모드로 만들까요? +> +> 1. SW 일반 모드 — 편집용 Header(`SWHeader`)·속성창·SW Popup +> 2. SW 뷰어 모드 — 보기 전용 Header(`SWViewerHeader`)·뷰어 메뉴·뷰어 패널 + +- "HMDesign SW로 화면을 만들어 주세요"처럼 SW만 말하고 모드 근거가 없으면 유형은 SW로 확정하고 4번의 모드 질문만 합니다. +- `package.json`에 설치된 패키지가 하나뿐이어도 그것만으로 유형을 확정하지 않습니다(설치가 덜 된 상태일 수 있음). 요청 내용과 맞을 때만 근거로 씁니다. SW 모드도 같은 패키지이므로 설치 상태로는 판단하지 않습니다. +- 정해진 유형·모드는 결과 보고(7단계)에 적고, 작업 중에 다른 유형·모드의 컴포넌트·스타일을 임의로 섞지 않습니다(5단계). +- 혼합을 고르면 영역별 패키지(예: "페이지 = Web, 가운데 영역 = OrgChart")를 확인합니다. SW 영역이 있으면 그 영역의 모드(일반/뷰어)까지 정합니다. +- **OrgChart가 포함되고 생성 방식이 없으면** 같은 메시지에서 다음도 묻습니다(이미 말했으면 묻지 않음): "조직도만 기존 페이지에 삽입할까요(Chart Only), 아니면 레이아웃까지 구성한 새 페이지 전체를 생성할까요(Full Page)?" 상세는 `@hm-design/org-chart/ai/AI_USAGE.md` §1. +- 선택한 패키지가 설치되어 있지 않으면 설치가 필요하다고 보고합니다. 다른 HMDesign 패키지나 임의 라이브러리로 대신하지 않습니다. + +## 2단계. 패키지 분석 + +1. `node_modules/@hm-design/<패키지>/package.json`의 `version`·`exports`·`peerDependencies`를 확인합니다. `exports`에 없는 경로(`src/...`, `dist/components/...`)는 import하지 않습니다. +2. 그 패키지의 `ai/` 문서를 §0 순서로 읽습니다. 필요한 절만 읽고 전체 `dist`를 훑지 않습니다. +3. 카탈로그와 실제 `dist/index.d.ts`가 다르면 **`.d.ts`가 기준**입니다. 차이를 결과 보고에 적습니다. +4. 소비 프로젝트의 기존 CSS 진입점·폰트·빌드 도구(Vite 등)·이미 쓰는 디자인 시스템을 확인합니다. 기존 프로젝트의 디자인 시스템을 바꾸지 않습니다. + +## 3단계. 화면 분석 + +요청 화면을 항목으로 나누고 항목마다 판단을 기록합니다. + +| 요청 항목 | 판단 | 근거(카탈로그의 실제 이름) | +|---|---|---| +| 예: 상단 메뉴 | 재사용 | Web `GNB` + `GNBMobileMenu` | +| 예: 레이어 선택(SW 일반) | 재사용 | SW `SWHeaderLayerMenu` | +| 예: 상단 메뉴(SW 뷰어) | Props 설정 | SW `SWViewerHeader`의 `groups` | +| 예: 검색 상자(SW 일반) | 신규 | SW 카탈로그에 없음 → `SWHeaderInput` 재사용 + 일반 모드 토큰 | + +판단 값은 **재사용**(그대로) / **Props 설정**(기존 Variant·Props) / **조합**(기존 컴포넌트 배치) / **신규**(소비 프로젝트에 최소 구현) 중 하나입니다. + +## 4단계. UI 구현 + +우선순위(위가 먼저): + +1. 선택 패키지의 기존 컴포넌트·Pattern을 그대로 사용 +2. 기존 Variant / Props / Callback으로 해결 +3. 기존 컴포넌트 조합(배치용 CSS만 소비 프로젝트에 작성) +4. 조합으로 안 되는 부분만 **소비 프로젝트에** 새로 구현 — 아래 "없는 컴포넌트 처리 3단계" + +모든 단계는 **1단계에서 정한 유형·모드 안에서만** 찾습니다. SW 뷰어 모드는 뷰어 컴포넌트(`SWViewer*`)를, SW 일반 모드는 일반 컴포넌트(`SWHeader`·`SWPopup` …)를 먼저 씁니다. 다른 모드에 같은 역할의 컴포넌트가 있어도 가져오지 않습니다. + +### 없는 컴포넌트 처리 3단계 + +| 단계 | 조건 | 할 일 | 결과 보고 | +|---|---|---|---| +| ① 재사용 | 선택 유형·모드에 컴포넌트·Variant·Props·조합이 있음 | 그대로 사용(위 1~3) | 재사용 / Props 설정 / 조합 | +| ② 같은 모드 스타일로 신규 | 컴포넌트는 없지만 그 모드의 토큰·확인값·상태 표현이 있음 | 소비 프로젝트에 최소 구현. 그 유형·모드의 토큰과 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 크기·색·상태 표현만 읽고, 안쪽에는 그 모드의 공개 컴포넌트를 재사용 | 신규 · 읽은 토큰 목록 | +| ③ HMDesign과 조화되는 새 스타일 | ②로 참고할 토큰·확인값이 없음 | HMDesign 공통 규칙(아래)과 선택 유형·모드의 가장 가까운 토큰을 기준으로 새 스타일을 구성 | 신규 · **"AI 구성 값 — 디자인 확인 필요"** 목록(속성·값·이유) | + +- 토큰·확인값이 있으면 ②에서 반드시 그것을 씁니다. ③은 참고할 값이 정말 없을 때만이며, ③에서 만든 값은 확정 디자인이 아니라 확인 대상입니다. 화면 인상을 크게 바꾸는 값(주요 색·Header 높이 등)이 필요하면 구현 전에 사용자에게 먼저 확인합니다. +- 유형·모드별 구체 토큰과 예는 각 패키지 `ai/AI_USAGE.md`에 있습니다. + +규칙: + +- `node_modules` 안 패키지 파일을 수정하지 않습니다. 패키지 `dist` 구현이나 내부 CSS 블록을 복사해 같은 컴포넌트를 다시 만들지 않습니다. +- 이미 있는 컴포넌트와 같은 역할의 컴포넌트를 새로 만들지 않습니다(예: Web에 `Dialog`가 있는데 자체 Modal 작성 금지). +- 토큰·확인값이 있는 속성에 새 값을 만들지 않습니다. 색·크기·간격·radius·그림자는 각 패키지 `DESIGN_RULES.md`(SW 뷰어는 `VIEWER.md`도)의 토큰·확인값을 씁니다. 값이 없을 때만 위 ③으로 구성하고 "AI 구성 값"으로 보고합니다(추측한 값을 확정값처럼 쓰지 않음). +- 공통: Font Weight는 400 / 500 / 700만 씁니다(600 없음). Light/Dark 분기를 만들지 않습니다. 새 컴포넌트 CSS에 `html`·`body`·`*` 전역 규칙을 넣지 않습니다. 새 class는 소비 프로젝트 접두사(예: `app-`)를 씁니다. +- 요청에 없는 메뉴·통계·설명·다운로드·외부 API·AI 입력 UI를 추가하지 않습니다. 필요해 보이면 제안으로만 보고합니다. + +### 없는 UI를 같은 스타일로 만들 때 확인할 항목 + +신규 항목마다 아래를 선택 유형·모드의 문서에서 찾아 그대로 적용합니다(②). 찾을 수 없는 항목은 ③으로 구성하고 "AI 구성 값 — 디자인 확인 필요"로 보고합니다. + +| 항목 | Web(`@hm-design/ui`) | SW 일반 모드(`@hm-design/sw`) | SW 뷰어 모드(`@hm-design/sw`) | OrgChart | +|---|---|---|---|---| +| 토큰·CSS 변수 | `--hm-sem-*`, `--hm-color-*`, `--hm-radius-*`(`:root`) | `--hm-sw-header-*`, `--hm-sw-property-*`(`SWTheme` 범위) | `--hm-sw-viewer-*` + 두 Header가 공유하는 `--hm-sw-header-document-*`·`object-*`·`property-*`(SW 범위) | `--hm-orgchart-*` 공개 입력(Shadow DOM 상속) | +| 색·Typography | DESIGN_RULES §2·§3 | DESIGN_RULES §2·§3 | VIEWER.md `SWViewerHeader`·디자인 변경 절 | DESIGN_RULES §2·§3 | +| 크기·여백 | DESIGN_RULES §4 | DESIGN_RULES §1 | VIEWER.md 디자인 변경 절(52px Header 등 실측값) | 카드·간격 변경 금지(승인 디자인) | +| Border·Radius·배경·그림자 | DESIGN_RULES §2·§4 | DESIGN_RULES §2·§8 | VIEWER.md `SWViewerPanel` 절(프레임은 SWPopup과 같음) | 공개 입력만 | +| 아이콘 | `lucide-react`(패키지 의존성) | 패키지 내장 SVG만, 새 아이콘은 사용자 제공 | 프로그램 제공 16px `currentColor` 아이콘, 외곽선은 `SWViewerIcon` | Core 내장 | +| 스크롤바 | `ScrollArea`(Radix), DESIGN_RULES §6 | 전용 디자인 없음 — 브라우저 기본(AI_USAGE §2) | 전용 디자인 없음 — 패널 본문 스크롤은 `SWViewerPanel` | Core 내부 Zoom/Pan | +| Hover / Active / Focus / Disabled | DESIGN_RULES §5 | DESIGN_RULES §4 | VIEWER.md `SWViewerHeader` 절 상태 표현 | Core 내장 | +| Popup·Panel | `Dialog`·`AlertDialog`·`Sheet`·`Drawer`·`Popover` | `SWPopup` + `SWPopupSection`/`SWPopupRow` | `SWViewerPanel`(+ `modal`) + `SWViewerSection`/`SWViewerField` | Core 팝업 / HM Dialog / 어댑터 | +| 동작·키보드 | Radix 동작 유지 | 카탈로그 "공통 키보드" | VIEWER.md `SWViewerMenu`·`SWViewerPanel` 키보드 | Core 키보드(Pan, Alt+M 이동 등) | + +## 5단계. 패키지별 디자인 분리 (혼합 사용 포함) + +각 패키지의 스타일 범위는 다음과 같습니다(실제 CSS 기준). + +| 패키지 | 스타일이 적용되는 범위 | 주의 | +|---|---|---| +| Web | `theme.css`의 토큰은 `:root, [data-hm-theme]`. `tailwind.css`는 Tailwind base에서 `*`(border·outline), `body`(배경·글자), `html`(글꼴)을 **문서 전체에** 적용. 앱이 import하는 `tailwindcss`의 Preflight도 전역 | Web CSS를 넣은 문서에서는 다른 영역에도 전역 초기화가 적용됨 | +| SW(일반·뷰어 공통) | 토큰은 `.hm-sw-header`와 `.hm-sw-theme`에만 정의(뷰어 토큰 `--hm-sw-viewer-*`도 같은 범위). 전역 선택자 없음. `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`은 자기 root에 `hm-sw-theme`를 가짐. 토큰 기본값은 가장 바깥 SW 범위에서만 선언되고 안쪽 SW 범위는 상속(변경은 가장 바깥 범위의 `style`, SW `AI_USAGE.md` §3.1) | 일반 모드의 Header 밖 SW 부품은 반드시 `` 안 | +| OrgChart | Core가 자기 open Shadow DOM에만 CSS 로드. 호스트 CSS selector는 안쪽에 닿지 않고 **Custom Property 상속만** 통과 | 호스트 class로 카드 모양을 바꾸려 하지 않음 | + +혼합 규칙: + +1. 영역마다 하나의 패키지를 정하고 그 영역의 신규 UI는 그 패키지의 토큰만 읽습니다. Web 토큰(`--hm-sem-*`)을 SW 영역에, SW 토큰(`--hm-sw-*`)을 Web 영역에 쓰지 않습니다. OrgChart 내부는 `--hm-orgchart-*`만 씁니다. 글꼴도 같습니다: SW 기본 글꼴은 Noto Sans KR(`--hm-sw-header-font-family`, 2026-10-20 확정, Dotum 기본값 철회), Web 기본 글꼴도 Noto Sans KR(`--hm-font-family-base`)이지만 토큰은 각자 쓰고, OrgChart는 자기 설정을 유지합니다. 한 패키지의 글꼴 토큰·값을 다른 영역에 복사하지 않습니다. +2. 다른 패키지 컴포넌트는 **문서에 허용된 지점에서만** 씁니다. + - SW 일반 모드 `SWPopup`의 `children` 안 Web 컨트롤(SW 카탈로그가 허용, 예: Popup 하단 `Button`) + - SW 뷰어 모드 `SWViewerPanel`의 `children` 안 Web 컨트롤 — `SWViewer*` 컨트롤로 안 될 때만(SW `AI_USAGE.md` §0.4) + - OrgChart Full Page의 바깥 레이아웃 = Web(또는 요청된 패키지) + - OrgChart React의 직원 팝업 = 선택 `@hm-design/org-chart-react/hm-dialog`(Web `Dialog`, Web Theme CSS 필요) +3. 패키지 class(`hm-sw-*`, `hm-orgchart-*`, Web `data-slot`)를 소비 코드에서 덮어쓰지 않습니다. 배치는 `className`·`style`과 소비 프로젝트 class로 합니다. +4. **Web + SW를 한 문서에 함께 쓰면** Web의 전역 base(위 표)가 SW 화면에도 적용됩니다. SW는 자기 범위에서 버튼 등을 초기화하지만 이 조합의 시각 결과는 패키지에서 검증된 적이 없습니다(NOT VERIFIED). 이 조합이면 브라우저에서 SW 부품의 글꼴·테두리·배경을 직접 확인하고 차이를 보고합니다. 가능하면 Web CSS가 없는 SW 전용 화면(별도 entry)으로 분리합니다. +5. Web Scoped Theme(`[data-hm-theme]`)는 body Portal(Select·Popover·DatePicker 팝업)에 전달되지 않습니다. Web 영역만 다른 테마로 바꾸려면 Global Theme를 쓰거나 차이를 보고합니다. + +### SW 일반 모드 ↔ 뷰어 모드 분리 + +SW 일반 모드와 뷰어 모드는 같은 패키지·같은 CSS 파일이지만 **서로 다른 디자인**입니다. 한 화면(한 Header 영역)에는 한 모드만 씁니다. + +1. 일반 모드 화면: `SWHeader`·개별 컨트롤·`SWPopup`·`SWHeaderPropertyPanel`·`SWToolButton`/`SWToolGroup`. `SWViewer*` 컴포넌트와 `--hm-sw-viewer-*` 토큰을 쓰지 않습니다. +2. 뷰어 모드 화면: `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`과 뷰어 패널 컨트롤(`SWViewerSection`·`SWViewerField` …). `SWHeader`에 뷰어 메뉴를 억지로 넣거나 `SWPopup`을 뷰어처럼 재스타일하지 않습니다. +3. 패키지가 실제로 공유하는 부분은 혼합이 아닙니다: `SWViewerPanel`은 `SWPopup` 프레임을 그대로 렌더링하고, 두 Header는 파일명·객체 수정·속성 면 토큰(`--hm-sw-header-document-*`·`object-*`·`property-*`)을 공유합니다. 소비 코드가 이 공유를 흉내 내 다른 모드 부품을 섞어도 된다는 뜻은 아닙니다. +4. 프로그램이 두 모드를 모두 가지면 모드 전환 시 Header 컴포넌트를 바꿔 끼웁니다(파일·패널 상태는 프로그램 상태로 유지). 세부는 `@hm-design/sw/ai/AI_USAGE.md` §0과 `VIEWER.md`. + +## 6단계. 디자인 검증 + +소비 프로젝트에서 실제로 실행한 것만 PASS로 적습니다. + +1. Typecheck(`tsc --noEmit` 등)와 Production Build +2. 브라우저 렌더링: 재사용한 컴포넌트가 HM 외형으로 보이는지(CSS 진입점 누락 확인), 신규 UI가 같은 토큰을 쓰는지 +3. 상태·동작: Hover / Focus(키보드) / Disabled, Popup 열기·닫기·Escape·Focus 복귀, 선택 패키지의 핵심 동작 +4. 폭: Web 390 / 768 / 1280 / 1440px, SW 일반 모드는 대상 창 폭(Header는 반응형 More 포함), SW 뷰어 모드는 대상 창 폭과 항목 `collapseBelow`·`iconOnlyBelow` 경계 전후(More 이동·아이콘만 표시), OrgChart는 캔버스 크기·초기 Fit +5. 혼합이면 영역 경계에서 스타일 침범이 없는지, SW면 선택하지 않은 모드의 컴포넌트·토큰이 섞이지 않았는지(§5) +6. 실행하지 못한 항목은 `NOT VERIFIED`로 남깁니다. + +## 7단계. 결과 보고 형식 + +```md +## HMDesign 적용 결과 +- 사용 유형: Web | SW 일반 | SW 뷰어 | OrgChart(Chart Only|Full Page) | 혼합(영역별: …) +- 유형·모드 판단 근거: 프로젝트 설정 | 요청 문구 "…" | 사용자 답변 +- 패키지·버전: @hm-design/ui 0.1.0, … +- 재사용한 컴포넌트: …(Props 설정 포함) +- 조합한 부분: … +- AI가 새로 구현한 부분: 파일 경로 · 이유(카탈로그에 없음) · 안쪽에서 재사용한 컴포넌트 +- 적용한 디자인 토큰: --hm-… (신규 UI가 읽은 것) +- AI 구성 값 — 디자인 확인 필요: 없음 | 속성 · 값 · 이유(4단계 ③) +- 카탈로그와 .d.ts 차이: 없음 | … +- 검증: Typecheck PASS · Build PASS · 브라우저(폭/상태) … · NOT VERIFIED: … +- 제안(구현하지 않음): … +``` + +## 8. 상황별 예시 + +### 예시 A — Web 화면 (목록 + 검색) + +- 읽기: `node_modules/@hm-design/ui/ai/` → COMPOSITION_PATTERNS "목록 화면" +- 재사용: `LNB`(또는 `GNB`) 중 **하나**, `PageHeader`, `Card`, `FilterBar` + `FilterBarSearch` + `FilterBarActions`, `DataTable` + `useDataTable`, `Button` +- 신규(필요 시만): 카탈로그에 없는 콘텐츠 블록 → 소비 프로젝트 컴포넌트, `--hm-sem-*` 토큰과 `Card` 재사용 + +```css +/* src/index.css */ +@import "tailwindcss"; +@import "@hm-design/ui/tailwind.css"; +@import "@hm-design/ui/theme.css"; +``` + +```tsx +import { Button, Card, CardContent, FilterBar, FilterBarActions, FilterBarSearch, PageHeader, PageHeaderContent, PageHeaderTitle } from "@hm-design/ui" +``` + +### 예시 B0 — "HMDesign SW로 화면을 만들어 주세요" (모드 미지정) + +- 유형은 SW로 확정, 모드 근거가 없으므로 코드 작성 전에 1단계 4번의 모드 질문만 합니다. 답에 따라 B1 또는 B2로 진행합니다. +- 소비 프로젝트 설정이 `HMDesign 사용 유형: SW 일반` 또는 `SW 뷰어`이면 묻지 않고 바로 B1/B2입니다. + +### 예시 B1 — SW 일반 모드 (편집 Header + 도구 막대 + 설정 Popup) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(일반 모드) → COMPOSITION_PATTERNS "6. 파일 열기 + 도구 막대", 예제 `ai/examples/ExampleF-ViewerToolbar.tsx`(파일 이름의 Viewer는 과거 명칭이며 일반 모드 `SWHeader` 예제) +- 재사용: `SWHeader`(`documentOpenPlacement="header"`, `controls`, `tools`), `SWToolGroup` + `SWToolButton`(Model/Layout 탭, Fit 등), `SWPopup` + `SWPopupSection` + `SWPopupRow` + `SWHeaderInput`(설정 Popup), 로고(홈) 버튼 메뉴는 `SWHeader`의 `homeMenu` + `SWRecentFiles`(**일반 모드 전용**, 예제 `ExampleG-HomeMenu.tsx`) +- 신규: SW에 없는 기능(예: 검색) → 소비 프로젝트 컴포넌트, `` 안, `--hm-sw-header-*` 토큰, 안쪽 입력은 `SWHeaderInput`(예제 `ExampleD-SearchExtension.tsx`) + +```tsx +import { SWHeader, SWPopup, SWTheme, SWToolButton, SWToolGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 B2 — SW 뷰어 모드 (뷰어 Header + 메뉴 + 패널) + +- 읽기: `node_modules/@hm-design/sw/ai/` → AI_USAGE §0(뷰어 모드) → `VIEWER.md`, 예제 `ai/examples/ExampleH-ViewerMode.tsx` +- 재사용: `SWViewerHeader`(`groups` 데이터: `button`·`toggle`·`menu`·`tabs`·`switch`·`custom` 항목, `onCommand`, `trailing`에 `SWViewerStatus`·`SWViewerHeaderButton`), Dropdown은 `type: "menu"` 항목의 `entries`(단독·우클릭은 `SWViewerMenu`), 팝업은 `SWViewerPanel` + `SWViewerSection`·`SWViewerField`·`SWViewerSwitch`·`SWViewerSlider`·`SWViewerInput`·`SWViewerButton` +- 신규: 뷰어에 없는 패널 콘텐츠 → 소비 프로젝트 컴포넌트를 `SWViewerPanel`의 `children`에, 안쪽은 `SWViewerField` + `SWViewerInput` 등, 외형은 `--hm-sw-viewer-*` 토큰 +- 하지 않음: `SWHeader`·`SWPopup`을 뷰어 화면에 섞기, 로고(홈) 메뉴(`SWHomeMenu`·`SWRecentFiles`·`homeMenu`)를 뷰어 화면에 넣거나 비슷하게 만들기(홈 메뉴는 일반 모드 전용), 로고가 없다고 임의 문자·아이콘 넣기, 연결할 명령이 없는 메뉴를 가짜 동작으로 만들기(제외 또는 `disabled` + 미연결 보고) + +```tsx +import { SWViewerHeader, SWViewerPanel, SWViewerSection, SWViewerField, SWViewerSwitch, type SWViewerHeaderGroup } from "@hm-design/sw" +import "@hm-design/sw/styles.css" +``` + +### 예시 C — 조직도만 (Chart Only) + +- 읽기: `node_modules/@hm-design/org-chart/ai/` → COMPOSITION_PATTERNS "1. Chart Only" +- 재사용: React `OrgChart`(`@hm-design/org-chart-react`) 또는 Vanilla `createOrgChart`, 데이터 `JsonOrgChartDataSource` + `validateOrgChartDataset` +- 필수 옵션: `layoutMode="auto"` + `presentationMode="chart-only"`(초기 Fit·직접 휠 Zoom이 기본) +- **추가하지 않음:** 페이지 제목·통계·설명·Zoom 버튼 바·외부 회색 배경·Navigation. Fixed Chart Only는 미지원(`TypeError`) + +```tsx +import { OrgChart } from "@hm-design/org-chart-react" +import { JsonOrgChartDataSource } from "@hm-design/org-chart" +import engineUrl from "@hm-design/org-chart/engine.css?url" // Vite. 다른 도구는 실제 배포 URL +import coreUrl from "@hm-design/org-chart/style.css?url" +``` + +### 예시 D — Web + OrgChart (Full Page) + +- 영역: 페이지 레이아웃·제목·필터 = Web, 조직도 영역 = OrgChart +- 읽기: Web `ai/` + OrgChart `ai/COMPOSITION_PATTERNS.md` "2. Full Page" +- 재사용: Web `LNB`/`GNB` 중 하나, `PageHeader`, `Card`, `Select`·`Label`(회사 선택 등 요청된 컨트롤만) + OrgChart `OrgChart`(`selectedCompanyIds` 등 Props로 연결) +- 직원 팝업을 Web Dialog로: `import { OrgChart } from "@hm-design/org-chart-react/hm-dialog"` + `employeePopup="hm-dialog"`(Web CSS 진입점 필요) +- 분리: 조직도 카드·색은 OrgChart 기본 유지. Web 토큰을 조직도에 넣지 않음(바꿔야 하면 `--hm-orgchart-*` 공개 입력만) + +## 9. 소비 프로젝트 설정 — AI가 이 지침을 찾게 하기 + +AI 코딩 도구는 보통 **프로젝트 루트의** `AGENTS.md`(Codex 등)·`CLAUDE.md`(Claude Code)·도구별 규칙 파일만 자동으로 읽고 `node_modules`는 읽지 않습니다. 패키지 설치만으로 지침이 자동 적용되지는 않으므로 소비 프로젝트에서 한 번 연결합니다. + +1. 패키지에 들어 있는 `ai/AGENTS_SNIPPET.md`를 루트 `AGENTS.md`(없으면 새로 만듦)에 붙여 넣고 `HMDesign 사용 유형:` 줄을 프로젝트에 맞게 고칩니다. 값은 `Web` / `SW 일반` / `SW 뷰어` / `OrgChart` / `혼합(영역별: 예 "페이지 = Web, 중앙 = OrgChart")` 중 하나입니다. SW 프로젝트면 모드까지 적어야 AI가 모드를 다시 묻지 않습니다(`SW`만 적으면 모드를 묻습니다). 정하지 않았으면 그 줄을 지워 AI가 1단계에서 묻게 합니다. + ```bash + cat node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md >> AGENTS.md + ``` + (PowerShell: `Get-Content node_modules/@hm-design/ui/ai/AGENTS_SNIPPET.md | Add-Content AGENTS.md`. 설치한 아무 HMDesign 패키지의 사본이나 같습니다.) +2. Claude Code는 `CLAUDE.md`에 `@AGENTS.md` 한 줄을 두면 같은 내용을 읽습니다. 다른 도구(Cursor 규칙 등)는 그 도구의 규칙 파일에 같은 내용을 넣습니다. +3. 패키지를 업데이트한 뒤 스니펫이 바뀌었는지 확인합니다(스니펫은 경로 안내만 하므로 보통 그대로 둡니다). + +자동으로 되지 않는 것: 패키지 설치 시 루트 파일 생성(`postinstall` 없음), 도구가 `node_modules`를 스스로 탐색하는 것. 위 연결이 없으면 사용자가 "node_modules/@hm-design/…/ai/AI_GUIDE.md를 먼저 읽어"라고 요청해야 합니다. + +**Git Submodule + npm Workspace로 연결한 경우**(Registry 없이 HMDesign 저장소를 예: `HMDesign/` 폴더에 Submodule로 고정하고 `workspaces`에 `HMDesign/packages/<패키지>`를 등록한 구성): `node_modules/@hm-design/<패키지>`는 `HMDesign/packages/<패키지>`로 연결되므로 지침 위치는 위 표와 같습니다(`HMDesign/packages/<패키지>/ai/`와 같은 파일). 공개 진입점은 `dist/`를 가리키므로 HMDesign 폴더 안에서 `npm ci`와 `npm run build:packages`를 먼저 실행해야 하며, `dist/`가 없으면 Import 오류를 컴포넌트 결함으로 보고하지 말고 빌드 필요로 보고합니다. HMDesign 저장소 루트의 `AGENTS.md`·`CLAUDE.md`는 HMDesign 개발용이므로 소비 프로젝트 지침으로 쓰지 않습니다. + +## 10. 문서 갱신 (HMDesign 저장소 유지보수자) + +컴포넌트를 추가·수정하면 같은 변경에서 해당 패키지 `ai/COMPONENT_CATALOG.md`와 필요한 `DESIGN_RULES.md`·`COMPOSITION_PATTERNS.md`를 갱신하고 `npm run check:ai-docs`를 통과시킵니다. 절차는 저장소 `docs/ai/MAINTAINING.md`(패키지 미포함)에 있습니다. diff --git a/packages/sw/ai/AI_USAGE.md b/packages/sw/ai/AI_USAGE.md new file mode 100644 index 0000000..9c2efc0 --- /dev/null +++ b/packages/sw/ai/AI_USAGE.md @@ -0,0 +1,149 @@ +# @hm-design/sw — AI 코딩 도구 사용 안내 + +이 폴더(`node_modules/@hm-design/sw/ai/`)는 다른 React 프로젝트에서 AI 코딩 도구가 SW 패키지를 **재사용·조합·확장**할 때 먼저 읽는 안내서입니다. 패키지 자체에는 AI 기능이 없습니다. 아래 문서는 실제 공개 API와 CSS에서 확인한 값만 적습니다. + +먼저 [AI_GUIDE.md](./AI_GUIDE.md)(HMDesign 공통: 사용 유형 Web / SW 일반·뷰어 / OrgChart / 혼합 확인, 작업 1~7단계, 패키지 분리, 결과 보고)를 읽고 사용 유형이 **SW** 또는 SW가 포함된 혼합일 때 이 폴더를 씁니다. + +| 문서 | 내용 | +|---|---| +| [AI_GUIDE.md](./AI_GUIDE.md) | HMDesign 공통 진입점(모든 HMDesign 패키지에 같은 사본) | +| [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md) | 공식 공개 컴포넌트(일반 모드: Header·개별 컨트롤·Popup·도구 막대·로고 클릭 메뉴 / 뷰어 모드 §9: `SWViewer*` 전체 Export)·Props·Callback·크기·CSS 의존성 | +| [DESIGN_RULES.md](./DESIGN_RULES.md) | SW 전용 토큰·Typography·간격·Hover/Focus/Selected·Overlay·Motion·반응형·Popup 외형·도구 버튼·로고 클릭 메뉴(일반 모드 §1~10·§12), 뷰어 토큰·상태값 요약(§11) | +| [COMPOSITION_PATTERNS.md](./COMPOSITION_PATTERNS.md) | 완성형·간소화·기능 중심·확장 Header, Popup(자유 콘텐츠), 일반 모드 Header + 도구 막대(1~6), 뷰어 모드 기본 조합(7) | +| [examples/](./examples) | 공개 API만 쓰는 예제. **일반 모드** A~F(E = 사용자 정의 Popup, F = 파일 열기 + 도구 막대. 독립 소비 프로젝트에서 Typecheck·Build·브라우저 검증. B·F 파일명의 "Viewer"는 과거 이름이며 일반 모드 `SWHeader` 구성), **뷰어 모드** H(`SWViewer*`) | +| [FOOTER.md](./FOOTER.md) | **일반 모드 하단 막대**: `SWFooter`(보조기능·바 안 명령창·명령 칸·분류 탭·명령어 전체보기), `SWFooterLayoutTabs`(Model/Layout 탭), `SWFooterCommandLine`(명령창). AI 작업 순서 1~6 | +| [VIEWER.md](./VIEWER.md) | **뷰어 모드 전용**: `SWViewerHeader`(데이터 메뉴·More·외곽선·로고 규칙), `SWViewerMenu`(Dropdown·서브메뉴·우클릭), `SWViewerPanel`(팝업 프레임 + 자유 콘텐츠). 일반 SW 모드는 `SWHeader`·`SWPopup`을 그대로 씁니다 | + +## 0. SW 모드 선택 — SW 일반 모드 / SW 뷰어 모드 (코드 작성 전에 결정) + +SW 패키지에는 Header·Popup 계열이 두 벌 있습니다. 화면마다 **하나의 모드**를 고르고 그 모드의 컴포넌트만 씁니다. 공통 사용 유형 확인(Web / SW / OrgChart / 혼합)은 [AI_GUIDE.md](./AI_GUIDE.md)를 따르고, 사용 유형이 SW로 정해진 뒤 이 절로 모드를 정합니다. + +### 0.1 판단 순서 + +1. **소비 프로젝트 설정:** `AGENTS.md`·`CLAUDE.md` 등에 `HMDesign 사용 유형: SW 일반` 또는 `HMDesign 사용 유형: SW 뷰어`가 있으면 그 모드를 씁니다. 혼합(영역별)이면 SW 영역에 적힌 모드를 씁니다. +2. **요청 문구:** 설정이 없거나 `SW`만 적혀 있으면 요청을 봅니다. + - **뷰어 모드 근거:** "뷰어", "DWG/DXF 보기", "도면 뷰어", "도면 보기·열람", "읽기 전용", 도면 공간(Model/Layout) 탭·전체 보기·레이어/설정 패널 토글·불러오기 상태가 중심. + - **일반 모드 근거:** "편집", "그리기"(그리기모드), "객체 수정", 레이어·색상·선스타일·문자/치수스타일 **값 편집**, 속성Bar·"속성창" 편집이 중심. + - 근거가 한쪽에만 있고 분명할 때만 그 모드로 정합니다. 양쪽 근거가 섞여 있거나 하나라도 애매하면(예: "도면 화면", "CAD 화면 상단", "레이어 보기") **추측하지 않습니다.** +3. **그래도 모르면 코드 작성 전에 그대로 묻습니다.** + + > SW 화면을 어떤 모드로 만들까요? + > 1. SW 일반 모드(편집용 `SWHeader`·`SWPopup`) + > 2. SW 뷰어 모드(`SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`) + +4. 설정·요청·이전 답변으로 모드가 **이미 명확하면 다시 묻지 않습니다.** 결과 보고에 정한 모드와 근거(설정 값 / 요청 문구 / 사용자 답변)를 적습니다(§4). + +### 0.2 모드별 컴포넌트와 읽을 문서 + +| 구분 | SW 일반 모드 | SW 뷰어 모드 | +|---|---|---| +| 용도 | 설치형·도면 **편집** SW 상단: 그리기모드, 레이어·색상·선/문자/치수스타일 선택, 속성Bar·속성창 | 도면 **보기** 화면 상단: 파일 열기·샘플, 도면 공간(Model/Layout) 탭, 전체 보기, 2.5D·배경 스위치, 레이어·설정·속성 패널 토글, 불러오기 상태 | +| 기준 | Figma 이지빔 SW `26:8944`, 49px | 참고 DWG/DXF 뷰어 실측(1440px), 52px | +| Header | `SWHeader`, 또는 `` 안의 개별 컨트롤(`SWHeaderHome`, `SWHeaderDocumentTitle`, `SWHeaderLayerMenu`, `SWHeaderColorMenu`, `SWHeaderLineStyleMenu`, `SWHeaderTextStyleMenu`, `SWHeaderDimensionStyleMenu`, `SWHeaderActions`, `SWHeaderWindowControls`, `SWHeaderProperties` …) | `SWViewerHeader`(`groups` 데이터 + `trailing`), 오른쪽 끝·`custom` 버튼 `SWViewerHeaderButton`, 상태 `SWViewerStatus` | +| Dropdown | 각 필드 Dropdown(`SWHeaderLayerMenu` …) | `type: "menu"` 항목, 단독·우클릭은 `SWViewerMenu` | +| 팝업·설정창 | `SWPopup`(`titleActions`, `footer`) + `SWPopupSection` / `SWPopupRow` + `SWHeaderInput`, 레이어·색상 행 `SWPopupPropertyRow`(Header 필드 Dropdown은 Header 전용), 게이지바 `SWSlider`(`appearance`), 선택 목록 `SWSelect`, 속성창 `SWHeaderPropertyPanel`, 속성Bar `SWHeaderPropertyBar` | `SWViewerPanel`(이동·크기 조절·접기·`modal`, `headerActions`, `footer`) + `SWViewerSection` / `SWViewerField` / `SWViewerSwitch` / `SWViewerSlider` / `SWViewerInput` / `SWViewerButton` / `SWViewerBadge` / `SWViewerHint`, 선택 목록 `SWSelect`(뷰어 패널 토큰으로 표시) | +| 로고(홈) 버튼 메뉴 | `SWHeader`의 `homeMenu`(`SWHomeMenu` 데이터, 최근파일 `SWRecentFiles`, Figma 26:10591). 기본 숨김 → 로고 클릭 열기 → 다시 클릭 닫기 | **사용하지 않음.** `SWViewerHeader`에는 홈 메뉴 Props가 없고 로고 클릭은 `onHomeClick`만 호출합니다. 파일 열기·샘플은 Header `groups`의 `button`·`menu` 항목 | +| 하단 Footer | `SWFooter`(+ 바 안 명령창 `command={}`, 좌표 `status`, `SWFooterLayoutTabs`, 부품 `SWFooter*`), [FOOTER.md](./FOOTER.md) | **사용하지 않음.** 뷰어 화면에는 하단 명령 막대가 없습니다. 도면 공간 탭은 `SWViewerHeader`의 `tabs` 항목 | +| 버튼·탭·토글 | `SWToolButton` / `SWToolGroup` | Header 항목 `type: "button" \| "toggle" \| "tabs" \| "switch"`, 패널 안 `SWViewerButton` | +| 아이콘 | 패키지 자산(필드 안 아이콘) | 프로그램 아이콘 16px, 직접 그린 아이콘은 `SWViewerIcon`으로 감쌈 | +| 범위 | Header 밖 부품은 `` 안 | `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`은 루트에 `hm-sw-theme`이 있어 `` 불필요. 패널 컨트롤은 `SWViewerPanel` 안 | +| 토큰 | `--hm-sw-header-*`, Popup 콘텐츠 `--hm-sw-property-*` | `--hm-sw-viewer-*` + 공유 `--hm-sw-header-*`(아래 0.3) | +| 읽을 문서 | [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md) §1~8·§10, [DESIGN_RULES.md](./DESIGN_RULES.md) §1~10·§12·§13, [COMPOSITION_PATTERNS.md](./COMPOSITION_PATTERNS.md) 1~6·8·10, [FOOTER.md](./FOOTER.md), 예제 A~G·I | [VIEWER.md](./VIEWER.md), [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md) §9, [DESIGN_RULES.md](./DESIGN_RULES.md) §11, [COMPOSITION_PATTERNS.md](./COMPOSITION_PATTERNS.md) 7, [예제 H](./examples/ExampleH-ViewerMode.tsx) | + +- **하단 명령 막대(Footer)** 요청은 일반 모드입니다: [FOOTER.md](./FOOTER.md) §1 순서로 `SWFooter`가 있는지 확인하고, 명령·분류·보조기능·문구·아이콘만 Props로 바꿉니다. Footer 외형을 새로 그리지 않습니다. +- **일반 모드 Header에 도구 막대를 더한 구성**(로고 옆 파일 열기 + Model/Layout·Fit·2.5D 버튼을 `SWHeader`에 추가)은 **일반 모드**입니다: `SWHeader`의 `documentOpenPlacement`·`leading`·`tools` + `SWToolButton` / `SWToolGroup`(PATTERNS 6, 예제 F). "뷰어"·"도면 보기" 화면을 요청받았다면 이 구성이 아니라 뷰어 모드(`SWViewer*`)를 씁니다. +- 모드 진입·종료, 파일 처리, 도면 렌더링, 메뉴 명령 실행은 어느 모드든 **프로그램 담당**입니다. + +### 0.3 모드 혼합 금지 + +- **한 화면에 Header 하나.** `SWHeader`와 `SWViewerHeader`를 같은 화면에 함께 두지 않습니다. 두 모드를 오가는 프로그램은 상태를 유지한 채 Header 컴포넌트만 바꿉니다(VIEWER.md §1). +- **뷰어 화면:** `SWHeader`에 뷰어 메뉴를 넣거나 `SWHeader`·`SWPopup`을 뷰어처럼 재스타일하지 않습니다. 뷰어 팝업은 `SWViewerPanel`입니다. +- **일반 화면:** `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`과 패널 컨트롤(`SWViewerSection` …)을 쓰지 않습니다. +- **로고(홈) 메뉴는 SW 일반 모드 전용:** `SWHomeMenu`·`SWHomeMenuSection`·`SWHomeMenuItem`·`SWRecentFiles`·`useSWHomeMenuClose`와 `SWHeader`의 `homeMenu`·`homeMenuOpen`·`defaultHomeMenuOpen`·`onHomeMenuOpenChange`는 일반 모드 `SWHeader` 화면에서만 씁니다. 뷰어 화면에는 홈 메뉴를 만들지 않고(`SWViewerHeader` 옆·`custom` 항목·`SWViewerPanel` 안에 넣거나 비슷하게 다시 만들지 않음), 뷰어 Header와 기능은 그대로 둡니다. +- **토큰:** `--hm-sw-viewer-*` 토큰을 일반 모드 신규 UI에 쓰지 않고, 일반 모드 전용 모양(속성창 행 `SWPopupRow`, `SWToolButton`의 `pill`·`text` 모양, 일반 필드 Dropdown)을 뷰어 신규 UI에 가져오지 않습니다. 두 토큰은 같은 범위(`.hm-sw-header`, `.hm-sw-theme`)에 함께 선언되어 있어 기술적으로 읽히지만, 읽힌다는 것이 허용을 뜻하지 않습니다. +- **공유 — 모드 혼합 아님(실제 코드가 공유하는 부분):** + - `SWViewerPanel`은 내부에서 `SWPopup` 프레임(제목 막대·제목·닫기·테두리·면)을 렌더링합니다. 뷰어에서 `SWViewerPanel`을 쓰는 것은 일반 모드 혼합이 아닙니다. 단, 뷰어 화면에서 `SWPopup`을 직접 쓰지는 않습니다. + - 두 Header는 사용자 확정 면 토큰 `--hm-sw-header-document-*`·`--hm-sw-header-object-*`·`--hm-sw-header-property-*`와 외곽선 토큰 `--hm-sw-header-text-outline*`·`--hm-sw-header-label-outline`을 공유합니다(바꾸면 두 Header가 함께 바뀜). + - 뷰어 패널 콘텐츠 토큰 일부(`--hm-sw-viewer-panel-background`·`-field-background`·`-inner-border`·`-text`·`-badge-background`, `--hm-sw-viewer-panel-switch-off`)는 `--hm-sw-property-*` 값을 참조합니다. 뷰어 신규 UI는 `--hm-sw-viewer-panel-*` 이름으로 읽습니다. + +### 0.4 없는 컴포넌트 처리 (모드별 3단계) + +공통 원칙은 [AI_GUIDE.md](./AI_GUIDE.md)를 따르고, SW에서는 아래 값을 씁니다. + +| 단계 | SW 일반 모드 | SW 뷰어 모드 | +|---|---|---| +| ① 기존 재사용 | `SWHeader` Props(`hiddenControls`·`menuOrder`·`controls`·`documentOpenPlacement`·`leading`·`tools`) → 개별 컨트롤 조합 → `SWPopup` children → `SWToolButton` / `SWToolGroup` | `SWViewerHeader`의 `groups` 항목(`button`·`toggle`·`menu`·`tabs`·`switch`·`custom`)과 `trailing` → `SWViewerMenu` → `SWViewerPanel` children·`footer`·`headerActions` + 패널 컨트롤 | +| ② 소비 프로젝트에 신규 | 토큰 `--hm-sw-header-*`, Popup 안은 `--hm-sw-property-*`. 상태 표현은 [DESIGN_RULES.md](./DESIGN_RULES.md) §4(테두리형 gradient 링, 텍스트형 글자만 `#FFC600`). 안쪽 입력은 `SWHeaderInput` 재사용(예제 D) | 토큰 `--hm-sw-viewer-*` + 공유 `--hm-sw-header-*`(면·외곽선). 상태 표현은 [DESIGN_RULES.md](./DESIGN_RULES.md) §11 / VIEWER.md §2(Hover `#266651` 면, Active·Pressed 글자 `#FFC600`, Focus 2px `#FFC600`). 안쪽은 뷰어 공개 컴포넌트 재사용(예: 새 패널 콘텐츠 = `SWViewerField` + `SWViewerInput`, 새 Header 도구 = `custom` 항목 안 `SWViewerHeaderButton`, 아이콘 = `SWViewerIcon`) | +| ③ 참고 값 없음 | 기존 HMDesign SW 규칙과 조화: Font Weight 400/500/700만, Light/Dark 없음, 전역 CSS(`html`·`body`·`*`) 금지, SW 공통 토큰 우선. 토큰에 없는 값은 결과 보고에 **"AI 구성 값 — 디자인 확인 필요"**로 표시 | 같음 | + +- 뷰어 패널 안에 `@hm-design/ui` 컨트롤을 넣는 것은 `SWViewerPanel` `children`이 `ReactNode`라 가능하지만, `SWViewer*` 컨트롤로 안 될 때만 씁니다(별도 설치·외형 확인 필요, [VIEWER.md](./VIEWER.md) `SWViewerPanel` 절). +- 어느 단계에서도 패키지 원본(`node_modules/@hm-design/sw`) 수정, `hm-sw-*` class 재사용·재정의, `dist` 코드·CSS 복사를 하지 않습니다. 새 class는 소비 프로젝트 접두사(예: `app-`)를 씁니다. + +## 1. 작업 순서 (필수) + +1. **먼저 검색한다.** §0에서 모드를 정하고, 요청 기능을 [COMPONENT_CATALOG.md](./COMPONENT_CATALOG.md)의 공개 컴포넌트(뷰어 모드는 §9와 [VIEWER.md](./VIEWER.md))에서 찾는다. +2. **있으면 재사용한다(1순위).** 뷰어 모드는 `SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`이다(VIEWER.md). 일반 모드에서 완성형 Header가 필요하면 `SWHeader` 하나만 쓴다. 기존 Props(`hiddenControls`, `menuOrder`, `controls`, `documentOpenPlacement`, `leading`, `tools`, 각 데이터 배열·Callback)로 해결되는지 먼저 본다. 팝업·설정창은 `SWPopup`, 버튼·탭·토글은 `SWToolButton` / `SWToolGroup`, 일반 모드 로고 클릭 2단 메뉴는 `SWHeader`의 `homeMenu`(`SWHomeMenu` 데이터, 최근파일은 `SWRecentFiles`)이다. `SWToolButton`과 `SWHomeMenuItem`은 역할이 다르다(도구 막대 버튼 / 메뉴 타일). 서로 대신 쓰지 않는다. + - Popup 요청은 이렇게 판단한다: ① `SWPopup`이 프레임(외형·닫기·Escape·스크롤)을 제공한다 → ② 내용은 `children`으로 자유 구성(구조 제한 없음) → ③ 행 모양은 `SWPopupSection` / `SWPopupRow` + `SWHeaderInput`, 레이어·색상·선스타일 선택 행은 `SWPopupPropertyRow`(SWHeader 필드 Dropdown은 Header 전용), 게이지바는 `SWSlider`, 선택 목록은 `SWSelect` → ④ 그래도 SW에 없는 컨트롤(Switch, 하단 Button 등)만 `@hm-design/ui`를 children에 → ⑤ 프레임을 다시 만들거나 없는 Props(`content`, `renderContent` 등)를 추측하지 않는다. +3. **없으면 조합한다(2순위).** 개별 공개 컴포넌트(`SWHeaderHome`, `SWHeaderDocumentTitle`, `SWHeaderLayerMenu` …)를 `` 안에 배치한다. 배치용 CSS만 소비 프로젝트에 작성한다([COMPOSITION_PATTERNS.md](./COMPOSITION_PATTERNS.md)). +4. **조합으로도 안 될 때만 새로 만든다(3순위).** 새 컴포넌트는 **소비 프로젝트**에 작성하고, 공개 컴포넌트(예: `SWHeaderInput`)를 내부에 재사용하며, 외형은 공개 토큰 `--hm-sw-header-*`만 읽는다([DESIGN_RULES.md](./DESIGN_RULES.md), 예제 D). 뷰어 모드의 새 UI는 `--hm-sw-viewer-*`(+ 공유 `--hm-sw-header-*` 면·외곽선, [DESIGN_RULES.md](./DESIGN_RULES.md) §11)를 읽고 Header 버튼·패널 버튼·입력은 `SWViewerHeaderButton`·`SWViewerButton`·`SWViewerField` + `SWViewerInput`을 재사용한다. 모드별 상세는 §0.4. 뷰어 화면에 일반 모드 컨트롤 모양을 섞지 않는다. +5. **토큰이 있는 값을 새로 만들지 않는다.** 크기·색·간격은 선택 모드의 토큰과 DESIGN_RULES(뷰어는 VIEWER.md도)의 확인값을 쓴다. 참고 값이 없을 때만 §0.4 ③으로 구성하고 "AI 구성 값 — 디자인 확인 필요"로 보고한다(화면 인상을 크게 바꾸는 값은 구현 전에 사용자에게 확인). +6. **존재하지 않는 API를 추측하지 않는다.** 카탈로그와 `dist/index.d.ts`에 없는 Export·Props는 없는 것이다. +7. **패키지 코드를 복사하지 않는다.** `node_modules/@hm-design/sw/dist`의 구현이나 `hm-sw-*` CSS 블록을 복사해 같은 컴포넌트를 다시 만들지 않는다. +8. **실제로 검증한다.** 소비 프로젝트에서 `tsc`, Production Build, 브라우저 렌더링(Dropdown 열기·Callback·Focus)을 확인한 뒤 완료로 보고한다. 실행하지 않은 검증은 PASS로 적지 않는다. + +## 2. 설치·Import 규칙 + +```tsx +import { SWHeader, SWTheme, SWHeaderLayerMenu } from "@hm-design/sw" +import "@hm-design/sw/styles.css" // 앱 진입점에서 한 번 +``` + +- 공식 진입점은 `@hm-design/sw`(JS·타입)와 `@hm-design/sw/styles.css` 두 개뿐이다. `package.json`의 `exports`가 다른 경로를 막는다. +- **금지:** `@hm-design/sw/src/...`, `@hm-design/sw/dist/components/...` 같은 내부 경로 Import. `dist`에 내부 모듈의 `.d.ts`가 보여도 공개 API가 아니다. +- Peer: `react`, `react-dom` `^19.0.0`. 런타임 dependency 없음. `@hm-design/ui`·조직도 패키지와 무관하다. +- SVG·PNG 자산은 JS에 data URI로 포함되어 별도 설정이 없다. +- SW 기본 글꼴은 Noto Sans KR이다(`--hm-sw-header-font-family: "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif`, 2026-10-20 확정 — 같은 날의 Dotum 기본값은 철회, Figma의 Dotum은 의도적으로 대체). 패키지는 글꼴 파일을 포함하지 않으며 앱이 Noto Sans KR(400/500/700)을 로드한다. 없으면 Malgun Gothic → Apple SD Gothic Neo로 대체된다. Dotum을 기본값으로 다시 넣지 않는다. +- SW 화면은 `SWTheme`(또는 SW 컴포넌트 루트)와 SW 토큰의 글꼴을 그대로 쓴다. Web UI도 Noto Sans KR이지만 Web 토큰(`--hm-font-family-base`)이나 Web `theme.css`의 글꼴 설정을 SW 화면에 복사하지 않고, SW 컴포넌트에 `font-family`를 개별 지정하지 않는다. 프로그램(사용자)이 다른 글꼴을 정한 경우에만 §3.1 방법으로 `--hm-sw-header-font-family`를 바꾸고 결과 보고에 "글꼴 변경"으로 적는다. +- Weight 범위(2026-10-20 사용자 확정): SWHeader 안의 필드 값은 400, Composed Controls(SWHeader 밖에 단독 배치한 `SWHeaderLayerMenu` 등)의 필드 값은 700. 파일명·Footer 보조기능/명령어 제목·Footer 분류 탭·Viewer Header 파일명/버튼 라벨/Model·Layout·최근파일 이름/경로/미리보기 제목은 700, Footer `전체보기`·Model/Layout 탭(Footer)·명령·보조기능 라벨은 400. 임의로 일괄 변경하지 않는다. Figma 고정 폭 칸(예: 가중치·스케일 38px)에 그보다 긴 값(예: `ByLayer`)이 들어가면 말줄임 + `title`이 된다. Figma 레이어 이름의 `Dotum/bold/14`를 보고 700으로 바꾸거나 겹침·외곽선을 따로 만들지 않는다. +- CSS는 전역(`html`, `body`, `*`)을 건드리지 않는다. `body` margin 등 페이지 기본값은 소비 앱이 정한다. +- 스크롤바: SW 전용 스크롤바 디자인은 없다. 기존 SW 컴포넌트는 브라우저 기본 스크롤바를 쓰며(속성Bar만 `scrollbar-width: thin`), Popup 본문 스크롤은 `SWPopup`이 처리한다. 새 스크롤 영역에 임의 스크롤바 색·두께를 만들지 않는다. +- TypeScript에서 CSS side-effect import 오류가 나면 Vite의 `vite/client` 타입을 포함한다. + +## 3. 스타일 규칙 + +- `SWHeader` 밖에서 하위 컴포넌트를 쓰면 반드시 ``로 감싼다. 토큰·글꼴·버튼 초기화가 이 범위에서만 적용된다. +- 소비 코드는 `hm-sw-*` class를 붙이거나 재정의하지 않는다. 배치는 자기 class(`className`)와 `style`로 한다. +- 뷰어 모드 컴포넌트(`SWViewerHeader`·`SWViewerMenu`·`SWViewerPanel`)는 자체 `hm-sw-theme` 범위를 가지므로 ``로 감싸지 않아도 된다. 소비 코드는 `hm-sw-viewer-*` class도 붙이거나 재정의하지 않는다. +- 외형 변경은 §3.1의 방법만 쓴다. 사용자 확정 면(파일명·객체 수정·속성 입력)은 기본값 유지를 권장한다. +- Light/Dark 분기는 없다. SW 디자인은 하나다. + +### 3.1 테마(토큰) 설정 — 공식 방법 (2026-10-20) + +SW 토큰(`--hm-sw-header-*`, `--hm-sw-property-*`, `--hm-sw-viewer-*`, `--hm-sw-footer-*`)의 기본값은 **가장 바깥 SW 범위**(``, 또는 단독으로 쓴 `SWHeader`·`SWViewerHeader`·`SWViewerPanel`·`SWViewerMenu`·`SWFooter`의 루트)에서 한 번만 선언됩니다. 그 안의 SW 요소 — Header의 Dropdown·More, `SWViewerMenu`, `SWViewerPanel`과 안쪽 컨트롤, `SWFooterCommandLine`, Tooltip·안내 — 는 자기 루트에 `hm-sw-theme`이 있어도 값을 다시 정하지 않고 **상속**합니다. + +1. 화면 전체(Header·Panel·Menu가 같은 값)를 바꾸려면 화면을 `` 하나로 감싸고 거기서만 토큰을 정합니다. 프로그램 class(`` + `.app-sw-theme { --hm-sw-header-font-family: … }`)도 됩니다. + ```tsx + const appSWTheme = { "--hm-sw-header-font-family": '"Malgun Gothic", sans-serif' } as CSSProperties // 프로그램이 정한 값만 + + {/* Dropdown·More 포함 */} + … + + ``` +2. 컴포넌트 하나만 쓰면 그 컴포넌트의 `style`로 정해도 됩니다(그 루트가 가장 바깥 범위). 안쪽 Dropdown·More·명령창에도 적용됩니다. +3. **Portal:** 상속은 DOM 위치를 따릅니다. 프로그램이 `createPortal`로 SW 요소를 범위 밖(`document.body` 등)에 렌더링하면 값이 전달되지 않으므로, Portal 내용을 같은 theme 객체의 ``으로 감쌉니다(예제 [ExampleJ-Theme.tsx](./examples/ExampleJ-Theme.tsx)). SW 패키지 컴포넌트 자체는 Portal을 쓰지 않습니다(Dropdown·More·Panel 모두 범위 안에 렌더링). +4. 영역마다 다른 값이 필요하면 영역별 ``을 둡니다. 옆 영역끼리 섞이지 않고, 안쪽 ``은 그 안에서만 적용됩니다. +5. **하지 않음:** `hm-sw-*` class를 선택자로 쓴 CSS(`.hm-sw-header, .hm-sw-theme { --… }` 등), `!important`, 안쪽 컴포넌트마다 같은 값을 반복 지정, SW 범위가 아닌 조상(`body`, 앱 루트 `div`)에만 토큰 지정(SW 범위가 기본값을 다시 선언하므로 적용되지 않음). +- 다른 토큰을 참조하는 토큰(예: `--hm-sw-viewer-panel-background` = `var(--hm-sw-property-surface)`)은 가장 바깥 범위에서 계산됩니다. 참조되는 토큰을 바꿀 때도 가장 바깥 범위에서 바꿉니다. + +## 4. 판단 기록 남기기 + +새 UI를 만들 때 결과 보고에 다음을 남긴다. + +| 요청 항목 | 판단 | 근거 | +|---|---|---| +| 예: SW 모드 | 뷰어 모드 | 설정 `HMDesign 사용 유형: SW 뷰어` / 요청 "DWG 뷰어" / 사용자 답변 중 실제 근거 | +| 예: 레이어 | 재사용 | `SWHeaderLayerMenu` | +| 예: 검색 | 신규(소비 프로젝트) | 카탈로그 MISSING. `SWHeaderInput` 재사용 + 토큰 기반 표면 | +| 예: 뷰어 측정 패널 | 신규 콘텐츠(소비 프로젝트) | `SWViewerPanel` children에 `SWViewerField` + `SWViewerInput`. 토큰에 없는 값은 "AI 구성 값 — 디자인 확인 필요" | + +새 컴포넌트를 SW 패키지 공식 컴포넌트로 승격할지는 별도 검토 대상이다. 임의로 패키지에 추가하지 않는다. diff --git a/packages/sw/ai/COMPONENT_CATALOG.md b/packages/sw/ai/COMPONENT_CATALOG.md new file mode 100644 index 0000000..b334020 --- /dev/null +++ b/packages/sw/ai/COMPONENT_CATALOG.md @@ -0,0 +1,178 @@ +# @hm-design/sw 컴포넌트 카탈로그 + +기준: `@hm-design/sw` 0.2.0, `dist/index.d.ts` 공개 Export(2026-10-19 통합 개선 반영). 출처 Commit·빌드 도구 버전은 `dist/build-info.json`에 있습니다. 모든 Import는 `from "@hm-design/sw"`이며 CSS는 `@hm-design/sw/styles.css` 한 개입니다. 이 표에 없는 이름은 공개 API가 아닙니다. + +- **단독 사용:** `SWHeader` 밖에서는 `` 안에 둡니다(토큰·글꼴·버튼 초기화). +- **상태 소유:** 값은 Props, 사용자 행동은 Callback입니다. 컴포넌트는 CAD 데이터를 바꾸지 않습니다. 호스트가 Callback을 받아 Props를 갱신합니다. +- **열림 상태:** Dropdown은 `open` / `onOpenChange`(Controlled)를 주지 않으면 내부 상태로 동작합니다. +- **공통 키보드:** Click·Enter·Space 열기/닫기(Hover로는 열리지 않음), ArrowDown 열고 첫(현재) 항목 Focus, Arrow 이동, Escape·바깥 클릭·Tab 이탈 닫기(Escape는 Trigger로 Focus 복귀). +- **검증 표시:** ✅ = 2026-10-19 독립 소비 프로젝트(Tarball 설치)에서 브라우저 검증, ◻ = 소비 검증 범위 밖(Storybook 검증 기록만 있음). +- **먼저 모드:** SW 일반 모드(편집) / SW 뷰어 모드(도면 보기)를 [AI_USAGE.md](./AI_USAGE.md) §0으로 정합니다. **뷰어 모드는 §9(`SWViewer*`)만** 쓰고, 아래 §1~8은 일반 모드용입니다. 두 모드를 한 화면에 섞지 않습니다. +- **무엇을 쓸까(일반 모드):** Header 전체 → `SWHeader`(1). Header 부품 조합 → 개별 컨트롤(2). 팝업·설정창·정보창 → `SWPopup`(3). 도구 막대·탭·토글 → `SWToolButton` / `SWToolGroup`(4). 로고 클릭 2단 메뉴·최근파일 → `SWHeader homeMenu` / `SWHomeMenu`(5). 게이지바(투명도 등)는 `SWSlider`, 선택 목록(단위 등)은 `SWSelect`(3). Switch·Badge·Progress·Dialog(모달)·Label·FilterBar는 SW에 없습니다 → `@hm-design/ui`를 그대로 씁니다(필요하면 `SWPopup` children 안에). +- **무엇을 쓸까(일반 모드 하단):** 하단 명령 막대(보조기능·명령 칸·분류 탭·명령어 전체보기) → `SWFooter`, 도면 공간 탭(Model/Layout) → `SWFooterLayoutTabs`, 명령창 → `SWFooterCommandLine`(10, [FOOTER.md](./FOOTER.md)). +- **무엇을 쓸까(뷰어 모드):** Header → `SWViewerHeader`(`groups` + `trailing`), Dropdown·우클릭 → `SWViewerMenu`, 팝업·설정창·모달 → `SWViewerPanel` + `SWViewerSection`/`SWViewerField`/`SWViewerSwitch`/`SWViewerSlider`/`SWViewerInput`/`SWViewerButton`, 상태 → `SWViewerStatus`(9). + +## 1. 완성형 템플릿 + +### `SWHeader` ✅ +SW 공식 기준 Header(Figma 26:8944, 1920 × 49). 로고 · 파일 · 객체 수정 영역(그리기모드, 레이어/색상/선/문자/치수스타일, 상세보기) · 창 영역(인쇄·K, 창 이동, 최소화, 종료)과 반응형 More, 속성Bar, 속성창을 포함합니다. + +| 구분 | Props / Callback | +|---|---| +| 필수 | `documentTitle: string` | +| 구성 | `hiddenControls?: SWHeaderHideableControlId[]`(로고 외 부품 제거, `home` 제거 시 정적 로고. 하위 항목 `documentNew`·`documentOpen`·`layerFreeze`·`layerLock`도 제거 — 레이아웃 변화 없음), `menuOrder?: SWHeaderMenuId[]`(5개 메뉴끼리 순서), `controls?: SWHeaderControlConfig[]`(객체 영역 전체 allowlist·순서·label) | +| 로고 오른쪽 | `documentOpenPlacement?: "menu" \| "header"`(기본 `menu` = 기존 Dropdown 하단. `header` = 로고 바로 오른쪽에 파일명과 같은 면의 Open 버튼, Dropdown의 Open은 숨김. 둘 다 `onDocumentOpen`·`documentOpenLabel`), `leading?: ReactNode`(Open 뒤·파일명 앞 추가 부품, 예: `SWToolButton appearance="document"`) | +| 로고 | `logo?: ReactNode`, `logoSrc?: string`, `logoAlt?: string`, `onHomeClick`(`homeMenu`가 없을 때만 호출) | +| 로고 클릭 메뉴 | `homeMenu?: SWHeaderHomeMenu`(= `SWHomeMenu` Props에서 열림 상태 제외, 5절), `homeMenuOpen`, `defaultHomeMenuOpen`(기본 false), `onHomeMenuOpenChange(open, reason: SWHeaderHomeMenuChangeReason)` | +| 파일 | `documents`, `activeDocumentId`, `documentMenuOpen`, `onDocumentMenuOpenChange`, `onDocumentSelect`, `onDocumentClose`, `onDocumentNew`, `onDocumentOpen`, `onDocumentClick`, `documentIcon`, `documentNewLabel`, `documentOpenLabel` | +| 레이어 | `layer`, `layers`, `activeLayerId`, `layerMenuOpen`, `onLayerMenuOpenChange`, `onLayerSelect`, `onLayerVisibilityChange`, `onLayerFreezeChange`, `onLayerLockChange`, `onLayerDetail`, `onLayerOpen` | +| 색상 | `color`, `colors`, `userColors`, `colorMode`, `colorMenuOpen`, `onColorMenuOpenChange`, `onColorSelect`, `onColorModeChange`, `onColorInput`, `onColorPick`, `onColorDetail`, `onColorOpen` | +| 선스타일 | `lineStyle`, `lineTypes`, `lineWeights`, `activeLineTypeId`, `activeLineWeightId`, `lineStyleMenuOpen`, `onLineStyleMenuOpenChange`, `onLineTypeSelect`, `onLineWeightSelect`, `onLineWeightValueChange`, `onLineScaleChange`, `onLineStyleDetail`, `onLineStyleOpen` | +| 문자/치수 | `textStyle`, `textStyles`, `activeTextStyleId`, `textStyleMenuOpen`, `onTextStyleMenuOpenChange`, `onTextStyleSelect`, `onTextStyleDetail`, `onTextStyleOpen` / `dimensionStyle`, `dimensionStyles`, `activeDimensionStyleId`, `dimensionStyleMenuOpen`, `onDimensionStyleMenuOpenChange`, `onDimensionStyleSelect`, `onDimensionStyleDetail`, `onDimensionStyleOpen` | +| 상세 | `propertyBar`, `propertyBarOpen`, `defaultPropertyBarOpen`, `onPropertyBarOpenChange`, `onPropertyBarToggle`, `propertyPanel`, `propertyPanelOpen`, `onPropertyPanelOpenChange`, `onPropertyPanelToggle` | +| 창 | `onPrint`, `onPopupGuide`, `onWindowMoveStart(PointerEvent)`, `onMinimize`, `onClose` | +| 기타 | `activeMenu`, `disabled`(창 버튼 제외), `drawingModeLabel`, `tools?: ReactNode`(객체 영역 메뉴 뒤), `
    ` HTML 속성·`ref` | + +- 데이터 배열(`layers`, `colors`, `lineTypes`/`lineWeights`, `textStyles`, `dimensionStyles`, `documents`)을 주지 않으면 해당 필드는 Dropdown 없는 버튼입니다. +- 반응형(More·대표 필드 전환·창 영역 축소)은 **`SWHeader` 안에서만** 동작합니다(CSS container `hm-sw-header`). 조합형 구성이 반응형이어야 하면 `controls` + `documentOpenPlacement` + `leading` + `tools`로 `SWHeader` 안에서 구성합니다(예제 F). +- 로고 옆 Open은 실제 공간을 측정해 넘칠 때만 More로 이동하고, 그 시점보다 Open 폭만큼 넓어지면 돌아옵니다. Open이 보이는 동안 파일명이 먼저 줄고 레이어 필드는 Figma 폭을 유지합니다. +- 메뉴도 고정 폭만이 아니라 실제 남은 공간을 기준으로 More에 옮기고 공간이 생기면 원래 자리·순서로 돌려놓습니다(Breakpoint는 그대로, 추가 Prop 없음). 메뉴를 열고 닫아도 Header 요소의 위치·폭은 바뀌지 않습니다. +```tsx + setId(l.id)} onClose={closeWindow} /> +``` + +## 2. 개별 컨트롤 (조합용) + +| 컴포넌트 | 용도 | 주요 Props / Callback | 크기(Figma) | 상태 | 검증 | +|---|---|---|---|---|---| +| `SWTheme` | 단독 사용 범위(토큰·글꼴·초기화). 배치는 정하지 않음 | `div` HTML 속성, `className`, `style`(토큰 override — 가장 바깥 SW 범위에서 지정하면 안쪽 Header·Dropdown·More·Panel·명령창이 상속, [AI_USAGE.md](./AI_USAGE.md) §3.1) | — | — | ✅ | +| `SWHeaderHome` | 로고 슬롯 + 홈 버튼 | `logo`, `logoSrc`, `logoAlt`, `onClick`, `interactive`(false = 정적 로고) | 80 × 48, 로고 슬롯 32 × 17, 오른쪽 −17px로 다음 파일 면과 겹침 | Hover 배경 교체, Focus | ✅ | +| `SWHeaderDocumentTitle` | 파일명 + 문서 Dropdown(+ New / Open) | `title`(필수), `documents`, `activeDocumentId`, `menuOpen`, `onMenuOpenChange`, `onDocumentSelect`, `onDocumentClose`, `onNew`, `onOpen`, `onClick`, `documentIcon`, `newLabel`, `openLabel`, `label`, `showNew` / `showOpen`(기본 true, 둘 다 false면 하단 없음) | 높이 48, 폭 190–310(반응형 clamp), 메뉴 310 | 텍스트만 Hover #FFC600, 열림 화살표 회전 | ✅ | +| `SWHeaderLayerMenu` | 레이어 필드 + Dropdown | `value`(필수), `layers`(필수), `activeLayerId`, `open`, `onOpenChange`, `onClick`, `selected`, `disabled`, `onLayerSelect`, `onVisibilityChange`, `onFreezeChange`, `onLockChange`, `onDetail`, `label`, `showFreeze` / `showLock`(기본 true. false = 그 상태를 그리지 않고 20px 자리만 유지) | 필드 234 × 38, 메뉴 234 | Hover 링, Selected, Expanded, 행 Hover | ✅ | +| `SWHeaderColorMenu` | 색상 필드 + Dropdown(ByLayer/ByBlock, 팔레트, 사용자 색, 추출, RGB 입력) | `value`, `colors`(필수), `userColors`, `mode`, `open`, `onOpenChange`, `onClick`, `selected`, `disabled`, `onColorSelect`, `onModeChange`, `onColorInput`, `onPick`, `onDetail`, `label` | 필드 192 × 38 | 칩 선택 시 열림 유지 | ✅ | +| `SWHeaderLineStyleMenu` | 선스타일 필드 + 3열 Dropdown | `value`, `lineTypes`, `lineWeights`, `activeLineTypeId`, `activeLineWeightId`, `open`, `onOpenChange`, `onClick`, `selected`, `disabled`, `onLineTypeSelect`, `onLineWeightSelect`, `onLineWeightValueChange`, `onScaleChange`, `onDetail`, `label` | 필드 284 × 38, 열 182·142·142(필드 중앙 정렬) | 열별 선택, 열림 유지 | ✅ | +| `SWHeaderTextStyleMenu` | 문자스타일 필드 + 목록 | `value`, `textStyles`(필수), `activeTextStyleId`, `onTextStyleSelect`, `open`, `onOpenChange`, `onClick`, `selected`, `disabled`, `onDetail`, `label` | 필드 164 × 38 | 선택 시 닫힘 | ✅ | +| `SWHeaderDimensionStyleMenu` | 치수스타일 필드 + 목록 | `value`, `dimensionStyles`(필수), `activeDimensionStyleId`, `onDimensionStyleSelect`, 열림·`onDetail`·`label` 동일 | 필드 164 × 38 | 선택 시 닫힘 | ✅ | +| `SWHeaderLayerControl` · `SWHeaderColorControl` · `SWHeaderLineStyle` · `SWHeaderTextStyle` · `SWHeaderDimensionStyle` | Dropdown 없는 필드 버튼(호스트가 자체 팝업을 열 때) | `value`(필수), `label`, `selected`, `disabled`, `onClick`, `expanded`, `controls`, `buttonRef` / `SWHeaderLayerControl`은 `state`(표시·동결·잠금), `showFreeze` / `showLock` | 위 필드 크기와 같음 | Hover 링, Selected | ◻ | +| `SWHeaderActions` | 인쇄·K 버튼 pill | `onPrint`, `onPopupGuide`, `disabled`, `showPrint`, `showPopupGuide`(하나만 남기면 pill이 축소) | pill 85 × 42(버튼 40 × 38) | 아이콘 Hover, Hover 링, K 가이드 미리보기(반복 Motion, Reduced Motion 정적) | ✅ | +| `SWHeaderWindowControls` | 창 이동·최소화·종료 | `onWindowMoveStart`, `onMinimize`, `onClose`, `showWindowMove`, `showMinimize`, `showClose` | 이동 88 × 48, 버튼 32 × 48 | 창 이동 Hover Motion 1.4s, 종료 Hover 자산 | ◻ | +| `SWHeaderProperties` | 상세보기 / 속성Bar · 속성창 토글 | `barOpen`, `panelOpen`, `panelId`, `disabled`, `onBarToggle`, `onPanelToggle`, `showCaption`, `showBar`, `showPanel` | 157 × 38 | 텍스트 Hover #FFC600 | ◻ | +| `SWHeaderPropertyBar` | 28px 속성 편집 띠 | `selection`, `properties`, `onPropertyChange`, `readOnly`, `disabled`, `div` 속성 | 높이 28, 콘텐츠 폭 | Input 상태 | ◻ | +| `SWHeaderPropertyPanel` | 데이터 기반 속성창(필드 타입 6종 `text`·`number`·`select`·`color`·`slider`·`computed` + picker, 그룹 레이아웃 `rows`·`circle`·`position`, 형상 Slot) | `selection`·`properties`·`groups`(0.2.0부터 선택), `title`, `children`(그룹 뒤 자유 콘텐츠), `autoFocus`, `onPropertyChange`, `menus`(`showLayerFreeze`/`showLayerLock` 포함), `expandedGroupIds`/`defaultExpandedGroupIds`/`onExpandedGroupsChange`, `toolActive`/`onToolActiveChange`, `toolLabel`, `onOverviewClick`, `shapeContent`, `onClose`, `id`, `anchorRef`, `style` | 314 폭, 높이는 콘텐츠(최대 화면, 본문 스크롤). `anchorRef`가 있으면 고정 위치 Overlay, 없으면 문서 흐름(위치는 `style`) | 4가지 선택 상태 | ✅ | +| `SWHeaderInput` | 수정 가능한 SW Input | `value`(필수), `onValueChange`, `onCommit`(Enter·Blur, 유효 + 변경 시), `onCancel`(Escape 복원), `valueType`(`text`/`number`), `parse`, `readOnly`, `disabled`, `commitOnUnmount`, `input` 속성 | 58 × 20 기준, Hover/편집 24px | Default/Hover/편집/ReadOnly/Disabled, IME 조합 중 Enter 무시 | ✅ | +| `parseSWHeaderColor` · `parseSWHeaderNumber` | Input 검증 도우미 | `r,g,b` / `#rrggbb`, 숫자(`min`, `max`) | — | — | ◻ | +| `SWHeaderLinePreview` · `swHeaderLinePatterns` | 70 × 2 선 미리보기, CENTER/HIDDEN 패턴 | `pattern?: number[]` | 70 × 2 | — | ◻(패턴 상수만 예제 데이터에서 사용) | + +## 3. Popup — 외형 고정, 콘텐츠 자유 + +속성창(Figma 26:11822)의 외형과 공통 동작을 그대로 쓰는 Popup입니다. Header 없이 `` 안에서 씁니다. 내용은 `children`으로 자유롭게 구성합니다(SW 컨트롤, `@hm-design/ui` 컴포넌트, 소비 프로젝트 요소 모두 가능, 구조 제한 없음). + +| 컴포넌트 | 용도 | 주요 Props | 크기·동작 | 검증 | +|---|---|---|---|---| +| `SWPopup` | 설정·정보·사용자 정의 Popup 프레임 | `title`(필수), `children`, `onClose`(닫기 버튼·Escape), `closeLabel`(기본 `닫기`), `titleActions`(제목 막대 닫기 버튼 앞 추가 버튼), `footer`(본문 뒤 고정 영역, 본문이 스크롤해도 보임), `autoFocus`(열릴 때 Focus, 안에서 닫히면 원래 위치로 복귀. 기본: `anchorRef`가 있으면 true, 없으면 false), `anchorRef`(기준 요소 아래 고정 Overlay), `style`·`className`·`div` 속성 | 폭 314, 제목줄 30, 높이는 콘텐츠(최대 화면 − 8px, `style.maxHeight`로 더 줄일 수 있음) → 본문 스크롤. Non-modal(Dim·Portal·Focus trap 없음) | ✅ | +| `SWPopupSection` | 속성창 그룹 면(제목 + 내용) | `title`, `children`, `section` 속성 | 그룹 제목 700·70% 검정, 내용 면 `--hm-sw-property-content` | ✅ | +| `SWPopupRow` | 속성창 한 줄(라벨 + 값) | `label`(필수), `htmlFor`, `children`(값 컨트롤, SW 필드는 `SWHeaderInput`), `unit`, `field`(`box` 기본 · `compact` · `none`), `numeric`(숫자 편집 On), `readOnly`, `disabled` | 행 최소 32, 라벨 72, 값 상자 28(Default·Hover 테두리, 숫자 편집 시 #0F0D0A). `compact` = 41px hug 숫자 필드 | ✅ | +| `SWSlider` | 게이지바(native range, 2026-10-20). `SWPopupRow field="none"` 안이나 `SWTheme` 안 어디든 | `value`(필수), `min`(0)·`max`(100)·`step`(1), `onValueChange`(드래그·키보드마다), `onValueCommit`(값 확정 = native `change`), `appearance`(`"panel"` 기본 · `"property"`), `disabled`, `aria-label`, `input` 속성 | 모양만 다르고 값·이벤트·키보드는 같음. `panel` = 지금까지 Popup에서 쓰던 게이지바(6px 트랙 · 18px 흰 Thumb + 2px 녹색 테두리, `SWViewerSlider`와 같은 모양), `property` = 속성창 게이지바(베이지 트랙 · 빨강 채움 · Figma Thumb 14px). 폭은 행을 채움(호스트가 `style.width`로 지정 가능). Disabled 40% | ◻ | +| `SWPopupPropertyRow` | **Popup 안 레이어·색상·선스타일 선택 행의 공식 컴포넌트**(2026-10-20). 속성창 한 줄 | `property`(`SWHeaderProperty`: `name`·`value`·`type`. 레이어 = `type: "select"` + `picker: "layer"` + `options`, 색상 = `type: "color"`(picker 자동), 선스타일 = `type: "select"` + `linePreview: true` 또는 `picker: "lineStyle"`), `menus`(`SWHeaderPropertyMenus`: `layers`·`colors`·`lineTypes`·…), `onPropertyChange(property, value)`(선택한 행 id 또는 입력값, 호스트가 `property`를 갱신), `className` | `SWHeaderPropertyPanel` 행과 같은 DOM·모양·동작(속성창 `picker` 필드, 목록은 고정 Overlay라 스크롤 본문에 잘리지 않음). **SWHeader 필드 Dropdown(`SWHeaderLayerMenu` 등)을 Popup에 넣지 않습니다** | ◻ | +| `SWSelect` | 선택 목록(native select, 2026-10-20). `SWPopupRow field="none"`, `SWViewerField`, `SWTheme` 안 어디든 | `value`/`defaultValue`, `options`(`SWSelectOption[]` = `{ value, label?, disabled? }`) 또는 `