@stn-uiux/pub-ui 0.1.58 → 0.1.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-7ASY5YJ6.js → chunk-2ZYBBVBT.js} +53 -28
- package/dist/chunk-2ZYBBVBT.js.map +1 -0
- package/dist/{chunk-EQVFEZEQ.js → chunk-3RYAWLME.js} +5 -5
- package/dist/chunk-3RYAWLME.js.map +1 -0
- package/dist/chunk-A5KLX6NX.js +1 -0
- package/dist/{chunk-UPXSNRIJ.js → chunk-AOS3IX4T.js} +2 -2
- package/dist/chunk-AOS3IX4T.js.map +1 -0
- package/dist/{chunk-XNGYRPZI.js → chunk-CHJATVOT.js} +4 -4
- package/dist/{chunk-XNGYRPZI.js.map → chunk-CHJATVOT.js.map} +1 -1
- package/dist/{chunk-DNMZJS65.js → chunk-IOBNIUK3.js} +2 -2
- package/dist/{chunk-DNMZJS65.js.map → chunk-IOBNIUK3.js.map} +1 -1
- package/dist/{chunk-TDLGKV4C.js → chunk-NHYZ7AWK.js} +2 -14
- package/dist/chunk-NHYZ7AWK.js.map +1 -0
- package/dist/{chunk-PVF77NHZ.js → chunk-Q4QXONXL.js} +4 -17
- package/dist/chunk-Q4QXONXL.js.map +1 -0
- package/dist/chunk-SQJPE6HH.js +12 -0
- package/dist/chunk-SQJPE6HH.js.map +1 -0
- package/dist/{chunk-J46EPVSY.js → chunk-XQ7UUG7Y.js} +2 -2
- package/dist/{chunk-EDXSK54U.js → chunk-YMWHZNBT.js} +2 -2
- package/dist/cli.js +10 -10
- package/dist/data/index.d.ts +1 -0
- package/dist/data/index.js +24 -20
- package/dist/data/stnBreadcrumb.js +3 -3
- package/dist/data/stnHeader.d.ts +2 -2
- package/dist/data/stnHeader.js +3 -3
- package/dist/data/stnLayout.d.ts +3 -3
- package/dist/data/stnLayout.js +1 -1
- package/dist/data/stnScroll.d.ts +1 -1
- package/dist/data/stnScroll.js +1 -1
- package/dist/data/stnSideNavItem.js +3 -3
- package/dist/data/stnStatus.d.ts +11 -0
- package/dist/data/stnStatus.js +7 -0
- package/dist/data/stnStatus.js.map +1 -0
- package/dist/data/stnSystemIcons.d.ts +1 -1
- package/dist/data/stnSystemIcons.js +2 -2
- package/dist/data/stnSystemIconsData.generated.js +1 -1
- package/dist/data/stnTable.d.ts +1 -1
- package/dist/data/stnTable.js +1 -1
- package/dist/data/stnTree.d.ts +1 -1
- package/dist/data/stnTree.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +24 -20
- package/package.json +1 -1
- package/styles/@assets/svg/system/line/chevron-left.svg +3 -0
- package/styles/components/stn-btn.css +9 -0
- package/styles/components/stn-dropdown.css +11 -4
- package/styles/components/stn-label-prefix.css +38 -0
- package/styles/components/stn-pagination.css +113 -5
- package/styles/components/stn-popup.css +1 -1
- package/styles/components/stn-scroll.css +51 -66
- package/styles/components/stn-segmented.css +3 -1
- package/styles/components/stn-status.css +851 -0
- package/styles/components/stn-table.css +106 -13
- package/styles/components/stn-text-field.css +30 -35
- package/styles/components/stn-widget.css +16 -8
- package/styles/layouts/stn-container.css +13 -9
- package/styles/layouts/stn-layer1-content.css +83 -1
- package/styles/patterns/stn-alert-center.css +29 -4
- package/styles/patterns/stn-header.css +7 -145
- package/styles/patterns/stn-section-side.css +50 -0
- package/styles/patterns/stn-tree.css +139 -82
- package/styles/style-pub.css +1 -1
- package/styles/tokens/stn-breakpoint.css +12 -0
- package/styles/tokens/stn-colors-semantic.css +5 -5
- package/styles/tokens/stn-radius-semantic.css +12 -1
- package/styles/tokens/stn-size-semantic.css +31 -4
- package/styles/tokens/stn-size.css +2 -0
- package/styles/tokens/stn-spacing-semantic.css +7 -3
- package/styles/tokens/stn-typography-semantic.css +10 -0
- package/dist/chunk-7ASY5YJ6.js.map +0 -1
- package/dist/chunk-EQVFEZEQ.js.map +0 -1
- package/dist/chunk-LHV26PEP.js +0 -1
- package/dist/chunk-PVF77NHZ.js.map +0 -1
- package/dist/chunk-TDLGKV4C.js.map +0 -1
- package/dist/chunk-UPXSNRIJ.js.map +0 -1
- package/styles/@assets/svg/system/3d/print.png +0 -0
- package/styles/@assets/svg/system/3d/print_1.png +0 -0
- package/styles/@assets/svg/system/3d/server1.png +0 -0
- package/styles/@assets/svg/system/3d/server1_1.png +0 -0
- package/styles/@assets/svg/system/3d/server2.png +0 -0
- package/styles/@assets/svg/system/3d/server2_1.png +0 -0
- package/styles/@assets/svg/system/3d/signal.png +0 -0
- package/styles/@assets/svg/system/3d/signal_1.png +0 -0
- package/styles/@assets/svg/system/3d/wifi.png +0 -0
- package/styles/@assets/svg/system/3d/wifi_1.png +0 -0
- package/styles/@assets/svg/system/ai_agent.png +0 -0
- package/styles/@assets/svg/system/line/input.svg +0 -3
- package/styles/@assets/svg/system/line/radio.svg +0 -3
- package/styles/components/stn-severity-badge.css +0 -227
- /package/dist/{chunk-LHV26PEP.js.map → chunk-A5KLX6NX.js.map} +0 -0
- /package/dist/{chunk-J46EPVSY.js.map → chunk-XQ7UUG7Y.js.map} +0 -0
- /package/dist/{chunk-EDXSK54U.js.map → chunk-YMWHZNBT.js.map} +0 -0
|
@@ -6,7 +6,7 @@ var STN_LAYOUT_PLAYGROUND_TABS = [
|
|
|
6
6
|
label: "\uB9AC\uC2A4\uD2B8\xB7\uC0C1\uC138",
|
|
7
7
|
screen: "interface_list.html \xB7 syslog_status.html",
|
|
8
8
|
shellProps: "contentModifiers={['has_lnb', 'has_sch']}",
|
|
9
|
-
assemble:
|
|
9
|
+
assemble: "StnLayerShell \u2014 gnb \xB7 header \xB7 container(LNB aside + content stack)"
|
|
10
10
|
},
|
|
11
11
|
{
|
|
12
12
|
id: "dashboard",
|
|
@@ -23,7 +23,7 @@ var STN_LAYOUT_PLAYGROUND_TABS = [
|
|
|
23
23
|
assemble: "AlertCenterPageScaffold (\uB9F5 placeholder + \uC6B0\uCE21 4\uC704\uC82F)"
|
|
24
24
|
}
|
|
25
25
|
];
|
|
26
|
-
var STN_LAYOUT_LIST_VIEW_INTRO = "List view\uB294 \uBC30\uACBD \xB7 Side Navigation\xB7\uD398\uC774\uC9C0 \uD5E4\uB354 \xB7 \uD2B8\uB9AC LNB \xB7 \uAC80\uC0C9 \xB7 \uD45C\uB85C \uAD6C\uC131\uB429\uB2C8\uB2E4.
|
|
26
|
+
var STN_LAYOUT_LIST_VIEW_INTRO = "List view\uB294 \uBC30\uACBD \xB7 Side Navigation \xB7 \uD398\uC774\uC9C0 \uD5E4\uB354 \xB7 \uD2B8\uB9AC LNB \xB7 \uAC80\uC0C9 \xB7 \uD45C\uB85C \uAD6C\uC131\uB429\uB2C8\uB2E4. StnLayerShell \uC544\uB798 StnContainer + StnStack\uC73C\uB85C \uB808\uC774\uC544\uC6C3\uC744 \uD22C\uBA85\uD558\uAC8C \uC870\uB9BD\uD569\uB2C8\uB2E4. Playground\uC5D0\uC11C \uC635\uC158\uC744 \uACE0\uB978 \uB4A4 \uC0DD\uC131\uB41C React/HTML \uCF54\uB4DC\uB97C \uBCF5\uC0AC\uD558\uC138\uC694.";
|
|
27
27
|
var STN_LAYOUT_LIST_VIEW_BARE_USAGE = `import {
|
|
28
28
|
StnLayerShell,
|
|
29
29
|
StnListViewLayout,
|
|
@@ -62,9 +62,13 @@ var STN_LAYOUT_LIST_LAYER_TABS = [
|
|
|
62
62
|
{ id: "l2", label: "L2 Modal" }
|
|
63
63
|
];
|
|
64
64
|
var STN_LAYOUT_LIST_VIEW_USAGE = `import {
|
|
65
|
-
|
|
65
|
+
StnLayerShell,
|
|
66
|
+
StnContainer,
|
|
67
|
+
StnStack,
|
|
66
68
|
StnHeader,
|
|
67
69
|
StnSideNavigation,
|
|
70
|
+
StnSectionSide,
|
|
71
|
+
StnTree,
|
|
68
72
|
StnSearchRequirementBar,
|
|
69
73
|
StnTable,
|
|
70
74
|
StnPagination,
|
|
@@ -73,29 +77,50 @@ var STN_LAYOUT_LIST_VIEW_USAGE = `import {
|
|
|
73
77
|
|
|
74
78
|
export function InterfaceListPage() {
|
|
75
79
|
return (
|
|
76
|
-
<
|
|
77
|
-
shell="layer"
|
|
80
|
+
<StnLayerShell
|
|
78
81
|
lnbSide="left"
|
|
79
|
-
gnb={<StnSideNavigation />}
|
|
82
|
+
gnb={<StnSideNavigation collapsed />}
|
|
80
83
|
header={<StnHeader variant="page" />}
|
|
81
|
-
contentModifiers={['has_lnb', 'has_sch']}
|
|
82
|
-
search={
|
|
83
|
-
<StnSearchRequirementBar>{/* Fields \xB7 SearchButton */}</StnSearchRequirementBar>
|
|
84
|
-
}
|
|
85
84
|
>
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
<
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
85
|
+
{/* 2\uB2E8\uACC4: \uCD5C\uC0C1\uC704 \uBCF8\uBB38 \uCEE8\uD14C\uC774\uB108 */}
|
|
86
|
+
<StnContainer maxWidth={false}>
|
|
87
|
+
{/* 3\uB2E8\uACC4: \uD0DC\uBE14\uB9BF/\uBAA8\uBC14\uC77C(<1280px)=\uC138\uB85C \uC313\uAE30 / \uB370\uC2A4\uD06C\uD1B1(lg \u2265 1280px)=\uAC00\uB85C 2\uBD84\uD560 */}
|
|
88
|
+
<StnStack direction={{ xs: 'column', lg: 'row' }} spacing={2}>
|
|
89
|
+
{/* [LNB] \uBAA8\uBC14\uC77C: \uC0C1\uB2E8 full-width / \uB370\uC2A4\uD06C\uD1B1: 264px \uACE0\uC815 (StnSectionSide CSS) */}
|
|
90
|
+
<aside style={{ display: 'flex', flexDirection: 'column' }}>
|
|
91
|
+
<StnSectionSide fill fullWidth>
|
|
92
|
+
<StnTree size="md" nodes={treeNodes} />
|
|
93
|
+
</StnSectionSide>
|
|
94
|
+
</aside>
|
|
95
|
+
|
|
96
|
+
{/* [\uC6B0\uCE21 \uBCF8\uBB38] \uAC80\uC0C9\uBC14 + \uD45C \uB370\uC774\uD130 \uADF8\uB9AC\uB4DC \uC138\uB85C \uC2A4\uD0DD */}
|
|
97
|
+
<StnStack
|
|
98
|
+
direction="column"
|
|
99
|
+
spacing={2}
|
|
100
|
+
style={{ flex: 1, minWidth: 0, minHeight: 0 }}
|
|
101
|
+
>
|
|
102
|
+
<StnSearchRequirementBar>
|
|
103
|
+
{/* Fields \xB7 SearchButton \xB7 Export */}
|
|
104
|
+
</StnSearchRequirementBar>
|
|
105
|
+
|
|
106
|
+
<StnTable
|
|
107
|
+
fill
|
|
108
|
+
trackVisited
|
|
109
|
+
summary="\uCD1D 128\uAC1C (1 to 20)"
|
|
110
|
+
footerCenter={<StnPagination page={1} count={8} />}
|
|
111
|
+
footerRight={
|
|
112
|
+
<>
|
|
113
|
+
<StnButton size="md" variant="contained">\uB4F1\uB85D</StnButton>
|
|
114
|
+
<StnButton size="md" variant="ghost">\uC218\uC815</StnButton>
|
|
115
|
+
</>
|
|
116
|
+
}
|
|
117
|
+
>
|
|
118
|
+
<StnTable.Grid>{/* StnTable.Head + Body */}</StnTable.Grid>
|
|
119
|
+
</StnTable>
|
|
120
|
+
</StnStack>
|
|
121
|
+
</StnStack>
|
|
122
|
+
</StnContainer>
|
|
123
|
+
</StnLayerShell>
|
|
99
124
|
)
|
|
100
125
|
}`;
|
|
101
126
|
var STN_LAYOUT_MAP_DASHBOARD_INTRO = '\uB300\uC2DC\uBCF4\uB4DC\uB294 L0 \uBC30\uACBD \xB7 L1(header \uD06C\uB86C + content \uBCF8\uBB38 \uB2E8 \uD558\uB098) \xB7 L2 \uBAA8\uB2EC\uC785\uB2C8\uB2E4. \uBCF8\uBB38\uC740 `layer1` \uC2AC\uB86F\uC774 \uC544\uB2C8\uB77C `left`/`right`/`children`\uC73C\uB85C \uC870\uB9BD\uD569\uB2C8\uB2E4. `DashboardPageScaffold` (type="map" | "topology" | "widget-grid").';
|
|
@@ -148,9 +173,9 @@ var STN_LAYOUT_WHEN_TO_USE = [
|
|
|
148
173
|
export: "StnPageScaffold.*"
|
|
149
174
|
},
|
|
150
175
|
{
|
|
151
|
-
situation: "\uB300\uD45C HTML \uD55C \uC7A5\uC744 1\uB2E8\uACC4\uB85C (
|
|
176
|
+
situation: "\uB300\uD45C HTML \uD55C \uC7A5\uC744 1\uB2E8\uACC4\uB85C (alert_center, map)",
|
|
152
177
|
use: "\uD654\uBA74\uBCC4 \uB808\uC2DC\uD53C (\uB0B4\uBD80\uC5D0\uC11C Shell \uC774\uBBF8 \uD3EC\uD568)",
|
|
153
|
-
export: "
|
|
178
|
+
export: "DashboardPageScaffold \xB7 AlertCenterPageScaffold"
|
|
154
179
|
},
|
|
155
180
|
{
|
|
156
181
|
situation: "L3 \uD31D\uC5C5 \uBCF8\uBB38 \uC790\uB9AC\uB9CC \uD45C\uC2DC",
|
|
@@ -168,9 +193,9 @@ var STN_LAYOUT_SCREEN_RECIPES = [
|
|
|
168
193
|
id: "list",
|
|
169
194
|
label: "\uB9AC\uC2A4\uD2B8\xB7\uC0C1\uC138",
|
|
170
195
|
pubExamples: "interface_list.html \xB7 syslog_status.html",
|
|
171
|
-
reactRecipe: "
|
|
196
|
+
reactRecipe: "StnLayerShell + StnContainer + StnStack",
|
|
172
197
|
layoutTab: "list",
|
|
173
|
-
note: "L0 wrap \xB7 L1
|
|
198
|
+
note: "L0 wrap \xB7 L1 StnContainer + StnStack"
|
|
174
199
|
},
|
|
175
200
|
{
|
|
176
201
|
id: "dashboard-map",
|
|
@@ -459,4 +484,4 @@ export {
|
|
|
459
484
|
STN_LAYER_SHELL_USAGE,
|
|
460
485
|
STN_LAYOUT_SHELL_USAGE
|
|
461
486
|
};
|
|
462
|
-
//# sourceMappingURL=chunk-
|
|
487
|
+
//# sourceMappingURL=chunk-2ZYBBVBT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/data/stnLayout.ts"],"sourcesContent":["/**\n * Pub page layout — `.stn-wrap` · `.stn-container` · `.stn-content-area` · 대시보드 region\n * @see layout.css · StnLayerShell (@stn-uiux/pub-ui-react)\n */\n\nexport const STN_LAYOUT_INTRO = ''\n\n/** 라이브 예제 탭 — shell 종류 + 대표 화면 레시피 */\nexport const STN_LAYOUT_PLAYGROUND_TABS: readonly {\n id: 'list' | 'dashboard' | 'alert-center'\n label: string\n screen: string\n shellProps: string\n assemble: string\n}[] = [\n {\n id: 'list',\n label: '리스트·상세',\n screen: 'interface_list.html · syslog_status.html',\n shellProps: \"contentModifiers={['has_lnb', 'has_sch']}\",\n assemble: 'StnLayerShell — gnb · header · container(LNB aside + content stack)',\n },\n {\n id: 'dashboard',\n label: '맵·대시보드',\n screen: 'basic/map.html · dashboard_map …',\n shellProps: \"bodyWrapper='none'\",\n assemble: 'DashboardPageScaffold · MapPlaceholder + dashboard_right',\n },\n {\n id: 'alert-center',\n label: '알림센터',\n screen: 'basic/alert_center.html',\n shellProps: \"bodyWrapper='none' · network_topology_header · GNB 알림패널\",\n assemble: 'AlertCenterPageScaffold (맵 placeholder + 우측 4위젯)',\n },\n]\n\nexport const STN_LAYOUT_LIST_VIEW_INTRO =\n 'List view는 배경 · Side Navigation · 페이지 헤더 · 트리 LNB · 검색 · 표로 구성됩니다. StnLayerShell 아래 StnContainer + StnStack으로 레이아웃을 투명하게 조립합니다. Playground에서 옵션을 고른 뒤 생성된 React/HTML 코드를 복사하세요.'\n\n/** 라이브러리 내부 조립 참고 — 제품 화면은 `STN_LAYOUT_LIST_VIEW_USAGE` 참고 */\nexport const STN_LAYOUT_LIST_VIEW_BARE_USAGE = `import {\n StnLayerShell,\n StnListViewLayout,\n StnSideNavigation,\n StnHeader,\n StnSearchRequirementBar,\n StnSectionSide,\n StnTable,\n} from '@stn-uiux/pub-ui-react'\n\n/** StnLayerShell 안 — L1 listview 그리드만 (이중 L0/L2 없음) */\nexport function InterfaceListPage() {\n return (\n <StnLayerShell\n gnb={<StnSideNavigation collapsed />}\n header={<StnHeader variant=\"page\" />}\n contentModifiers={['has_lnb', 'has_sch']}\n lnbSide=\"left\"\n >\n <StnListViewLayout\n bare\n sidebar={<StnSectionSide>{/* StnTree */}</StnSectionSide>}\n search={\n <StnSearchRequirementBar>{/* Fields · SearchButton */}</StnSearchRequirementBar>\n }\n >\n <StnTable summary=\"목록\" />\n </StnListViewLayout>\n </StnLayerShell>\n )\n}`\n\n/** List view 문서 탭 */\nexport type StnLayoutListLayerTabId = 'live' | 'l0' | 'l1' | 'l2'\n\nexport const STN_LAYOUT_LIST_LAYER_TABS: {\n id: StnLayoutListLayerTabId\n label: string\n}[] = [\n { id: 'live', label: '전체' },\n { id: 'l0', label: 'L0 Background' },\n { id: 'l1', label: 'L1 Main UI' },\n { id: 'l2', label: 'L2 Modal' },\n]\n\nexport const STN_LAYOUT_LIST_VIEW_USAGE = `import {\n StnLayerShell,\n StnContainer,\n StnStack,\n StnHeader,\n StnSideNavigation,\n StnSectionSide,\n StnTree,\n StnSearchRequirementBar,\n StnTable,\n StnPagination,\n StnButton,\n} from '@stn-uiux/pub-ui-react'\n\nexport function InterfaceListPage() {\n return (\n <StnLayerShell\n lnbSide=\"left\"\n gnb={<StnSideNavigation collapsed />}\n header={<StnHeader variant=\"page\" />}\n >\n {/* 2단계: 최상위 본문 컨테이너 */}\n <StnContainer maxWidth={false}>\n {/* 3단계: 태블릿/모바일(<1280px)=세로 쌓기 / 데스크톱(lg ≥ 1280px)=가로 2분할 */}\n <StnStack direction={{ xs: 'column', lg: 'row' }} spacing={2}>\n {/* [LNB] 모바일: 상단 full-width / 데스크톱: 264px 고정 (StnSectionSide CSS) */}\n <aside style={{ display: 'flex', flexDirection: 'column' }}>\n <StnSectionSide fill fullWidth>\n <StnTree size=\"md\" nodes={treeNodes} />\n </StnSectionSide>\n </aside>\n\n {/* [우측 본문] 검색바 + 표 데이터 그리드 세로 스택 */}\n <StnStack\n direction=\"column\"\n spacing={2}\n style={{ flex: 1, minWidth: 0, minHeight: 0 }}\n >\n <StnSearchRequirementBar>\n {/* Fields · SearchButton · Export */}\n </StnSearchRequirementBar>\n\n <StnTable\n fill\n trackVisited\n summary=\"총 128개 (1 to 20)\"\n footerCenter={<StnPagination page={1} count={8} />}\n footerRight={\n <>\n <StnButton size=\"md\" variant=\"contained\">등록</StnButton>\n <StnButton size=\"md\" variant=\"ghost\">수정</StnButton>\n </>\n }\n >\n <StnTable.Grid>{/* StnTable.Head + Body */}</StnTable.Grid>\n </StnTable>\n </StnStack>\n </StnStack>\n </StnContainer>\n </StnLayerShell>\n )\n}`\n\nexport const STN_LAYOUT_MAP_DASHBOARD_INTRO =\n '대시보드는 L0 배경 · L1(header 크롬 + content 본문 단 하나) · L2 모달입니다. 본문은 `layer1` 슬롯이 아니라 `left`/`right`/`children`으로 조립합니다. `DashboardPageScaffold` (type=\"map\" | \"topology\" | \"widget-grid\").'\n\n/** Map / Dashboard 문서 탭 — List view와 동일 층 모델 */\nexport type StnLayoutMapLayerTabId = StnLayoutListLayerTabId\n\nexport const STN_LAYOUT_MAP_LAYER_TABS: {\n id: StnLayoutMapLayerTabId\n label: string\n}[] = [\n { id: 'live', label: '전체' },\n { id: 'l0', label: 'L0 Background' },\n { id: 'l1', label: 'L1 Main UI' },\n { id: 'l2', label: 'L2 Modal' },\n]\n\nexport const STN_LAYOUT_MAP_DASHBOARD_USAGE = `import { DashboardPageScaffold, StnLayer0Background, StnSideNavigation, StnHeader } from '@stn-uiux/pub-ui-react'\n\nexport function TopologyMapPage() {\n return (\n <DashboardPageScaffold\n type=\"map\"\n shell=\"layer\"\n gnbSide=\"left\"\n layer0={<StnLayer0Background variant=\"map-light\" />}\n gnb={<StnSideNavigation collapsed />}\n header={<StnHeader variant=\"dashboard\" />}\n />\n )\n}`\n\nexport const STN_LAYOUT_MAP_DASHBOARD_HEADER_USAGE = `import {\n DashboardPageScaffold,\n StnHeader,\n StnSideNavigation,\n} from '@stn-uiux/pub-ui-react'\n\nexport function TopologyMapPage() {\n return (\n <DashboardPageScaffold\n type=\"topology\"\n shell=\"layer\"\n gnb={<StnSideNavigation collapsed />}\n header={<StnHeader variant=\"widget\" />}\n mapMessage=\"토폴로지 맵\"\n />\n )\n}`\n\n/** 경우의 수 — 무엇을 쓸지 */\nexport const STN_LAYOUT_WHEN_TO_USE: readonly {\n situation: string\n use: string\n export: string\n}[] = [\n {\n situation: '표준 3단계 층위 기반 페이지 구성',\n use: 'StnLayerShell — L0 Background · L1 Main UI · L2 Modal',\n export: 'StnLayerShell · lnbSide left|right',\n },\n {\n situation: '구역 라벨만 빠르게 (lnb, search, 맵 빈칸)',\n use: 'Shell + StnPageScaffold.Region / MapPlaceholder',\n export: 'StnPageScaffold.*',\n },\n {\n situation: '대표 HTML 한 장을 1단계로 (alert_center, map)',\n use: '화면별 레시피 (내부에서 Shell 이미 포함)',\n export: 'DashboardPageScaffold · AlertCenterPageScaffold',\n },\n {\n situation: 'L3 팝업 본문 자리만 표시',\n use: 'StnLayer + StnPageScaffold.Layer',\n export: 'StnPageScaffold.Layer',\n },\n {\n situation: '위젯·테이블 본문이 API 로딩 중',\n use: 'Components — Loading skeleton (Layout 아님)',\n export: 'StnLoadingSkeleton',\n },\n]\n\nexport type StnLayoutScreenKind =\n | 'list'\n | 'dashboard-map'\n | 'alert-center'\n | 'converged-dashboard'\n | 'popup-overlay'\n | 'widget-board'\n | 'standard'\n\n/** @deprecated StnLayoutScreenKind */\nexport type StnPageScaffoldKind = StnLayoutScreenKind\n\nexport const STN_LAYOUT_SCREEN_RECIPES: readonly {\n id: StnLayoutScreenKind\n label: string\n pubExamples: string\n reactRecipe: string\n layoutTab: 'list' | 'dashboard'\n note: string\n}[] = [\n {\n id: 'list',\n label: '리스트·상세',\n pubExamples: 'interface_list.html · syslog_status.html',\n reactRecipe: 'StnLayerShell + StnContainer + StnStack',\n layoutTab: 'list',\n note: 'L0 wrap · L1 StnContainer + StnStack',\n },\n {\n id: 'dashboard-map',\n label: '맵·대시보드',\n pubExamples: 'basic/map.html · dashboard_map …',\n reactRecipe: 'DashboardPageScaffold',\n layoutTab: 'dashboard',\n note: 'map(z50) · dashboard_left / dashboard_right',\n },\n {\n id: 'alert-center',\n label: '알림센터',\n pubExamples: 'basic/alert_center.html',\n reactRecipe: 'AlertCenterPageScaffold',\n layoutTab: 'dashboard',\n note: 'GNB 알림 · 맵 placeholder · 우측 4위젯',\n },\n {\n id: 'converged-dashboard',\n label: '융합망 대시',\n pubExamples: 'converged/dashboard_map.html',\n reactRecipe: 'DashboardPageScaffold (converged_header)',\n layoutTab: 'dashboard',\n note: 'wrap-converged',\n },\n {\n id: 'popup-overlay',\n label: '팝·딤',\n pubExamples: 'regist_pop.html · widget_dim.html',\n reactRecipe: 'StnPageScaffold.Layer + StnPopup',\n layoutTab: 'list',\n note: 'L3/L4',\n },\n {\n id: 'widget-board',\n label: '위젯보드',\n pubExamples: 'widgetboard/widget*.html',\n reactRecipe: 'StnWidget shell=board',\n layoutTab: 'dashboard',\n note: 'board-item',\n },\n {\n id: 'standard',\n label: '일반 콘텐츠',\n pubExamples: 'CCTV · node tools …',\n reactRecipe: 'StnLayerShell + Region',\n layoutTab: 'list',\n note: 'head_area · stn-content-area',\n },\n]\n\n/** @deprecated STN_LAYOUT_SCREEN_RECIPES */\nexport const STN_PAGE_SCAFFOLD_KINDS = STN_LAYOUT_SCREEN_RECIPES\n\nexport const STN_LAYOUT_SLOT_USAGE = `import { StnPageScaffold, StnLayer, StnPopup } from '@stn-uiux/pub-ui-react'\n\n/** Shell children 안 — 구역 라벨 */\n<StnLayerShell gnb={<StnSideNavigation />} contentModifiers={['has_lnb', 'has_sch']} header={…}>\n <StnPageScaffold.Region label=\"lnb_box\" hint=\"LNB 트리\" />\n <StnPageScaffold.Region label=\"search_area\" />\n</StnLayerShell>\n\n/** 맵 빈 칸 */\n<StnPageScaffold.MapPlaceholder message=\"맵은 추후 연동\" />\n\n/** 맵 빈 본문 — L0만 보이는 캔버스 (위젯·placeholder 없음) */\n<DashboardPageScaffold bodyEmpty shell=\"layer\" gnb={gnb} layer0={layer0} />\n\n/** L3 팝업 슬롯 */\n<StnLayer level={3} surface=\"transparent\">\n <StnPageScaffold.Layer level={3} label=\"팝업 본문\">\n <StnPopup open>…</StnPopup>\n </StnPageScaffold.Layer>\n</StnLayer>`\n\nexport const STN_LAYOUT_ALERT_CENTER_USAGE = `import { AlertCenterPageScaffold } from '@stn-uiux/pub-ui-react'\n\n<AlertCenterPageScaffold mapMessage=\"맵은 추후 연동\" showFaultPanelPlaceholder />`\n\n/** @deprecated */\nexport const STN_PAGE_SCAFFOLD_COMPOUND_USAGE = STN_LAYOUT_SLOT_USAGE\n\n/** @deprecated */\nexport const STN_ALERT_CENTER_PAGE_SCAFFOLD_USAGE = STN_LAYOUT_ALERT_CENTER_USAGE\n\n/** @deprecated */\nexport const STN_PAGE_SCAFFOLD_INTRO = STN_LAYOUT_INTRO\n\nexport const STN_LAYOUT_RECIPES: readonly {\n id: 'list' | 'dashboard'\n label: string\n screen: string\n shellProps: string\n childrenHint: string\n}[] = [\n {\n id: 'list',\n label: '리스트·상세',\n screen: 'interface_list, syslog_status …',\n shellProps: 'contentModifiers={[\\'has_lnb\\', \\'has_sch\\']} · header=<StnLayoutHeader>',\n childrenHint: 'lnb_box · search_area · stn-table (+ StnTable, StnButton)',\n },\n {\n id: 'dashboard',\n label: '맵·대시보드',\n screen: 'basic/map.html, dashboard_map …',\n shellProps: 'bodyWrapper=\"none\" · chrome=\"network_topology_header\"',\n childrenHint: '.dashboard · .dashboard_left · StnLayoutRegion(region=\"map\")',\n },\n]\n\n/** Pub `.stn-content-area` modifier */\nexport type StnContentAreaModifier =\n | 'has_lnb'\n | 'has_lnb2'\n | 'has_lnb_right'\n | 'has_lnb_right2'\n | 'has_sch'\n | 'has_sch_row2'\n | 'flexible'\n\n/** LNB·트리 열 위치 — `has_lnb*` modifier 와 조합 */\nexport type StnLnbSide = 'left' | 'right'\n\n\n\n/** 대시보드·맵 화면 내 고정 슬롯 */\nexport type StnLayoutRegion =\n | 'top_right'\n | 'dashboard'\n | 'dashboard_left'\n | 'dashboard_right'\n | 'dashboard_body'\n | 'wrap_topology'\n | 'map'\n | 'dash_canvas'\n\nexport const STN_LAYOUT_PAGE_TREE = `.stn-wrap (legacy v1: #wrap)\n├── .stn-side-nav (absolute overlay · StnSideNavigation)\n└── .stn-layer-1 (L1 · 네비 제외 영역)\n ├── .stn-layer-1__header (Header)\n └── .stn-content-area / .stn-stack\n └── .stn-stack …` as const\n\nexport const STN_LAYOUT_LAYER_PAGE_TREE = `.stn-wrap (Root Shell · data-stn-layer-mode=\"v2\")\n├── StnLayer.Background (L0 · layer0-bg)\n├── .stn-side-nav / StnSideNavigation (absolute overlay · wrap 직속)\n├── [data-stn-layer-role=\"utility\"] (toast · audio)\n└── StnLayer.Content (.stn-layer-1) (L1 — 하나)\n ├── .stn-layer-1__header\n └── .stn-content-area / .stn-stack\n └── lnb_box | content_box | .stn-stack` as const\n\nexport const STN_LAYOUT_CONTENT_ROWS: {\n modifier: StnContentAreaModifier\n pubClass: string\n label: string\n note: string\n}[] = [\n {\n modifier: 'has_lnb',\n pubClass: '.stn-content-area.has_lnb',\n label: 'LNB 1열',\n note: 'padding-left: 268px · head_area 동기화',\n },\n {\n modifier: 'has_lnb2',\n pubClass: '.stn-content-area.has_lnb2',\n label: 'LNB 2열 (좌)',\n note: 'padding-left: 536px',\n },\n {\n modifier: 'has_lnb_right',\n pubClass: '.stn-content-area.has_lnb_right',\n label: 'LNB 1열 (우)',\n note: 'padding-right: 268px · lnb_box_right',\n },\n {\n modifier: 'has_lnb_right2',\n pubClass: '.stn-content-area.has_lnb_right2',\n label: 'LNB 2열 (우)',\n note: 'padding-right: 536px',\n },\n {\n modifier: 'has_sch',\n pubClass: '.stn-content-area.has_sch',\n label: '검색 영역',\n note: 'flex column · search_area + content_box',\n },\n {\n modifier: 'has_sch_row2',\n pubClass: '.stn-content-area.has_sch_row2',\n label: '검색 2줄',\n note: 'padding-top: 94px',\n },\n {\n modifier: 'flexible',\n pubClass: '.stn-content-area.flexible',\n label: '가변 높이 테이블',\n note: 'stn-table flex fill',\n },\n]\n\n\nexport const STN_LAYOUT_REGION_ROWS: {\n region: StnLayoutRegion\n pubClass: string\n label: string\n note: string\n}[] = [\n { region: 'top_right', pubClass: '.dash-top-right-widget', label: '우상단 위젯', note: '시스템 감시·테마·시계' },\n { region: 'dashboard', pubClass: '.dashboard', label: '대시보드 루트', note: '맵·위젯 본문' },\n { region: 'dashboard_left', pubClass: '.dashboard_left', label: '좌측 열', note: '토폴로지·맵' },\n { region: 'dashboard_right', pubClass: '.dashboard_right', label: '우측 열', note: '장애·위젯 패널' },\n { region: 'dashboard_body', pubClass: '.dashboard_body', label: '융합망 본문', note: 'converged 레이아웃' },\n { region: 'wrap_topology', pubClass: '.wrap_topology', label: '토폴로지 래퍼', note: 'stn-elev-map' },\n { region: 'map', pubClass: '.map', label: '맵 영역', note: '' },\n { region: 'dash_canvas', pubClass: '.stn-widget.shell-canvas', label: '캔버스', note: '토폴로지/맵 위젯 (variant=\"canvas\")' },\n]\n\nconst CONTENT_CLASS: Record<StnContentAreaModifier, string> = {\n has_lnb: 'has_lnb',\n has_lnb2: 'has_lnb2',\n has_lnb_right: 'has_lnb_right',\n has_lnb_right2: 'has_lnb_right2',\n has_sch: 'has_sch',\n has_sch_row2: 'has_sch_row2',\n flexible: 'flexible',\n}\n\nconst REGION_CLASS: Record<StnLayoutRegion, string> = {\n top_right: 'dash-top-right-widget',\n dashboard: 'dashboard',\n dashboard_left: 'dashboard_left',\n dashboard_right: 'dashboard_right',\n dashboard_body: 'dashboard_body',\n wrap_topology: 'wrap_topology',\n map: 'map',\n dash_canvas: 'stn-widget shell-canvas',\n}\n\nfunction normalizeList<T>(value?: T | T[]): T[] {\n if (value == null) return []\n return Array.isArray(value) ? value : [value]\n}\n\nexport function pubContentAreaClasses(\n modifiers?: StnContentAreaModifier | StnContentAreaModifier[],\n): string[] {\n return normalizeList(modifiers).map((m) => CONTENT_CLASS[m])\n}\n\nexport function pubLayoutRegionClass(region: StnLayoutRegion): string {\n return REGION_CLASS[region]\n}\n\n/** `lnbSide` — `has_lnb` / `has_lnb2` 를 좌·우 modifier 로 치환 */\nexport function applyLnbSideToModifiers(\n modifiers?: StnContentAreaModifier | StnContentAreaModifier[],\n lnbSide: StnLnbSide = 'left',\n): StnContentAreaModifier[] {\n const list = normalizeList(modifiers)\n if (lnbSide === 'left') return list\n return list.map((m) => {\n if (m === 'has_lnb') return 'has_lnb_right'\n if (m === 'has_lnb2') return 'has_lnb_right2'\n return m\n })\n}\n\nexport const STN_LAYER_SHELL_USAGE = `import { StnSideNavigation, StnLayerShell } from '@stn-uiux/pub-ui-react'\n\n/** StnLayer role 페이지 셸 — 컨테이너(.stn-container)를 StnLayer.Content 가 겸함 */\nexport function ListPage({ gnb, title, children }) {\n return (\n <StnLayerShell\n gnb={gnb}\n lnbSide=\"left\"\n contentModifiers={['has_lnb', 'has_sch']}\n header={\n <StnLayoutHeader>\n <h3 className=\"title\">{title}</h3>\n </StnLayoutHeader>\n }\n >\n <aside className=\"lnb_box\">…트리·LNB…</aside>\n <div className=\"content_box\">{children}</div>\n </StnLayerShell>\n )\n}\n\n/** 데이터 구조(트리)를 오른쪽에 */\n<StnLayerShell lnbSide=\"right\" contentModifiers={['has_lnb', 'has_sch']} …>\n <div className=\"content_box\">…</div>\n <aside className=\"lnb_box_right\">…</aside>\n</StnLayerShell>`\n\nexport const STN_LAYOUT_SHELL_USAGE = `import '@stn-uiux/pub-ui/styles.css'\n\nimport { StnSideNavigation, StnHeader, StnLayerShell, StnStack } from '@stn-uiux/pub-ui-react'\n\n/** interface_list 골격 */\nexport function InterfaceListPage({ gnb, title, children }) {\n return (\n <StnLayerShell\n gnb={gnb}\n header={\n <StnHeader variant=\"page\">\n <StnHeader.Left>\n <h3 className=\"title\">{title}</h3>\n </StnHeader.Left>\n </StnHeader>\n }\n >\n {children}\n </StnLayerShell>\n )\n}\n\n/** 대시보드 골격 */\nexport function MapDashboardPage({ gnb, header, children }) {\n return (\n <StnLayerShell gnb={gnb} header={header}>\n <StnStack direction=\"column\">\n {children}\n </StnStack>\n </StnLayerShell>\n )\n}`\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
systemIconSrc
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-Q4QXONXL.js";
|
|
4
4
|
|
|
5
5
|
// src/data/stnHeader.ts
|
|
6
6
|
var STN_HEADER_INTRO = "\uD398\uC774\uC9C0 \uCD5C\uC0C1\uB2E8\uC5D0 \uBC30\uCE58\uB418\uC5B4 \uC2DC\uC2A4\uD15C \uC0C1\uD0DC, \uD0C0\uC774\uD2C0, \uC2E4\uC2DC\uAC04 \uC2DC\uACC4, \uD234\uBC14 \uC561\uC158, \uBE0C\uB808\uB4DC\uD06C\uB7FC\uC744 \uD45C\uCD9C\uD558\uB294 \uC0C1\uB2E8 \uD5E4\uB354 \uD328\uD134\uC785\uB2C8\uB2E4. \uC88C\uCE21(Left) \xB7 \uC911\uC559(Center) \xB7 \uC6B0\uCE21(Right) 3\uAC1C \uC2AC\uB86F\uC744 \uC720\uC5F0\uD558\uAC8C \uC870\uB9BD\uD558\uC5EC \uAD6C\uC131\uD560 \uC218 \uC788\uC73C\uBA70, Center \uC2AC\uB86F \uC720\uBB34\uC5D0 \uB530\uB77C \uBC18\uC751\uD615 \uADF8\uB9AC\uB4DC \uB808\uC774\uC544\uC6C3\uC774 \uC790\uB3D9\uC73C\uB85C \uCD5C\uC801\uD654\uB429\uB2C8\uB2E4. \uD3ED\uC774 \uC904\uBA74 Right\uB9CC \uBA3C\uC800 \uCD95\uC57D(\u22641280 \uD234\uBC14 \uC544\uC774\uCF58\uD654)\uB418\uACE0, Center StnHeaderTitle\uC740 md(32px)\uC5D0\uC11C sm(\u22641280), compact(\u2264720)\uC73C\uB85C \uC810\uC9C4 \uCD95\uC18C\uB429\uB2C8\uB2E4.";
|
|
@@ -22,7 +22,7 @@ var STN_HEADER_VARIANT_ROWS = [
|
|
|
22
22
|
}
|
|
23
23
|
];
|
|
24
24
|
var STN_HEADER_USAGE = `import {
|
|
25
|
-
|
|
25
|
+
StnStatus,
|
|
26
26
|
StnHeader,
|
|
27
27
|
StnBreadcrumb,
|
|
28
28
|
StnButton,
|
|
@@ -33,7 +33,7 @@ var STN_HEADER_USAGE = `import {
|
|
|
33
33
|
|
|
34
34
|
<StnHeader>
|
|
35
35
|
<StnHeader.Left>
|
|
36
|
-
<
|
|
36
|
+
<StnStatus.DotGroup items={[{ id: 'c', state: 'critical', count: 0 }, ...]} />
|
|
37
37
|
</StnHeader.Left>
|
|
38
38
|
<StnHeader.Center>
|
|
39
39
|
<StnHeaderTitle>\uD1B5\uD569 \uAD00\uC81C \uC194\uB8E8\uC158</StnHeaderTitle>
|
|
@@ -52,7 +52,7 @@ var STN_HEADER_USAGE = `import {
|
|
|
52
52
|
var STN_HEADER_USAGE_HTML = `<!-- Left \xB7 Center \xB7 Right \uC2AC\uB86F \uC870\uB9BD -->
|
|
53
53
|
<header class="stn-header">
|
|
54
54
|
<div class="stn-header__left">
|
|
55
|
-
<!--
|
|
55
|
+
<!-- StnStatus.DotGroup / .stn-status-dot-group -->
|
|
56
56
|
</div>
|
|
57
57
|
<div class="stn-header__center">
|
|
58
58
|
<div class="stn-header-title">
|
|
@@ -102,4 +102,4 @@ export {
|
|
|
102
102
|
STN_HEADER_PAGE_TITLE_DEMO,
|
|
103
103
|
STN_HEADER_TOOLBAR_DEMO_ACTIONS
|
|
104
104
|
};
|
|
105
|
-
//# sourceMappingURL=chunk-
|
|
105
|
+
//# sourceMappingURL=chunk-3RYAWLME.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/data/stnHeader.ts"],"sourcesContent":["/**\n * Infomap header pattern — Figma 43377 · 43521 · 211938\n * @see StnHeader · patterns/stn-header.css\n */\n\nimport { systemIconSrc } from './stnSystemIcons'\n\nexport type StnHeaderVariant = 'dashboard' | 'widget' | 'page'\nexport type StnHeaderPadding = 'none' | 'sm' | 'md' | 'lg'\nexport type StnHeaderGap = 'none' | 'sm' | 'md' | 'lg'\n\nexport const STN_HEADER_INTRO =\n '페이지 최상단에 배치되어 시스템 상태, 타이틀, 실시간 시계, 툴바 액션, 브레드크럼을 표출하는 상단 헤더 패턴입니다. 좌측(Left) · 중앙(Center) · 우측(Right) 3개 슬롯을 유연하게 조립하여 구성할 수 있으며, Center 슬롯 유무에 따라 반응형 그리드 레이아웃이 자동으로 최적화됩니다. 폭이 줄면 Right만 먼저 축약(≤1280 툴바 아이콘화)되고, Center StnHeaderTitle은 md(32px)에서 sm(≤1280), compact(≤720)으로 점진 축소됩니다.'\n\nexport const STN_HEADER_VARIANT_ROWS = [\n {\n variant: 'dashboard',\n layout: 'Left(1fr · hug) · Center(auto) · Right(1fr · hug)',\n example: 'Alert status + Header title + System chips',\n },\n {\n variant: 'widget',\n layout: 'Left(1fr · hug) · Center(auto clock) · Right(1fr · hug)',\n example: 'Breadcrumb + Clock + Action buttons',\n },\n {\n variant: 'page',\n layout: 'Left title · Right',\n example: 'Page title + Breadcrumb',\n },\n] as const\n\nexport const STN_HEADER_USAGE = `import {\n StnStatus,\n StnHeader,\n StnBreadcrumb,\n StnButton,\n StnHeaderTitle,\n StnHeaderToolbar,\n StnIcon,\n} from '@stn-uiux/pub-ui-react'\n\n<StnHeader>\n <StnHeader.Left>\n <StnStatus.DotGroup items={[{ id: 'c', state: 'critical', count: 0 }, ...]} />\n </StnHeader.Left>\n <StnHeader.Center>\n <StnHeaderTitle>통합 관제 솔루션</StnHeaderTitle>\n </StnHeader.Center>\n <StnHeader.Right>\n <StnHeaderToolbar>\n <StnButton size=\"M\" variant=\"ghost\" icon={<StnIcon name=\"fill/system_status_on\" size={16} className=\"stn-icon--color\" />}>\n 시스템 감시\n </StnButton>\n <StnButton size=\"M\" variant=\"ghost\" icon={<StnIcon name=\"line/sun-high\" size={16} />}>\n 라이트모드\n </StnButton>\n </StnHeaderToolbar>\n </StnHeader.Right>\n</StnHeader>`\n\nexport const STN_HEADER_USAGE_HTML = `<!-- Left · Center · Right 슬롯 조립 -->\n<header class=\"stn-header\">\n <div class=\"stn-header__left\">\n <!-- StnStatus.DotGroup / .stn-status-dot-group -->\n </div>\n <div class=\"stn-header__center\">\n <div class=\"stn-header-title\">\n <span class=\"stn-header-title__text\">통합 관제 솔루션</span>\n </div>\n </div>\n <div class=\"stn-header__right\">\n <div class=\"stn-header-toolbar\">\n <!-- system monitor · theme buttons -->\n </div>\n </div>\n</header>`\n\nexport const STN_SYSTEM_CHIP_DEMO = [\n { id: 'critical', tone: 'critical' as const, count: 0 },\n { id: 'major', tone: 'major' as const, count: 12 },\n { id: 'minor', tone: 'minor' as const, count: 2 },\n { id: 'info', tone: 'info' as const, count: 3 },\n]\n\nexport const STN_HEADER_PAGE_TITLE_DEMO = '장애코드 관리'\n\n/** Figma map toolbar 40000040:75034 — leading icon + label */\nexport const STN_HEADER_TOOLBAR_DEMO_ACTIONS = [\n {\n id: 'reset',\n label: '기본값으로 초기화',\n iconSrc: systemIconSrc('line/refresh'),\n tertiaryStyle: 'outline' as const,\n },\n {\n id: 'edit',\n label: '편집',\n iconSrc: systemIconSrc('line/pencil-minus'),\n tertiaryStyle: 'ghost' as const,\n },\n {\n id: 'prev-day',\n label: '전일 현황',\n iconSrc: systemIconSrc('line/report'),\n tertiaryStyle: 'ghost' as const,\n },\n] as const\n"],"mappings":";;;;;AAWO,IAAM,mBACX;AAEK,IAAM,0BAA0B;AAAA,EACrC;AAAA,IACE,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AACF;AAEO,IAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BzB,IAAM,wBAAwB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiB9B,IAAM,uBAAuB;AAAA,EAClC,EAAE,IAAI,YAAY,MAAM,YAAqB,OAAO,EAAE;AAAA,EACtD,EAAE,IAAI,SAAS,MAAM,SAAkB,OAAO,GAAG;AAAA,EACjD,EAAE,IAAI,SAAS,MAAM,SAAkB,OAAO,EAAE;AAAA,EAChD,EAAE,IAAI,QAAQ,MAAM,QAAiB,OAAO,EAAE;AAChD;AAEO,IAAM,6BAA6B;AAGnC,IAAM,kCAAkC;AAAA,EAC7C;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,SAAS,cAAc,cAAc;AAAA,IACrC,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,SAAS,cAAc,mBAAmB;AAAA,IAC1C,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,SAAS,cAAc,aAAa;AAAA,IACpC,eAAe;AAAA,EACjB;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-A5KLX6NX.js.map
|
|
@@ -69,7 +69,7 @@ var STN_TREE_REACT_EXAMPLE = `import { StnSectionSide, StnTree } from '@stn-uiux
|
|
|
69
69
|
</StnSectionSide>`;
|
|
70
70
|
var STN_TREE_USAGE_HTML = `<!-- StnSectionSide + StnTree \xB7 stn-section-side.css \xB7 stn-tree.css -->
|
|
71
71
|
<aside class="stn-section-side stn-section-side--fill">
|
|
72
|
-
<div class="stn-scroll stn-section-side__body
|
|
72
|
+
<div class="stn-scroll stn-section-side__body vertical">
|
|
73
73
|
<div class="stn-tree">
|
|
74
74
|
<p class="stn-tree__heading">FOLDER STRUCTURE</p>
|
|
75
75
|
<div class="stn-tree__rows" role="tree">
|
|
@@ -132,4 +132,4 @@ export {
|
|
|
132
132
|
describeTreePatternReact,
|
|
133
133
|
STN_TREE_PARTS
|
|
134
134
|
};
|
|
135
|
-
//# sourceMappingURL=chunk-
|
|
135
|
+
//# sourceMappingURL=chunk-AOS3IX4T.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/data/stnTree.ts"],"sourcesContent":["/**\n * Folder structure tree — Infomap Figma node 40000042:210359 · section-side 40000040:102539\n */\n\nexport type StnTreeDemoNode = {\n id: string\n label: string\n kind?: 'root' | 'folder' | 'server'\n children?: StnTreeDemoNode[]\n}\n\nexport const STN_TREE_FIGMA = '40000042:210359'\n\n/** section-side shell — light / dark */\nexport const STN_TREE_SECTION_SIDE_FIGMA = {\n light: '40000042:187762',\n dark: '40000040:102539',\n} as const\n\nexport const STN_TREE_INTRO =\n 'LNB 사이드바 및 팝업 내부에서 계층형 폴더/파일 구조를 탐색하는 트리 내비게이션 패턴입니다. 폴더/파일 노드 선택 및 뎁스별 접기·펼치기 기능을 지원합니다.'\n\n/** Figma 40000040:102539 section-side tree content */\nexport const STN_TREE_DEMO: StnTreeDemoNode[] = [\n {\n id: 'root',\n label: 'Root',\n kind: 'root',\n children: [\n {\n id: 'group-a',\n label: '그룹 서버',\n kind: 'folder',\n children: [\n {\n id: 'equip',\n label: '장비',\n kind: 'folder',\n children: [\n { id: 'srv-1', label: 'grid-pro-01', kind: 'server' },\n { id: 'srv-2', label: 'grid-pro-02', kind: 'server' },\n { id: 'srv-3', label: 'grid-pro-03', kind: 'server' },\n { id: 'srv-4', label: 'grid-premium-01', kind: 'server' },\n { id: 'srv-5', label: 'grid-premium-02', kind: 'server' },\n ],\n },\n ],\n },\n {\n id: 'group-b',\n label: '그룹 서버 (백업)',\n kind: 'folder',\n children: [\n { id: 'srv-b1', label: 'auth-server-01', kind: 'server' },\n { id: 'srv-b2', label: 'auth-server-02', kind: 'server' },\n { id: 'srv-b3', label: 'db-cluster-01', kind: 'server' },\n { id: 'srv-b4', label: 'db-cluster-02', kind: 'server' },\n { id: 'srv-b5', label: 'cache-redis-01', kind: 'server' },\n ],\n },\n ],\n },\n]\n\nexport const STN_TREE_REACT_EXAMPLE = `import { StnSectionSide, StnTree } from '@stn-uiux/pub-ui-react'\n\n<StnSectionSide fill>\n <StnTree\n heading=\"FOLDER STRUCTURE\"\n nodes={[\n {\n id: 'root',\n label: 'Root',\n kind: 'root',\n children: [\n { id: 'group', label: '그룹 서버', kind: 'folder', children: [\n { id: 'srv-1', label: 'grid-pro', kind: 'server' },\n ]},\n ],\n },\n ]}\n defaultExpandedIds={['root', 'group']}\n defaultSelectedId=\"srv-1\"\n onSelect={(id) => console.log(id)}\n />\n</StnSectionSide>`\n\nexport const STN_TREE_USAGE_HTML = `<!-- StnSectionSide + StnTree · stn-section-side.css · stn-tree.css -->\n<aside class=\"stn-section-side stn-section-side--fill\">\n <div class=\"stn-scroll stn-section-side__body vertical\">\n <div class=\"stn-tree\">\n <p class=\"stn-tree__heading\">FOLDER STRUCTURE</p>\n <div class=\"stn-tree__rows\" role=\"tree\">\n <div class=\"stn-tree__row stn-tree__row--root\" data-depth=\"0\" role=\"treeitem\">\n <span class=\"stn-tree__label\">Root</span>\n </div>\n </div>\n </div>\n </div>\n</aside>`\n\nexport type StnTreePatternPlaygroundConfig = {\n heading: string\n showHeading: boolean\n}\n\nexport const STN_TREE_PATTERN_PLAYGROUND_DEFAULT: StnTreePatternPlaygroundConfig = {\n heading: 'FOLDER STRUCTURE',\n showHeading: true,\n}\n\nexport const STN_TREE_PATTERN_PLAYGROUND_PROPERTIES: {\n name: string\n values: string\n note?: string\n}[] = [\n { name: 'heading', values: 'string', note: 'StnTree heading · 빈 문자열이면 숨김' },\n { name: 'showHeading', values: 'true | false', note: '섹션 제목 표시' },\n { name: 'fill', values: 'true', note: 'StnSectionSide — list view LNB 열 높이 채움 (고정)' },\n { name: 'nodes', values: 'StnTreeItem[]', note: '데모 — STN_TREE_DEMO' },\n { name: 'defaultExpandedIds', values: 'string[]', note: '초기 펼침 노드 id' },\n { name: 'selectedId', values: 'string | null', note: '선택 행 · onSelect' },\n]\n\nexport function describeTreePatternReact(config: StnTreePatternPlaygroundConfig): string {\n const headingProp = config.showHeading\n ? `\\n heading=${JSON.stringify(config.heading)}`\n : '\\n heading=\"\"'\n return `import { StnSectionSide, StnTree } from '@stn-uiux/pub-ui-react'\n\n<StnSectionSide fill>\n <StnTree${headingProp}\n nodes={STN_TREE_DEMO}\n defaultExpandedIds={['root', 'group-a', 'equip', 'group-b']}\n selectedId={selectedId}\n onSelect={setSelectedId}\n />\n</StnSectionSide>`\n}\n\nexport const STN_TREE_PARTS = [\n { part: '.stn-tree', role: '트리 래퍼 (`StnTree`)' },\n { part: '.stn-tree__heading', role: '섹션 제목 · 13 bold gray-450' },\n { part: '.stn-tree__row', role: '행 24px · role=treeitem · data-depth' },\n { part: '.stn-tree__cell--guide', role: 'vertical_line · tree_connector(_midium)' },\n { part: '.stn-tree__toggle', role: '펼침/접힘 chevron (arrow-left 12)' },\n { part: '.stn-tree__icon--root / --folder / --server', role: '노드 종류별 16px 아이콘' },\n { part: '.stn-tree__row.is-selected', role: '선택 배경 `--stn-tree-selected`' },\n { part: '.stn-tree__row.is-hover / :hover', role: '호버 배경' },\n { part: '.stn-tree__row.is-pressed / :active', role: '프레스 배경' },\n { part: '.stn-section-side', role: '사이드 패널 셸 — Patterns Tree 조립' },\n { part: '.stn-scroll', role: 'Pub 스크롤 — Patterns Tree 조립' },\n] as const\n"],"mappings":"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","names":[]}
|
|
@@ -15,7 +15,7 @@ import { STN_TREE_DEMO } from '@stn-uiux/pub-ui/data/stnTree'
|
|
|
15
15
|
<StnTree heading="FOLDER STRUCTURE" nodes={STN_TREE_DEMO} />
|
|
16
16
|
</StnScroll>`;
|
|
17
17
|
var STN_SCROLL_USAGE_HTML = `<!-- Pub \uACF5\uD1B5 \uC2A4\uD06C\uB864 \uC601\uC5ED \xB7 stn-scroll.css -->
|
|
18
|
-
<div class="stn-scroll
|
|
18
|
+
<div class="stn-scroll vertical" style="height: 220px" data-stn-scroll="vertical">
|
|
19
19
|
<!-- \uC2A4\uD06C\uB864\uB418\uB294 \uBCF8\uBB38 (\uD2B8\uB9AC \xB7 \uBAA9\uB85D \uB4F1) -->
|
|
20
20
|
<div class="stn-section-side">
|
|
21
21
|
<ul class="stn-tree">\u2026</ul>
|
|
@@ -23,10 +23,10 @@ var STN_SCROLL_USAGE_HTML = `<!-- Pub \uACF5\uD1B5 \uC2A4\uD06C\uB864 \uC601\uC5
|
|
|
23
23
|
</div>
|
|
24
24
|
|
|
25
25
|
<!-- \uAC00\uB85C -->
|
|
26
|
-
<div class="stn-scroll
|
|
26
|
+
<div class="stn-scroll horizontal" data-stn-scroll="horizontal">\u2026</div>
|
|
27
27
|
|
|
28
28
|
<!-- \uC591\uBC29\uD5A5 -->
|
|
29
|
-
<div class="stn-scroll
|
|
29
|
+
<div class="stn-scroll both" data-stn-scroll="both">\u2026</div>`;
|
|
30
30
|
|
|
31
31
|
export {
|
|
32
32
|
STN_SCROLL_FIGMA,
|
|
@@ -35,4 +35,4 @@ export {
|
|
|
35
35
|
STN_SCROLL_USAGE,
|
|
36
36
|
STN_SCROLL_USAGE_HTML
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-CHJATVOT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/data/stnScroll.ts"],"sourcesContent":["/**\n * Pub scrollbar — common.css `::-webkit-scrollbar` (8px · gray-250 · radius 3.5)\n * @see StnScroll · stn-scroll.css\n */\n\nexport const STN_SCROLL_FIGMA = '40000040:102541'\n\nexport const STN_SCROLL_INTRO =\n 'Pub 공통 스크롤바를 영역에 묶은 컴포넌트입니다. `common.css`와 동일 — 8px · thumb `gray-250` · radius 3.5 · track transparent.'\n\nexport const STN_SCROLL_SPEC = [\n { property: 'Track size', value: '8px', note: 'width · height' },\n { property: 'Thumb radius', value: '3.5px', note: 'common.css' },\n { property: 'Thumb color', value: '`--stn-scroll-thumb`', note: 'gray-250' },\n { property: 'Track', value: 'transparent', note: '' },\n { property: 'Orientation', value: 'vertical | horizontal | both', note: 'overflow' },\n] as const\n\nexport const STN_SCROLL_USAGE = `import { StnScroll, StnTree } from '@stn-uiux/pub-ui-react'\nimport { STN_TREE_DEMO } from '@stn-uiux/pub-ui/data/stnTree'\n\n<StnScroll orientation=\"vertical\" style={{ height: 220 }}>\n <StnTree heading=\"FOLDER STRUCTURE\" nodes={STN_TREE_DEMO} />\n</StnScroll>`\n\nexport const STN_SCROLL_USAGE_HTML = `<!-- Pub 공통 스크롤 영역 · stn-scroll.css -->\n<div class=\"stn-scroll
|
|
1
|
+
{"version":3,"sources":["../src/data/stnScroll.ts"],"sourcesContent":["/**\n * Pub scrollbar — common.css `::-webkit-scrollbar` (8px · gray-250 · radius 3.5)\n * @see StnScroll · stn-scroll.css\n */\n\nexport const STN_SCROLL_FIGMA = '40000040:102541'\n\nexport const STN_SCROLL_INTRO =\n 'Pub 공통 스크롤바를 영역에 묶은 컴포넌트입니다. `common.css`와 동일 — 8px · thumb `gray-250` · radius 3.5 · track transparent.'\n\nexport const STN_SCROLL_SPEC = [\n { property: 'Track size', value: '8px', note: 'width · height' },\n { property: 'Thumb radius', value: '3.5px', note: 'common.css' },\n { property: 'Thumb color', value: '`--stn-scroll-thumb`', note: 'gray-250' },\n { property: 'Track', value: 'transparent', note: '' },\n { property: 'Orientation', value: 'vertical | horizontal | both', note: 'overflow' },\n] as const\n\nexport const STN_SCROLL_USAGE = `import { StnScroll, StnTree } from '@stn-uiux/pub-ui-react'\nimport { STN_TREE_DEMO } from '@stn-uiux/pub-ui/data/stnTree'\n\n<StnScroll orientation=\"vertical\" style={{ height: 220 }}>\n <StnTree heading=\"FOLDER STRUCTURE\" nodes={STN_TREE_DEMO} />\n</StnScroll>`\n\nexport const STN_SCROLL_USAGE_HTML = `<!-- Pub 공통 스크롤 영역 · stn-scroll.css -->\n<div class=\"stn-scroll vertical\" style=\"height: 220px\" data-stn-scroll=\"vertical\">\n <!-- 스크롤되는 본문 (트리 · 목록 등) -->\n <div class=\"stn-section-side\">\n <ul class=\"stn-tree\">…</ul>\n </div>\n</div>\n\n<!-- 가로 -->\n<div class=\"stn-scroll horizontal\" data-stn-scroll=\"horizontal\">…</div>\n\n<!-- 양방향 -->\n<div class=\"stn-scroll both\" data-stn-scroll=\"both\">…</div>`\n"],"mappings":";AAKO,IAAM,mBAAmB;AAEzB,IAAM,mBACX;AAEK,IAAM,kBAAkB;AAAA,EAC7B,EAAE,UAAU,cAAc,OAAO,OAAO,MAAM,oBAAiB;AAAA,EAC/D,EAAE,UAAU,gBAAgB,OAAO,SAAS,MAAM,aAAa;AAAA,EAC/D,EAAE,UAAU,eAAe,OAAO,wBAAwB,MAAM,WAAW;AAAA,EAC3E,EAAE,UAAU,SAAS,OAAO,eAAe,MAAM,GAAG;AAAA,EACpD,EAAE,UAAU,eAAe,OAAO,gCAAgC,MAAM,WAAW;AACrF;AAEO,IAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOzB,IAAM,wBAAwB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
|
|
@@ -140,7 +140,7 @@ var STN_TABLE_PARTS = [
|
|
|
140
140
|
{ part: "table.stn-table__grid", role: "\uB370\uC774\uD130 \uD14C\uC774\uBE14 (`StnTable.Grid`)" },
|
|
141
141
|
{
|
|
142
142
|
part: "thead / .stn-table__thead",
|
|
143
|
-
role: "\uD5E4\uB354 \xB7 Light gray-50 / Dark
|
|
143
|
+
role: "\uD5E4\uB354 \xB7 Light gray-50 / Dark gray-800 (`--stn-table-th-bg`) \xB7 th Light gray-700 / Dark gray-350 \xB7 \uB192\uC774 36 \xB7 radius Light 4 / Dark 8"
|
|
144
144
|
},
|
|
145
145
|
{
|
|
146
146
|
part: "tbody / .stn-table__tbody",
|
|
@@ -171,4 +171,4 @@ export {
|
|
|
171
171
|
STN_TABLE_REACT_EXAMPLE,
|
|
172
172
|
STN_TABLE_PARTS
|
|
173
173
|
};
|
|
174
|
-
//# sourceMappingURL=chunk-
|
|
174
|
+
//# sourceMappingURL=chunk-IOBNIUK3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/data/stnTable.ts"],"sourcesContent":["/**\n * Data table (stn-table) — Infomap Figma Data Table\n * Light thead/tbody: 40000042:209510 · Dark: 40000040:101810\n */\n\nexport const STN_TABLE_INTRO =\n '대량 데이터 및 시스템 목록을 정돈하여 표출하는 데이터 테이블 패턴입니다. 정렬, 체크박스 선택, Hover 효과 및 페이징 연동을 제공합니다.'\n\nexport const STN_TABLE_FIGMA = {\n light: '40000042:209510',\n dark: '40000040:101810',\n} as const\n\nexport const STN_TABLE_TH_LABEL_FIGMA = '40000042:209530'\n\nexport const STN_TABLE_TH_CHECK_FIGMA = '40000042:209512'\n\nexport const STN_TABLE_TH_CHECK =\n '체크박스만 있는 thead 셀 — `StnTable.ThCheck`(또는 `th.stn-table__col-check` + `StnCheckbox controlOnly`). 열 너비 60 · 18×18 checkbox · padding 5. tbody 행 선택은 `StnTable.TdCheck`.'\n\n/** th 체크박스 전용 — Figma 40000042:209512 */\nexport const STN_TABLE_TH_CHECK_EXAMPLE = `<th scope=\"col\" class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-select-all\" />\n <label for=\"tbl-select-all\">전체 선택</label>\n </span>\n</th>`\n\nexport const STN_TABLE_TD_CHECK_EXAMPLE = `<td class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-row-1\" />\n <label for=\"tbl-row-1\">행 선택</label>\n </span>\n</td>`\n\nexport const STN_TABLE_HEADER_COL =\n '일반 헤더는 `StnTable.Th`에 텍스트만 넣습니다. 정렬 열은 `StnTable.Sort`(`button.stn-table__sort`) — hover·활성 시 trailing `arrow-narrow-down`(12) · `aria-sort` · `is-active`/`is-asc`/`is-desc`. Figma node `40000042:209530`.'\n\nexport const STN_TABLE_SORT_BEHAVIOR =\n '정렬 헤더는 `StnTable.Sort`(또는 `button.stn-table__sort`) + `aria-sort`(none | ascending | descending). 활성·hover 시 `stn-table__th-label-icon` 표시, `is-asc`/`is-desc`로 방향 전환. Pub HTML은 `stnPubTableInit()`(common.js)로 클라이언트 정렬할 수 있습니다.'\n\n/** th 정렬 버튼 — Figma 40000042:209530 */\nexport const STN_TABLE_SORT_EXAMPLE = `<th scope=\"col\">\n <button type=\"button\" class=\"stn-table__sort is-active is-desc\" aria-sort=\"descending\">\n <span class=\"stn-table__th-label-text\">포트차단</span>\n <span class=\"stn-table__th-label-icon\" aria-hidden=\"true\"></span>\n </button>\n</th>`\n\n/** pub-ui only — React 없이 동일 Infomap thead/tbody */\nexport const STN_TABLE_EXAMPLE_HTML = `<div class=\"stn-table\">\n <div class=\"stn-table__scroll\">\n <table class=\"stn-table__grid\">\n <thead class=\"stn-table__thead\">\n <tr>\n <th scope=\"col\" class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-select-all\" />\n <label for=\"tbl-select-all\">전체 선택</label>\n </span>\n </th>\n <th scope=\"col\">장비명</th>\n <th scope=\"col\">포트 ID</th>\n <th scope=\"col\">\n <button type=\"button\" class=\"stn-table__sort is-active is-desc\" aria-sort=\"descending\">\n <span class=\"stn-table__th-label-text\">트래픽</span>\n <span class=\"stn-table__th-label-icon\" aria-hidden=\"true\"></span>\n </button>\n </th>\n <th scope=\"col\">장애 상태</th>\n </tr>\n </thead>\n <tbody class=\"stn-table__tbody\">\n <tr class=\"is-hoverable\">\n <td class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-row-1\" checked />\n <label for=\"tbl-row-1\">행 1 선택</label>\n </span>\n </td>\n <td>ROUTER-SEOUL-01</td>\n <td>GigabitEthernet0/0/1</td>\n <td>1.25 Gbps</td>\n <td><span class=\"stn-table__pill\">정상</span></td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"stn-table__footer\">\n <p class=\"stn-table__summary\">총 57개 (1 to 20)</p>\n <div class=\"stn-table__footer-center\">\n <!-- StnPagination 컴포넌트 마크업 영역 -->\n </div>\n </div>\n</div>`\n\nexport const STN_TABLE_EXAMPLE = STN_TABLE_EXAMPLE_HTML\n\nexport const STN_TABLE_REACT_EXAMPLE = `import { useState } from 'react'\nimport { StnTable, StnPagination } from '@stn-uiux/pub-ui-react'\n\nexport function MyDataTableExample() {\n const [selectedIds, setSelectedIds] = useState<string[]>(['row-1'])\n const [sortOrder, setSortOrder] = useState<'ascending' | 'descending'>('descending')\n\n return (\n <StnTable>\n <StnTable.Grid>\n <StnTable.Head>\n <StnTable.Row>\n <StnTable.ThCheck\n label=\"전체 선택\"\n checked={selectedIds.length === 3}\n onChange={(e) => setSelectedIds(e.target.checked ? ['row-1', 'row-2', 'row-3'] : [])}\n />\n <StnTable.Th>장비명</StnTable.Th>\n <StnTable.Th>포트 ID</StnTable.Th>\n <StnTable.Th>\n <StnTable.Sort\n label=\"트래픽\"\n sort={sortOrder}\n onClick={() => setSortOrder((prev) => (prev === 'ascending' ? 'descending' : 'ascending'))}\n />\n </StnTable.Th>\n <StnTable.Th>장애 상태</StnTable.Th>\n </StnTable.Row>\n </StnTable.Head>\n\n <StnTable.Body>\n <StnTable.Row hoverable>\n <StnTable.TdCheck\n label=\"행 1 선택\"\n checked={selectedIds.includes('row-1')}\n onChange={() =>\n setSelectedIds((prev) =>\n prev.includes('row-1') ? prev.filter((id) => id !== 'row-1') : [...prev, 'row-1']\n )\n }\n />\n <StnTable.Td>ROUTER-SEOUL-01</StnTable.Td>\n <StnTable.Td>GigabitEthernet0/0/1</StnTable.Td>\n <StnTable.Td>1.25 Gbps</StnTable.Td>\n <StnTable.Td>\n <span className=\"stn-table__pill\">정상</span>\n </StnTable.Td>\n </StnTable.Row>\n </StnTable.Body>\n </StnTable.Grid>\n\n <StnTable.Footer\n summary=\"총 57개 (1 to 20)\"\n center={\n <StnPagination currentPage={1} totalPages={5} onPageChange={() => {}} />\n }\n />\n </StnTable>\n )\n}`\n\nexport const STN_TABLE_PARTS = [\n { part: '.stn-table > table', role: 'pub-ui 최소 마크업 — Infomap thead/tbody' },\n { part: '.stn-table', role: '셸 (스크롤 · footer · fill)' },\n { part: '.stn-table__scroll', role: '가로·세로 스크롤 영역' },\n { part: 'table.stn-table__grid', role: '데이터 테이블 (`StnTable.Grid`)' },\n {\n part: 'thead / .stn-table__thead',\n role: '헤더 · Light gray-50 / Dark
|
|
1
|
+
{"version":3,"sources":["../src/data/stnTable.ts"],"sourcesContent":["/**\n * Data table (stn-table) — Infomap Figma Data Table\n * Light thead/tbody: 40000042:209510 · Dark: 40000040:101810\n */\n\nexport const STN_TABLE_INTRO =\n '대량 데이터 및 시스템 목록을 정돈하여 표출하는 데이터 테이블 패턴입니다. 정렬, 체크박스 선택, Hover 효과 및 페이징 연동을 제공합니다.'\n\nexport const STN_TABLE_FIGMA = {\n light: '40000042:209510',\n dark: '40000040:101810',\n} as const\n\nexport const STN_TABLE_TH_LABEL_FIGMA = '40000042:209530'\n\nexport const STN_TABLE_TH_CHECK_FIGMA = '40000042:209512'\n\nexport const STN_TABLE_TH_CHECK =\n '체크박스만 있는 thead 셀 — `StnTable.ThCheck`(또는 `th.stn-table__col-check` + `StnCheckbox controlOnly`). 열 너비 60 · 18×18 checkbox · padding 5. tbody 행 선택은 `StnTable.TdCheck`.'\n\n/** th 체크박스 전용 — Figma 40000042:209512 */\nexport const STN_TABLE_TH_CHECK_EXAMPLE = `<th scope=\"col\" class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-select-all\" />\n <label for=\"tbl-select-all\">전체 선택</label>\n </span>\n</th>`\n\nexport const STN_TABLE_TD_CHECK_EXAMPLE = `<td class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-row-1\" />\n <label for=\"tbl-row-1\">행 선택</label>\n </span>\n</td>`\n\nexport const STN_TABLE_HEADER_COL =\n '일반 헤더는 `StnTable.Th`에 텍스트만 넣습니다. 정렬 열은 `StnTable.Sort`(`button.stn-table__sort`) — hover·활성 시 trailing `arrow-narrow-down`(12) · `aria-sort` · `is-active`/`is-asc`/`is-desc`. Figma node `40000042:209530`.'\n\nexport const STN_TABLE_SORT_BEHAVIOR =\n '정렬 헤더는 `StnTable.Sort`(또는 `button.stn-table__sort`) + `aria-sort`(none | ascending | descending). 활성·hover 시 `stn-table__th-label-icon` 표시, `is-asc`/`is-desc`로 방향 전환. Pub HTML은 `stnPubTableInit()`(common.js)로 클라이언트 정렬할 수 있습니다.'\n\n/** th 정렬 버튼 — Figma 40000042:209530 */\nexport const STN_TABLE_SORT_EXAMPLE = `<th scope=\"col\">\n <button type=\"button\" class=\"stn-table__sort is-active is-desc\" aria-sort=\"descending\">\n <span class=\"stn-table__th-label-text\">포트차단</span>\n <span class=\"stn-table__th-label-icon\" aria-hidden=\"true\"></span>\n </button>\n</th>`\n\n/** pub-ui only — React 없이 동일 Infomap thead/tbody */\nexport const STN_TABLE_EXAMPLE_HTML = `<div class=\"stn-table\">\n <div class=\"stn-table__scroll\">\n <table class=\"stn-table__grid\">\n <thead class=\"stn-table__thead\">\n <tr>\n <th scope=\"col\" class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-select-all\" />\n <label for=\"tbl-select-all\">전체 선택</label>\n </span>\n </th>\n <th scope=\"col\">장비명</th>\n <th scope=\"col\">포트 ID</th>\n <th scope=\"col\">\n <button type=\"button\" class=\"stn-table__sort is-active is-desc\" aria-sort=\"descending\">\n <span class=\"stn-table__th-label-text\">트래픽</span>\n <span class=\"stn-table__th-label-icon\" aria-hidden=\"true\"></span>\n </button>\n </th>\n <th scope=\"col\">장애 상태</th>\n </tr>\n </thead>\n <tbody class=\"stn-table__tbody\">\n <tr class=\"is-hoverable\">\n <td class=\"stn-table__col-check\">\n <span class=\"checkbox stn-checkbox stn-checkbox--control-only\">\n <input type=\"checkbox\" id=\"tbl-row-1\" checked />\n <label for=\"tbl-row-1\">행 1 선택</label>\n </span>\n </td>\n <td>ROUTER-SEOUL-01</td>\n <td>GigabitEthernet0/0/1</td>\n <td>1.25 Gbps</td>\n <td><span class=\"stn-table__pill\">정상</span></td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"stn-table__footer\">\n <p class=\"stn-table__summary\">총 57개 (1 to 20)</p>\n <div class=\"stn-table__footer-center\">\n <!-- StnPagination 컴포넌트 마크업 영역 -->\n </div>\n </div>\n</div>`\n\nexport const STN_TABLE_EXAMPLE = STN_TABLE_EXAMPLE_HTML\n\nexport const STN_TABLE_REACT_EXAMPLE = `import { useState } from 'react'\nimport { StnTable, StnPagination } from '@stn-uiux/pub-ui-react'\n\nexport function MyDataTableExample() {\n const [selectedIds, setSelectedIds] = useState<string[]>(['row-1'])\n const [sortOrder, setSortOrder] = useState<'ascending' | 'descending'>('descending')\n\n return (\n <StnTable>\n <StnTable.Grid>\n <StnTable.Head>\n <StnTable.Row>\n <StnTable.ThCheck\n label=\"전체 선택\"\n checked={selectedIds.length === 3}\n onChange={(e) => setSelectedIds(e.target.checked ? ['row-1', 'row-2', 'row-3'] : [])}\n />\n <StnTable.Th>장비명</StnTable.Th>\n <StnTable.Th>포트 ID</StnTable.Th>\n <StnTable.Th>\n <StnTable.Sort\n label=\"트래픽\"\n sort={sortOrder}\n onClick={() => setSortOrder((prev) => (prev === 'ascending' ? 'descending' : 'ascending'))}\n />\n </StnTable.Th>\n <StnTable.Th>장애 상태</StnTable.Th>\n </StnTable.Row>\n </StnTable.Head>\n\n <StnTable.Body>\n <StnTable.Row hoverable>\n <StnTable.TdCheck\n label=\"행 1 선택\"\n checked={selectedIds.includes('row-1')}\n onChange={() =>\n setSelectedIds((prev) =>\n prev.includes('row-1') ? prev.filter((id) => id !== 'row-1') : [...prev, 'row-1']\n )\n }\n />\n <StnTable.Td>ROUTER-SEOUL-01</StnTable.Td>\n <StnTable.Td>GigabitEthernet0/0/1</StnTable.Td>\n <StnTable.Td>1.25 Gbps</StnTable.Td>\n <StnTable.Td>\n <span className=\"stn-table__pill\">정상</span>\n </StnTable.Td>\n </StnTable.Row>\n </StnTable.Body>\n </StnTable.Grid>\n\n <StnTable.Footer\n summary=\"총 57개 (1 to 20)\"\n center={\n <StnPagination currentPage={1} totalPages={5} onPageChange={() => {}} />\n }\n />\n </StnTable>\n )\n}`\n\nexport const STN_TABLE_PARTS = [\n { part: '.stn-table > table', role: 'pub-ui 최소 마크업 — Infomap thead/tbody' },\n { part: '.stn-table', role: '셸 (스크롤 · footer · fill)' },\n { part: '.stn-table__scroll', role: '가로·세로 스크롤 영역' },\n { part: 'table.stn-table__grid', role: '데이터 테이블 (`StnTable.Grid`)' },\n {\n part: 'thead / .stn-table__thead',\n role: '헤더 · Light gray-50 / Dark gray-800 (`--stn-table-th-bg`) · th Light gray-700 / Dark gray-350 · 높이 36 · radius Light 4 / Dark 8',\n },\n {\n part: 'tbody / .stn-table__tbody',\n role: '본문 · 행 36 · border Light gray-100 / Dark gray-800 (`--stn-table-border`) · td Light gray-750 / Dark gray-50',\n },\n { part: '.stn-table__col-check', role: '체크박스 열 60px (`StnTable.ThCheck` / `TdCheck` · Figma 40000042:209512)' },\n { part: 'button.stn-table__sort', role: '정렬 헤더 (`StnTable.Sort` · aria-sort · hover / pressed `:active`·`.is-pressed` · Figma 40000042:209530)' },\n { part: 'tr.is-pressed / th.is-pressed', role: '프레스 면 고정 (`pressed` · 행은 clickable `:active`와 동일)' },\n { part: '.stn-table__th--align-* / .stn-table__td--align-*', role: '셀 정렬 variant (`align=\"left\" | \"center\" | \"right\"` · 기본 center)' },\n { part: '.stn-table__col--*', role: '열 너비는 Header `Th`만 (`width={120}` → `.stn-table__col--120` · `var(--stn-size-120)` · 미지정 열이 남은 폭 흡수 · Body Td에 두지 않음)' },\n { part: '.stn-table__pill / __pill--fault / __pill--detect / __badge', role: '셀 칩 · type(102014) · fault(102016·배경없음) · detect(102041) · badge' },\n { part: '.stn-table__footer', role: '요약 · 페이지 크기 · pagination' },\n] as const\n"],"mappings":";AAKO,IAAM,kBACX;AAEK,IAAM,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,MAAM;AACR;AAEO,IAAM,2BAA2B;AAEjC,IAAM,2BAA2B;AAEjC,IAAM,qBACX;AAGK,IAAM,6BAA6B;AAAA;AAAA;AAAA;AAAA;AAAA;AAOnC,IAAM,6BAA6B;AAAA;AAAA;AAAA;AAAA;AAAA;AAOnC,IAAM,uBACX;AAEK,IAAM,0BACX;AAGK,IAAM,yBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ/B,IAAM,yBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8C/B,IAAM,oBAAoB;AAE1B,IAAM,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6DhC,IAAM,kBAAkB;AAAA,EAC7B,EAAE,MAAM,sBAAsB,MAAM,oEAAsC;AAAA,EAC1E,EAAE,MAAM,cAAc,MAAM,oDAA0B;AAAA,EACtD,EAAE,MAAM,sBAAsB,MAAM,+DAAe;AAAA,EACnD,EAAE,MAAM,yBAAyB,MAAM,0DAA4B;AAAA,EACnE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,EAAE,MAAM,yBAAyB,MAAM,mGAAuE;AAAA,EAC9G,EAAE,MAAM,0BAA0B,MAAM,wIAAwG;AAAA,EAChJ,EAAE,MAAM,iCAAiC,MAAM,8GAAoD;AAAA,EACnG,EAAE,MAAM,qDAAqD,MAAM,6FAAiE;AAAA,EACpI,EAAE,MAAM,sBAAsB,MAAM,0OAAwH;AAAA,EAC5J,EAAE,MAAM,+DAA+D,MAAM,gHAAmE;AAAA,EAChJ,EAAE,MAAM,sBAAsB,MAAM,oEAA2B;AACjE;","names":[]}
|
|
@@ -1,16 +1,5 @@
|
|
|
1
1
|
// src/data/stnSystemIconsData.generated.ts
|
|
2
2
|
var SYSTEM_ICON_DATA_URLS = {
|
|
3
|
-
"3d/print": "data:image/png;base64,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",
|
|
4
|
-
"3d/print_1": "data:image/png;base64,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",
|
|
5
|
-
"3d/server1": "data:image/png;base64,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",
|
|
6
|
-
"3d/server1_1": "data:image/png;base64,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",
|
|
7
|
-
"3d/server2": "data:image/png;base64,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",
|
|
8
|
-
"3d/server2_1": "data:image/png;base64,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",
|
|
9
|
-
"3d/signal": "data:image/png;base64,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",
|
|
10
|
-
"3d/signal_1": "data:image/png;base64,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",
|
|
11
|
-
"3d/wifi": "data:image/png;base64,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",
|
|
12
|
-
"3d/wifi_1": "data:image/png;base64,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",
|
|
13
|
-
"ai_agent": "data:image/png;base64,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",
|
|
14
3
|
"blank": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggb3BhY2l0eT0iMC4xIiBkPSJNMjQgMjRIMFYwSDI0VjI0Wk0yIDJWMjJIMjJWMkgyWiIgZmlsbD0iIzBCMkM0MiIvPgo8L3N2Zz4K",
|
|
15
4
|
"fill/alert1": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwX2FsZXJ0MSkiPgo8cGF0aCBpZD0iU3VidHJhY3QiIGQ9Ik0xMi4wODExIDIuMDAwNjRDMTMuODA4OCAyLjAxNDY5IDE1LjUwMzcgMi40NzU1NyAxNyAzLjMzOTVDMTguNTIwMiA0LjIxNzE5IDE5Ljc4MjUgNS40ODA0MyAyMC42NjAyIDcuMDAwNjRDMjEuNTM3NyA4LjUyMDc3IDIyIDEwLjI0NTQgMjIgMTIuMDAwNkMyMS45OTk5IDEzLjc1NTkgMjEuNTM3OCAxNS40ODA2IDIwLjY2MDIgMTcuMDAwNkMxOS43ODI1IDE4LjUyMDcgMTguNTIwMSAxOS43ODMyIDE3IDIwLjY2MDhDMTUuNDc5OCAyMS41Mzg0IDE0LjAyMTQgMjIuMDAwNiAxMiAyMi4wMDA2QzkuOTc4NjMgMjIuMDAwNiA4LjUyMDA2IDIxLjUzODQgNyAyMC42NjA4QzUuNDc5ODIgMTkuNzgzMSA0LjIxNzUgMTguNTE5OSAzLjMzOTg0IDE2Ljk5OTdDMi40NjIyNCAxNS40Nzk1IDEuOTk5OTYgMTMuNzU1IDIgMTEuOTk5N0wyLjAwNDg4IDExLjY3NTRDMi4wNjA5NiA5Ljk0ODU5IDIuNTYzODUgOC4yNjU1MiAzLjQ2Mzg3IDYuNzkwNjhDNC4zNjM5NCA1LjMxNTg0IDUuNjMwNSA0LjA5ODk0IDcuMTQwNjIgMy4yNTk0MkM4LjY1MDg2IDIuNDE5ODYgMTAuMzUzMiAxLjk4NjU5IDEyLjA4MTEgMi4wMDA2NFpNMTIgMTQuOTk5N0MxMS43MzQ5IDE0Ljk5OTcgMTEuNDgwNSAxNS4xMDUyIDExLjI5MyAxNS4yOTI2QzExLjEwNTUgMTUuNDgwMSAxMS4wMDAxIDE1LjczNDYgMTEgMTUuOTk5N1YxNi4wMTA0QzExLjAwMDEgMTYuMjc1NSAxMS4xMDU1IDE2LjUzIDExLjI5MyAxNi43MTc0QzExLjQ4MDUgMTYuOTA0OCAxMS43MzQ5IDE3LjAxMDQgMTIgMTcuMDEwNEMxMi4yNjUxIDE3LjAxMDQgMTIuNTE5NSAxNi45MDQ4IDEyLjcwNyAxNi43MTc0QzEyLjg5NDUgMTYuNTMgMTIuOTk5OSAxNi4yNzU1IDEzIDE2LjAxMDRWMTUuOTk5N0MxMi45OTk5IDE1LjczNDYgMTIuODk0NSAxNS40ODAxIDEyLjcwNyAxNS4yOTI2QzEyLjUxOTUgMTUuMTA1MiAxMi4yNjUxIDE0Ljk5OTcgMTIgMTQuOTk5N1pNMTIgNy45OTk2NkMxMS43MzQ5IDcuOTk5NjYgMTEuNDgwNSA4LjEwNTIgMTEuMjkzIDguMjkyNjNDMTEuMTA1NSA4LjQ4MDA4IDExLjAwMDEgOC43MzQ1NyAxMSA4Ljk5OTY2VjEyLjk5OTdDMTEgMTMuMjY0OCAxMS4xMDU1IDEzLjUxOTIgMTEuMjkzIDEzLjcwNjdDMTEuNDgwNSAxMy44OTQyIDExLjczNDggMTMuOTk5NyAxMiAxMy45OTk3QzEyLjI2NTIgMTMuOTk5NyAxMi41MTk1IDEzLjg5NDIgMTIuNzA3IDEzLjcwNjdDMTIuODk0NSAxMy41MTkyIDEzIDEzLjI2NDggMTMgMTIuOTk5N1Y4Ljk5OTY2QzEyLjk5OTkgOC43MzQ1NyAxMi44OTQ1IDguNDgwMDggMTIuNzA3IDguMjkyNjNDMTIuNTE5NSA4LjEwNTIgMTIuMjY1MSA3Ljk5OTY2IDEyIDcuOTk5NjZaIiBmaWxsPSIjQjhDMUNDIiBmaWxsLW9wYWNpdHk9IjAuNSIvPgo8cGF0aCBpZD0iU3VidHJhY3RfMiIgZD0iTTEyLjA2NDUgNC4wMDAwOEMxMy40NDY3IDQuMDExMzEgMTQuODAyOSA0LjM4MTE1IDE2IDUuMDcyMzRDMTcuMjE2IDUuNzc0NDIgMTguMjI1NiA2Ljc4NDEyIDE4LjkyNzcgOC4wMDAwOEMxOS42Mjk5IDkuMjE2MTggMjAgMTAuNTk1OCAyMCAxMi4wMDAxQzIwIDEzLjQwNDQgMTkuNjI5OSAxNC43ODM5IDE4LjkyNzcgMTYuMDAwMUMxOC4yMjU2IDE3LjIxNjIgMTcuMjE2MSAxOC4yMjY3IDE2IDE4LjkyODhDMTQuNzgzOSAxOS42MzA5IDEzLjYxNzEgMjAuMDAwMSAxMiAyMC4wMDAxQzEwLjM4MjggMjAuMDAwMSA5LjIxNjE1IDE5LjYzIDggMTguOTI3OEM2Ljc4MzkgMTguMjI1NiA1Ljc3MzM5IDE3LjIxNjIgNS4wNzEyOSAxNi4wMDAxQzQuMzY5MjMgMTQuNzg0IDMuOTk5OTggMTMuNDA0MyA0IDEyLjAwMDFMNC4wMDM5MSAxMS43NDEzQzQuMDQ4NzEgMTAuMzU5OCA0LjQ1MDkgOS4wMTMwMSA1LjE3MDkgNy44MzMwOUM1Ljg5MDkyIDYuNjUzMjEgNi45MDQyNCA1LjY3OTU0IDguMTEyMyA1LjAwNzg5QzkuMzIwMzkgNC4zMzYzIDEwLjY4MjMgMy45ODg5MSAxMi4wNjQ1IDQuMDAwMDhaTTEyIDE1LjAwMDFDMTEuNzM0OCAxNS4wMDAxIDExLjQ4MDUgMTUuMTA1NSAxMS4yOTMgMTUuMjkzQzExLjEwNTUgMTUuNDgwNiAxMSAxNS43MzQ5IDExIDE2LjAwMDFWMTYuMDA5OEMxMSAxNi4yNzUgMTEuMTA1NSAxNi41MjkzIDExLjI5MyAxNi43MTY5QzExLjQ4MDUgMTYuOTA0NCAxMS43MzQ4IDE3LjAwOTggMTIgMTcuMDA5OEMxMi4yNjUyIDE3LjAwOTggMTIuNTE5NSAxNi45MDQ0IDEyLjcwNyAxNi43MTY5QzEyLjg5NDUgMTYuNTI5MyAxMyAxNi4yNzUgMTMgMTYuMDA5OFYxNi4wMDAxQzEzIDE1LjczNDkgMTIuODk0NSAxNS40ODA2IDEyLjcwNyAxNS4yOTNDMTIuNTE5NSAxNS4xMDU1IDEyLjI2NTIgMTUuMDAwMSAxMiAxNS4wMDAxWk0xMiA4LjAwMDA4QzExLjczNDggOC4wMDAwOCAxMS40ODA1IDguMTA1NTEgMTEuMjkzIDguMjkzMDVDMTEuMTA1NSA4LjQ4MDU4IDExIDguNzM0ODggMTEgOS4wMDAwOFYxMy4wMDAxQzExIDEzLjI2NTMgMTEuMTA1NSAxMy41MTk2IDExLjI5MyAxMy43MDcxQzExLjQ4MDUgMTMuODk0NiAxMS43MzQ4IDE0LjAwMDEgMTIgMTQuMDAwMUMxMi4yNjUyIDE0LjAwMDEgMTIuNTE5NSAxMy44OTQ2IDEyLjcwNyAxMy43MDcxQzEyLjg5NDUgMTMuNTE5NiAxMyAxMy4yNjUzIDEzIDEzLjAwMDFWOS4wMDAwOEMxMyA4LjczNDg4IDEyLjg5NDUgOC40ODA1OCAxMi43MDcgOC4yOTMwNUMxMi41MTk1IDguMTA1NTEgMTIuMjY1MiA4LjAwMDA4IDEyIDguMDAwMDhaIiBmaWxsPSIjNzc4MThEIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfYWxlcnQxIj4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",
|
|
16
5
|
"fill/alert2": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwX2FsZXJ0MikiPgo8cGF0aCBpZD0iU3VidHJhY3QiIGQ9Ik0xMS45OTg5IDJDMTIuOTUzOSAyIDEzLjg0NDUgMi40NjcwNyAxNC4zODk1IDMuMjQ3MDdMMTQuNDk0IDMuNDA3MjNMMjIuNjA4MyAxNi45NTUxQzIyLjg1NDggMTcuMzgyIDIyLjk4ODcgMTcuODY0NSAyMi45OTc5IDE4LjM1NzRDMjMuMDA3MSAxOC44NTA1IDIyLjg5MTUgMTkuMzM4NSAyMi42NjEgMTkuNzc0NEMyMi40MzA1IDIwLjIxMDMgMjIuMDkzMSAyMC41ODA2IDIxLjY4MDYgMjAuODUwNkMyMS4yNjggMjEuMTIwNSAyMC43OTMzIDIxLjI4MTcgMjAuMzAxNiAyMS4zMTg0TDIwLjEwNjMgMjEuMzI2MkgzLjg4MDc1QzMuMzg4NjIgMjEuMzIwNiAyLjkwNTY1IDIxLjE4OTkgMi40Nzc0MyAyMC45NDczQzIuMDQ5MjYgMjAuNzA0NiAxLjY4OTI5IDIwLjM1NzcgMS40MzE1MyAxOS45Mzg1QzEuMTczNjkgMTkuNTE5MSAxLjAyNTk3IDE5LjA0MDYgMS4wMDI4MiAxOC41NDg4QzAuOTc5NzQxIDE4LjA1NzIgMS4wODI0NCAxNy41Njc2IDEuMjk5NjkgMTcuMTI2TDEuMzk4MzMgMTYuOTQxNEw5LjUwODY4IDMuNDAzMzJDOS43NjgzNCAyLjk3NTEzIDEwLjEzMzkgMi42MjA3NSAxMC41NzAyIDIuMzc1QzExLjAwNjQgMi4xMjk0IDExLjQ5ODQgMi4wMDAxNyAxMS45OTg5IDJaTTExLjg4MjcgMTUuMDA2OEMxMS42Mzk5IDE1LjAzNTggMTEuNDE2MiAxNS4xNTMxIDExLjI1MzggMTUuMzM1OUMxMS4wOTEzIDE1LjUxODkgMTEuMDAwOSAxNS43NTUyIDExLjAwMDkgMTZDMTEuMDAwOSAxNi4yNDQ4IDExLjA5MTMgMTYuNDgxMSAxMS4yNTM4IDE2LjY2NDFDMTEuNDE2MiAxNi44NDY5IDExLjYzOTkgMTYuOTY0MiAxMS44ODI3IDE2Ljk5MzJMMTEuOTk5OSAxN0wxMi4xMjY4IDE2Ljk5MzJDMTIuMzY5OSAxNi45NjQzIDEyLjU5NDIgMTYuODQ3MSAxMi43NTY3IDE2LjY2NDFDMTIuOTE5MiAxNi40ODExIDEzLjAwODcgMTYuMjQ0NyAxMy4wMDg3IDE2QzEzLjAwODcgMTUuNzU1MyAxMi45MTkyIDE1LjUxODkgMTIuNzU2NyAxNS4zMzU5QzEyLjU5NDIgMTUuMTUyOSAxMi4zNjk5IDE1LjAzNTcgMTIuMTI2OCAxNS4wMDY4TDEyLjAwOTcgMTVMMTEuODgyNyAxNS4wMDY4Wk0xMS45OTk5IDhDMTEuNzU1IDguMDAwMDcgMTEuNTE4OCA4LjA5MDIgMTEuMzM1OCA4LjI1MjkzQzExLjE1MjggOC40MTU2NSAxMS4wMzU0IDguNjM5NjIgMTEuMDA2NyA4Ljg4MjgxTDEwLjk5OTkgOVYxM0wxMS4wMDY3IDEzLjExNzJDMTEuMDM1NyAxMy4zNjAyIDExLjE1MjkgMTMuNTg0NiAxMS4zMzU4IDEzLjc0NzFDMTEuNTE4OCAxMy45MDk1IDExLjc1NTIgMTMuOTk5IDExLjk5OTkgMTMuOTk5QzEyLjI0NDUgMTMuOTk5IDEyLjQ4MSAxMy45MDk0IDEyLjY2NCAxMy43NDcxQzEyLjg0NjkgMTMuNTg0NiAxMi45NjQxIDEzLjM2MDIgMTIuOTkzMSAxMy4xMTcyTDEyLjk5OTkgMTNWOUwxMi45OTMxIDguODgyODFDMTIuOTY0NCA4LjYzOTYzIDEyLjg0NjkgOC40MTU2NSAxMi42NjQgOC4yNTI5M0MxMi40ODA5IDguMDkwMjUgMTIuMjQ0OCA4LjAwMDAzIDExLjk5OTkgOFoiIGZpbGw9IiNGRkUzNzIiIGZpbGwtb3BhY2l0eT0iMC41Ii8+CjxwYXRoIGlkPSJTdWJ0cmFjdF8yIiBkPSJNMTIgNS41QzEyLjY1MTIgNS41IDEzLjI1ODMgNS44MzgyOCAxMy42Mjk5IDYuNDAzMzJMMTMuNzAxMiA2LjUxOTUzTDE5LjIzNDQgMTYuMzM0QzE5LjQwMjMgMTYuNjQzMiAxOS40OTM3IDE2Ljk5MjcgMTkuNSAxNy4zNDk2QzE5LjUwNjIgMTcuNzA2OCAxOS40MjY3IDE4LjA2MDIgMTkuMjY5NSAxOC4zNzZDMTkuMTEyNCAxOC42OTE2IDE4Ljg4MjcgMTguOTU5NyAxOC42MDE1IDE5LjE1NTNDMTguMzIwMiAxOS4zNTA4IDE3Ljk5NjQgMTkuNDY3NiAxNy42NjExIDE5LjQ5NDFMMTcuNTI4MyAxOS41SDYuNDY0ODNDNi4xMjkxNSAxOS40OTYgNS43OTk4OCAxOS40MDE0IDUuNTA3OCAxOS4yMjU2QzUuMjE1OTIgMTkuMDQ5OSA0Ljk3MDY3IDE4Ljc5ODcgNC43OTQ5MSAxOC40OTUxQzQuNjE5MSAxOC4xOTEzIDQuNTE3NzIgMTcuODQ0NSA0LjUwMTk0IDE3LjQ4ODNDNC40ODYxOSAxNy4xMzIxIDQuNTU1OTQgMTYuNzc3IDQuNzA0MDkgMTYuNDU3TDQuNzcxNDcgMTYuMzIzMkwxMC4zMDE3IDYuNTE2NkMxMC40Nzg4IDYuMjA2NDIgMTAuNzI3OSA1Ljk0OTUxIDExLjAyNTQgNS43NzE0OEMxMS4zMjI4IDUuNTkzNDkgMTEuNjU4NiA1LjUwMDExIDEyIDUuNVpNMTEuODgyOCAxNS4wMDY4QzExLjY0IDE1LjAzNTggMTEuNDE2MyAxNS4xNTMxIDExLjI1MzkgMTUuMzM1OUMxMS4wOTE0IDE1LjUxODkgMTEuMDAxIDE1Ljc1NTIgMTEuMDAxIDE2QzExLjAwMSAxNi4yNDQ4IDExLjA5MTQgMTYuNDgxMSAxMS4yNTM5IDE2LjY2NDFDMTEuNDE2MyAxNi44NDY5IDExLjY0IDE2Ljk2NDIgMTEuODgyOCAxNi45OTMyTDEyIDE3TDEyLjEyNjkgMTYuOTkzMkMxMi4zNyAxNi45NjQzIDEyLjU5NDMgMTYuODQ3MSAxMi43NTY4IDE2LjY2NDFDMTIuOTE5NCAxNi40ODExIDEzLjAwODggMTYuMjQ0OCAxMy4wMDg4IDE2QzEzLjAwODggMTUuNzU1MiAxMi45MTk0IDE1LjUxODkgMTIuNzU2OCAxNS4zMzU5QzEyLjU5NDMgMTUuMTUyOSAxMi4zNyAxNS4wMzU3IDEyLjEyNjkgMTUuMDA2OEwxMi4wMDk4IDE1TDExLjg4MjggMTUuMDA2OFpNMTIgOEMxMS43NTUxIDguMDAwMDkgMTEuNTE4OSA4LjA5MDIyIDExLjMzNTkgOC4yNTI5M0MxMS4xNTMgOC40MTU2NSAxMS4wMzU1IDguNjM5NjQgMTEuMDA2OCA4Ljg4MjgxTDExIDlWMTNMMTEuMDA2OCAxMy4xMTcyQzExLjAzNTggMTMuMzYwMiAxMS4xNTI5IDEzLjU4NDYgMTEuMzM1OSAxMy43NDcxQzExLjUxODkgMTMuOTA5NSAxMS43NTUzIDEzLjk5OSAxMiAxMy45OTlDMTIuMjQ0NiAxMy45OTkgMTIuNDgxMSAxMy45MDk0IDEyLjY2NCAxMy43NDcxQzEyLjg0NyAxMy41ODQ2IDEyLjk2NDIgMTMuMzYwMiAxMi45OTMxIDEzLjExNzJMMTMgMTNWOUwxMi45OTMxIDguODgyODFDMTIuOTY0NSA4LjYzOTc5IDEyLjg0NzggOC40MTU2MiAxMi42NjUgOC4yNTI5M0MxMi40ODIgOC4wOTAxNyAxMi4yNDQ5IDguMDAwMDMgMTIgOFoiIGZpbGw9IiNGRkNGMUEiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF9hbGVydDIiPgo8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==",
|
|
@@ -93,6 +82,7 @@ var SYSTEM_ICON_DATA_URLS = {
|
|
|
93
82
|
"line/check-circle": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik04IDEyLjVMMTAuOCAxNS4zTDE2IDkuNSIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=",
|
|
94
83
|
"line/check": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUgMTJMMTAgMTdMMTkgOCIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=",
|
|
95
84
|
"line/chevron-down": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUuNCA4LjQ1TDEyIDE1LjU1TDE4LjYgOC40NSIgc3Ryb2tlPSIjNDU0RjVCIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=",
|
|
85
|
+
"line/chevron-left": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1LjU1IDUuNEw4LjQ1IDEyTDE1LjU1IDE4LjYiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",
|
|
96
86
|
"line/chevron-right": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTguNDUgNS40TDE1LjU1IDEyTDguNDUgMTguNiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=",
|
|
97
87
|
"line/chevron-up": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUuNCAxNS41NUwxMiA4LjQ1TDE4LjYgMTUuNTUiIHN0cm9rZT0iIzQ1NEY1QiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",
|
|
98
88
|
"line/clipboard": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM5XzM1NTgyKSI+CjxwYXRoIGQ9Ik05IDVIN0M2LjQ2OTU3IDUgNS45NjA4NiA1LjIxMDcxIDUuNTg1NzkgNS41ODU3OUM1LjIxMDcxIDUuOTYwODYgNSA2LjQ2OTU3IDUgN1YxOUM1IDE5LjUzMDQgNS4yMTA3MSAyMC4wMzkxIDUuNTg1NzkgMjAuNDE0MkM1Ljk2MDg2IDIwLjc4OTMgNi40Njk1NyAyMSA3IDIxSDE3QzE3LjUzMDQgMjEgMTguMDM5MSAyMC43ODkzIDE4LjQxNDIgMjAuNDE0MkMxOC43ODkzIDIwLjAzOTEgMTkgMTkuNTMwNCAxOSAxOVY3QzE5IDYuNDY5NTcgMTguNzg5MyA1Ljk2MDg2IDE4LjQxNDIgNS41ODU3OUMxOC4wMzkxIDUuMjEwNzEgMTcuNTMwNCA1IDE3IDVIMTUiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNOSA1QzkgNC40Njk1NyA5LjIxMDcxIDMuOTYwODYgOS41ODU3OSAzLjU4NTc5QzkuOTYwODYgMy4yMTA3MSAxMC40Njk2IDMgMTEgM0gxM0MxMy41MzA0IDMgMTQuMDM5MSAzLjIxMDcxIDE0LjQxNDIgMy41ODU3OUMxNC43ODkzIDMuOTYwODYgMTUgNC40Njk1NyAxNSA1QzE1IDUuNTMwNDMgMTQuNzg5MyA2LjAzOTE0IDE0LjQxNDIgNi40MTQyMUMxNC4wMzkxIDYuNzg5MjkgMTMuNTMwNCA3IDEzIDdIMTFDMTAuNDY5NiA3IDkuOTYwODYgNi43ODkyOSA5LjU4NTc5IDYuNDE0MjFDOS4yMTA3MSA2LjAzOTE0IDkgNS41MzA0MyA5IDVaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTkgMTdWMTMiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTIgMTdWMTYiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTUgMTdWMTUiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTIgMTdWMTYiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzM5XzM1NTgyIj4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",
|
|
@@ -113,7 +103,6 @@ var SYSTEM_ICON_DATA_URLS = {
|
|
|
113
103
|
"line/help-circle": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik05LjA5IDlDOS4zMjUxIDguMzMxNjcgOS43ODkxNSA3Ljc2ODExIDEwLjQgNy4zOTgwM0MxMS4wMTA4IDcuMDI3OTUgMTEuNzMwMyA2Ljg3Mzk5IDEyLjQzIDYuOTYzNEMxMy4xMjk3IDcuMDUyODIgMTMuNzY2OCA3LjM4MDI3IDE0LjIyOCA3Ljg4NzU1QzE0LjY4OTIgOC4zOTQ4MyAxNC45NDU4IDkuMDUwNiAxNC45NSA5LjczN0MxNC45NSAxMS41IDEyIDEyLjUgMTIgMTMuNSIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xMiAxNi41VjE2LjUxIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==",
|
|
114
104
|
"line/home": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE3XzY0NzYpIj4KPHBhdGggZD0iTTE5IDguNzEwMDFMMTMuNjY3IDQuNTYyMDFDMTMuMTk5IDQuMTk3OTIgMTIuNjIzIDQuMDAwMjQgMTIuMDMgNC4wMDAyNEMxMS40MzcxIDQuMDAwMjQgMTAuODYxIDQuMTk3OTIgMTAuMzkzIDQuNTYyMDFMNS4wNTkwMyA4LjcxMDAxQzQuNzM4NDcgOC45NTkzIDQuNDc5MTIgOS4yNzg1NCA0LjMwMDc4IDkuNjQzMzZDNC4xMjI0NSAxMC4wMDgyIDQuMDI5ODQgMTAuNDA4OSA0LjAzMDAzIDEwLjgxNVYxOC4wMTVDNC4wMzAwMyAxOC41NDU0IDQuMjQwNzQgMTkuMDU0MiA0LjYxNTgyIDE5LjQyOTJDNC45OTA4OSAxOS44MDQzIDUuNDk5NiAyMC4wMTUgNi4wMzAwMyAyMC4wMTVIMTguMDNDMTguNTYwNSAyMC4wMTUgMTkuMDY5MiAxOS44MDQzIDE5LjQ0NDIgMTkuNDI5MkMxOS44MTkzIDE5LjA1NDIgMjAuMDMgMTguNTQ1NCAyMC4wMyAxOC4wMTVWMTAuODE1QzIwLjAzIDkuOTkyMDEgMTkuNjUgOS4yMTUwMSAxOSA4LjcxMDAxWiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xNiAxNUMxMy43OSAxNi4zMzMgMTAuMjA4IDE2LjMzMyA4IDE1IiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xN182NDc2Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",
|
|
115
105
|
"line/input-check-mark": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNOC4xNjQ5IDEyLjc2NjZDOC4wNTQxNyAxMi43NjYgNy45NDQ3NiAxMi43NDI2IDcuODQzNDYgMTIuNjk3OUM3Ljc0MjE2IDEyLjY1MzEgNy42NTExNCAxMi41ODggNy41NzYwOSAxMi41MDY2TDQuMjQ0MDcgOC45NTA2NkM0LjA4NzA2IDguNzc5MDMgNCA4LjU1NDkgNCA4LjMyMjI2QzQgOC4wODk2MiA0LjA4NzA2IDcuODY1MzYgNC4yNDQwNyA3LjY5MzczQzQuMzE4OTggNy42MTIyMSA0LjQxIDcuNTQ3MSA0LjUxMTM1IDcuNTAyNThDNC42MTI3MSA3LjQ1ODA2IDQuNzIyMjIgNy40MzUwNyA0LjgzMjkxIDcuNDM1MDdDNC45NDM2MSA3LjQzNTA3IDUuMDUzMDkgNy40NTgwNiA1LjE1NDQ0IDcuNTAyNThDNS4yNTU4IDcuNTQ3MSA1LjM0NjgyIDcuNjEyMjEgNS40MjE3MyA3LjY5MzczTDguMTIwOTEgMTAuNTcxN0wxMi41MzQ2IDUuMDc3ODRDMTIuNjAyMyA0Ljk5MDA1IDEyLjY4NzYgNC45MTczIDEyLjc4NDkgNC44NjQyMkMxMi44ODIyIDQuODExMTMgMTIuOTg5NSA0Ljc3ODkgMTMuMSA0Ljc2OTQ5QzEzLjIxMDQgNC43NjAwOSAxMy4zMjE2IDQuNzczNjYgMTMuNDI2NSA0LjgwOTUzQzEzLjUzMTQgNC44NDU0IDEzLjYyNzcgNC45MDI3OSAxMy43MDkzIDQuOTc3ODZDMTMuODc4MSA1LjEzNzQ4IDEzLjk4MSA1LjM1NDYxIDEzLjk5NzYgNS41ODYzN0MxNC4wMTQzIDUuODE4MTMgMTMuOTQzNSA2LjA0NzY1IDEzLjc5OTIgNi4yMjk3OEw4LjgwMDczIDEyLjQ1MTdDOC43Mjg4MyAxMi41NDMzIDguNjM4MDIgMTIuNjE4MyA4LjUzNDUxIDEyLjY3MTZDOC40MzEgMTIuNzI1IDguMzE3MjEgMTIuNzU1MyA4LjIwMDkgMTIuNzYwNkw4LjE2NDkgMTIuNzY2NloiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPgo=",
|
|
116
|
-
"line/input": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cmVjdCB4PSIwLjc1IiB5PSIwLjc1IiB3aWR0aD0iMTYuNSIgaGVpZ2h0PSIxNi41IiByeD0iMi4yNSIgc3Ryb2tlPSIjQzhEMEQ5IiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",
|
|
117
106
|
"line/layout-grid": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEwNl8yODg1OSkiPgo8cGF0aCBkPSJNNCA1QzQgNC43MzQ3OCA0LjEwNTM2IDQuNDgwNDMgNC4yOTI4OSA0LjI5Mjg5QzQuNDgwNDMgNC4xMDUzNiA0LjczNDc4IDQgNSA0SDlDOS4yNjUyMiA0IDkuNTE5NTcgNC4xMDUzNiA5LjcwNzExIDQuMjkyODlDOS44OTQ2NCA0LjQ4MDQzIDEwIDQuNzM0NzggMTAgNVY5QzEwIDkuMjY1MjIgOS44OTQ2NCA5LjUxOTU3IDkuNzA3MTEgOS43MDcxMUM5LjUxOTU3IDkuODk0NjQgOS4yNjUyMiAxMCA5IDEwSDVDNC43MzQ3OCAxMCA0LjQ4MDQzIDkuODk0NjQgNC4yOTI4OSA5LjcwNzExQzQuMTA1MzYgOS41MTk1NyA0IDkuMjY1MjIgNCA5VjVaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTE0IDVDMTQgNC43MzQ3OCAxNC4xMDU0IDQuNDgwNDMgMTQuMjkyOSA0LjI5Mjg5QzE0LjQ4MDQgNC4xMDUzNiAxNC43MzQ4IDQgMTUgNEgxOUMxOS4yNjUyIDQgMTkuNTE5NiA0LjEwNTM2IDE5LjcwNzEgNC4yOTI4OUMxOS44OTQ2IDQuNDgwNDMgMjAgNC43MzQ3OCAyMCA1VjlDMjAgOS4yNjUyMiAxOS44OTQ2IDkuNTE5NTcgMTkuNzA3MSA5LjcwNzExQzE5LjUxOTYgOS44OTQ2NCAxOS4yNjUyIDEwIDE5IDEwSDE1QzE0LjczNDggMTAgMTQuNDgwNCA5Ljg5NDY0IDE0LjI5MjkgOS43MDcxMUMxNC4xMDU0IDkuNTE5NTcgMTQgOS4yNjUyMiAxNCA5VjVaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTQgMTVDNCAxNC43MzQ4IDQuMTA1MzYgMTQuNDgwNCA0LjI5Mjg5IDE0LjI5MjlDNC40ODA0MyAxNC4xMDU0IDQuNzM0NzggMTQgNSAxNEg5QzkuMjY1MjIgMTQgOS41MTk1NyAxNC4xMDU0IDkuNzA3MTEgMTQuMjkyOUM5Ljg5NDY0IDE0LjQ4MDQgMTAgMTQuNzM0OCAxMCAxNVYxOUMxMCAxOS4yNjUyIDkuODk0NjQgMTkuNTE5NiA5LjcwNzExIDE5LjcwNzFDOS41MTk1NyAxOS44OTQ2IDkuMjY1MjIgMjAgOSAyMEg1QzQuNzM0NzggMjAgNC40ODA0MyAxOS44OTQ2IDQuMjkyODkgMTkuNzA3MUM0LjEwNTM2IDE5LjUxOTYgNCAxOS4yNjUyIDQgMTlWMTVaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTE0IDE1QzE0IDE0LjczNDggMTQuMTA1NCAxNC40ODA0IDE0LjI5MjkgMTQuMjkyOUMxNC40ODA0IDE0LjEwNTQgMTQuNzM0OCAxNCAxNSAxNEgxOUMxOS4yNjUyIDE0IDE5LjUxOTYgMTQuMTA1NCAxOS43MDcxIDE0LjI5MjlDMTkuODk0NiAxNC40ODA0IDIwIDE0LjczNDggMjAgMTVWMTlDMjAgMTkuMjY1MiAxOS44OTQ2IDE5LjUxOTYgMTkuNzA3MSAxOS43MDcxQzE5LjUxOTYgMTkuODk0NiAxOS4yNjUyIDIwIDE5IDIwSDE1QzE0LjczNDggMjAgMTQuNDgwNCAxOS44OTQ2IDE0LjI5MjkgMTkuNzA3MUMxNC4xMDU0IDE5LjUxOTYgMTQgMTkuMjY1MiAxNCAxOVYxNVoiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwNl8yODg1OSI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K",
|
|
118
107
|
"line/lock": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUgMTNDNSAxMi40Njk2IDUuMjEwNzEgMTEuOTYwOSA1LjU4NTc5IDExLjU4NThDNS45NjA4NiAxMS4yMTA3IDYuNDY5NTcgMTEgNyAxMUgxN0MxNy41MzA0IDExIDE4LjAzOTEgMTEuMjEwNyAxOC40MTQyIDExLjU4NThDMTguNzg5MyAxMS45NjA5IDE5IDEyLjQ2OTYgMTkgMTNWMTlDMTkgMTkuNTMwNCAxOC43ODkzIDIwLjAzOTEgMTguNDE0MiAyMC40MTQyQzE4LjAzOTEgMjAuNzg5MyAxNy41MzA0IDIxIDE3IDIxSDdDNi40Njk1NyAyMSA1Ljk2MDg2IDIwLjc4OTMgNS41ODU3OSAyMC40MTQyQzUuMjEwNzEgMjAuMDM5MSA1IDE5LjUzMDQgNSAxOVYxM1oiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTEgMTZDMTEgMTYuMjY1MiAxMS4xMDU0IDE2LjUxOTYgMTEuMjkyOSAxNi43MDcxQzExLjQ4MDQgMTYuODk0NiAxMS43MzQ4IDE3IDEyIDE3QzEyLjI2NTIgMTcgMTIuNTE5NiAxNi44OTQ2IDEyLjcwNzEgMTYuNzA3MUMxMi44OTQ2IDE2LjUxOTYgMTMgMTYuMjY1MiAxMyAxNkMxMyAxNS43MzQ4IDEyLjg5NDYgMTUuNDgwNCAxMi43MDcxIDE1LjI5MjlDMTIuNTE5NiAxNS4xMDU0IDEyLjI2NTIgMTUgMTIgMTVDMTEuNzM0OCAxNSAxMS40ODA0IDE1LjEwNTQgMTEuMjkyOSAxNS4yOTI5QzExLjEwNTQgMTUuNDgwNCAxMSAxNS43MzQ4IDExIDE2WiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik04IDExVjdDOCA1LjkzOTEzIDguNDIxNDMgNC45MjE3MiA5LjE3MTU3IDQuMTcxNTdDOS45MjE3MiAzLjQyMTQzIDEwLjkzOTEgMyAxMiAzQzEzLjA2MDkgMyAxNC4wNzgzIDMuNDIxNDMgMTQuODI4NCA0LjE3MTU3QzE1LjU3ODYgNC45MjE3MiAxNiA1LjkzOTEzIDE2IDdWMTEiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",
|
|
119
108
|
"line/logout": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM5XzM1NjMxKSI+CjxwYXRoIGQ9Ik0xMCA4VjZDMTAgNS40Njk1NyAxMC4yMTA3IDQuOTYwODYgMTAuNTg1OCA0LjU4NTc5QzEwLjk2MDkgNC4yMTA3MSAxMS40Njk2IDQgMTIgNEgxOUMxOS41MzA0IDQgMjAuMDM5MSA0LjIxMDcxIDIwLjQxNDIgNC41ODU3OUMyMC43ODkzIDQuOTYwODYgMjEgNS40Njk1NyAyMSA2VjE4QzIxIDE4LjUzMDQgMjAuNzg5MyAxOS4wMzkxIDIwLjQxNDIgMTkuNDE0MkMyMC4wMzkxIDE5Ljc4OTMgMTkuNTMwNCAyMCAxOSAyMEgxMkMxMS40Njk2IDIwIDEwLjk2MDkgMTkuNzg5MyAxMC41ODU4IDE5LjQxNDJDMTAuMjEwNyAxOS4wMzkxIDEwIDE4LjUzMDQgMTAgMThWMTYiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTUgMTJIM0w2IDkiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNNiAxNUwzIDEyIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8zOV8zNTYzMSI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K",
|
|
@@ -131,7 +120,6 @@ var SYSTEM_ICON_DATA_URLS = {
|
|
|
131
120
|
"line/player-play": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTcgNFYyMEwyMCAxMkw3IDRaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KCjwvc3ZnPgo=",
|
|
132
121
|
"line/player-skip-forward": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTQgNVYxOUwxNiAxMkw0IDVaIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggaWQ9IlZlY3Rvcl8yIiBkPSJNMjAgNVYxOSIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cgo8L3N2Zz4K",
|
|
133
122
|
"line/plus": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM5XzM1NTg3KSI+CjxwYXRoIGQ9Ik0xMiA1VjE5IiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTUgMTJIMTkiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzM5XzM1NTg3Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",
|
|
134
|
-
"line/radio": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8Y2lyY2xlIGN4PSI5IiBjeT0iOSIgcj0iNy41IiBzdHJva2U9IiNDOEQwRDkiIHN0cm9rZS13aWR0aD0iMyIvPgo8L3N2Zz4K",
|
|
135
123
|
"line/refresh 1": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIwIDExQzE5Ljc1NTQgOS4yNDAxNyAxOC45MzkxIDcuNjA5NjEgMTcuNjc2NiA2LjM1OTQ1QzE2LjQxNDIgNS4xMDkyOCAxNC43NzU4IDQuMzA4ODcgMTMuMDEzNyA0LjA4MTVDMTEuMjUxNiAzLjg1NDE0IDkuNDYzNjIgNC4yMTI0MyA3LjkyNTIgNS4xMDEyQzYuMzg2NzggNS45ODk5NiA1LjE4MzI1IDcuMzU5ODkgNC41IDguOTk5OTVNNCA0Ljk5OTk1VjguOTk5OTVIOCIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik00IDEzQzQuMjQ0NTYgMTQuNzU5OCA1LjA2MDkzIDE2LjM5MDMgNi4zMjMzNiAxNy42NDA1QzcuNTg1NzkgMTguODkwNyA5LjIyNDI0IDE5LjY5MTEgMTAuOTg2MyAxOS45MTg0QzEyLjc0ODQgMjAuMTQ1OCAxNC41MzY0IDE5Ljc4NzUgMTYuMDc0OCAxOC44OTg4QzE3LjYxMzIgMTguMDEgMTguODE2OCAxNi42NDAxIDE5LjUgMTVNMjAgMTlWMTVIMTYiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K",
|
|
136
124
|
"line/refresh": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM5XzIyMDE1KSI+CjxwYXRoIGQ9Ik0yMCAxMUMxOS43NTU0IDkuMjQwMjMgMTguOTM5MSA3LjYwOTY3IDE3LjY3NjYgNi4zNTk1MUMxNi40MTQyIDUuMTA5MzQgMTQuNzc1OCA0LjMwODkzIDEzLjAxMzcgNC4wODE1NkMxMS4yNTE2IDMuODU0MiA5LjQ2MzYyIDQuMjEyNDkgNy45MjUyIDUuMTAxMjZDNi4zODY3OCA1Ljk5MDAyIDUuMTgzMjUgNy4zNTk5NSA0LjUgOS4wMDAwMU00IDUuMDAwMDFWOS4wMDAwMUg4IiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTQgMTNDNC4yNDQ1NiAxNC43NTk4IDUuMDYwOTMgMTYuMzkwMyA2LjMyMzM2IDE3LjY0MDVDNy41ODU3OSAxOC44OTA3IDkuMjI0MjQgMTkuNjkxMSAxMC45ODYzIDE5LjkxODRDMTIuNzQ4NCAyMC4xNDU4IDE0LjUzNjQgMTkuNzg3NSAxNi4wNzQ4IDE4Ljg5ODhDMTcuNjEzMiAxOC4wMSAxOC44MTY4IDE2LjY0MDEgMTkuNSAxNU0yMCAxOVYxNUgxNiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMzlfMjIwMTUiPgo8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==",
|
|
137
125
|
"line/report": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEwOF8zMjkwNykiPgo8cGF0aCBkPSJNOCA1SDZDNS40Njk1NyA1IDQuOTYwODYgNS4yMTA3MSA0LjU4NTc5IDUuNTg1NzlDNC4yMTA3MSA1Ljk2MDg2IDQgNi40Njk1NyA0IDdWMTlDNCAxOS41MzA0IDQuMjEwNzEgMjAuMDM5MSA0LjU4NTc5IDIwLjQxNDJDNC45NjA4NiAyMC43ODkzIDUuNDY5NTcgMjEgNiAyMUgxMS42OTciIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTggMTRWMThIMjIiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTggMTFWN0MxOCA2LjQ2OTU3IDE3Ljc4OTMgNS45NjA4NiAxNy40MTQyIDUuNTg1NzlDMTcuMDM5MSA1LjIxMDcxIDE2LjUzMDQgNSAxNiA1SDE0IiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTggNUM4IDQuNDY5NTcgOC4yMTA3MSAzLjk2MDg2IDguNTg1NzkgMy41ODU3OUM4Ljk2MDg2IDMuMjEwNzEgOS40Njk1NyAzIDEwIDNIMTJDMTIuNTMwNCAzIDEzLjAzOTEgMy4yMTA3MSAxMy40MTQyIDMuNTg1NzlDMTMuNzg5MyAzLjk2MDg2IDE0IDQuNDY5NTcgMTQgNUMxNCA1LjUzMDQzIDEzLjc4OTMgNi4wMzkxNCAxMy40MTQyIDYuNDE0MjFDMTMuMDM5MSA2Ljc4OTI5IDEyLjUzMDQgNyAxMiA3SDEwQzkuNDY5NTcgNyA4Ljk2MDg2IDYuNzg5MjkgOC41ODU3OSA2LjQxNDIxQzguMjEwNzEgNi4wMzkxNCA4IDUuNTMwNDMgOCA1WiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xNS4xNzE2IDIwLjgyODRDMTQuNDIxNCAyMC4wNzgzIDE0IDE5LjA2MDkgMTQgMThDMTQgMTYuOTM5MSAxNC40MjE0IDE1LjkyMTcgMTUuMTcxNiAxNS4xNzE2QzE1LjkyMTcgMTQuNDIxNCAxNi45MzkxIDE0IDE4IDE0QzE5LjA2MDkgMTQgMjAuMDc4MyAxNC40MjE0IDIwLjgyODQgMTUuMTcxNkMyMS41Nzg2IDE1LjkyMTcgMjIgMTYuOTM5MSAyMiAxOEMyMiAxOS4wNjA5IDIxLjU3ODYgMjAuMDc4MyAyMC44Mjg0IDIwLjgyODRDMjAuMDc4MyAyMS41Nzg2IDE5LjA2MDkgMjIgMTggMjJDMTYuOTM5MSAyMiAxNS45MjE3IDIxLjU3ODYgMTUuMTcxNiAyMC44Mjg0WiIgc3Ryb2tlPSIjNDA0NzRGIiBzdHJva2Utd2lkdGg9IjEuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik04IDExSDEyIiBzdHJva2U9IiM0MDQ3NEYiIHN0cm9rZS13aWR0aD0iMS4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTggMTVIMTEiIHN0cm9rZT0iIzQwNDc0RiIgc3Ryb2tlLXdpZHRoPSIxLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwOF8zMjkwNyI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K",
|
|
@@ -162,4 +150,4 @@ var SYSTEM_ICON_DATA_URLS = {
|
|
|
162
150
|
export {
|
|
163
151
|
SYSTEM_ICON_DATA_URLS
|
|
164
152
|
};
|
|
165
|
-
//# sourceMappingURL=chunk-
|
|
153
|
+
//# sourceMappingURL=chunk-NHYZ7AWK.js.map
|