@iyulab/modern-app 0.3.1 → 0.3.3

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/CHANGELOG.md CHANGED
@@ -1,14 +1,48 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.3 (2026-04-01)
4
+
5
+ ### Fixes
6
+ - **Sidebar 컴포넌트 customElement 등록명 수정**: `sidebar-*` → `u-sidebar-*` 접두사 추가
7
+ - `SidebarButton`, `SidebarGroup`, `SidebarLink`, `SidebarSection` 4개 컴포넌트
8
+ - `SidebarLayout` 템플릿에서 `u-sidebar-*`로 참조하지만 등록은 `sidebar-*`로 되어 있어 렌더링 안 되던 버그 수정
9
+
10
+ ## 0.3.2 (2026-04-01)
11
+
12
+ ### Breaking Changes
13
+ - **`@iyulab/components` major upgrade**: `^0.4.0` → `^1.0.0`
14
+ - `Notifier` → `Toast` API migration
15
+ - `AlertType` → `AlertStatus`, `ScreenPosition` → `ToastPosition` type rename
16
+ - `IconRegistry` import path: `utilities/IconRegistry.js` → `utilities/icons.js`
17
+ - Component import style: `.component.js` → side-effect import (`UIcon.js`, `UButton.js`, etc.)
18
+
19
+ ### Refactor
20
+ - **Component registration migration**: Removed `static dependencies` pattern → `@customElement` decorator + side-effect import
21
+ - **Simplified Toast API**: Removed `private notify()` method from `App` class, each notification method now calls `Toast.notice()`, etc. directly
22
+
23
+ ### Fixes
24
+ - Changed `updated()` → `willUpdate()` in `SidebarLayout` to resolve update-in-update anti-pattern
25
+ - Switched `SidebarLayout` icon library from inline `sidebar-app` to `bootstrap`, removed inline SVG registration code
26
+
27
+ ### Dependencies
28
+ - `@iyulab/components` ^0.4.0 → ^1.0.0
29
+ - `i18next` ^25.8.13 → ^25.10.10
30
+ - `vite` ^7.3.1 → ^8.0.3
31
+ - `@types/node` ^25.3.2 → ^25.5.0
32
+
3
33
  ## 0.3.1 (2026-03-05)
4
34
 
5
35
  ### Breaking Changes
6
- - **Slot 기반 Outlet 구조**: `SidebarLayout` 내부의 `<u-outlet>`을 `<slot>`으로 변경하고, `App`에서 Light DOM에 `<u-outlet>`을 추가하는 방식으로 전환. 이를 통해 React 라우팅 외부 CSS 정상적으로 적용됨
36
+ - **Slot-based Outlet structure**: Replaced `<u-outlet>` inside `SidebarLayout` with `<slot>`, and moved `<u-outlet>` to Light DOM in `App`. This allows external CSS to apply correctly during React routing
7
37
 
8
38
  ### Changes
9
- - **BaseElement → UElement 마이그레이션**: 모든 컴포넌트의 기반 클래스를 `BaseElement`에서 `UElement`로 변경
10
- - **SidebarLinkConfig**: `type` 속성을 optional에서 required로 변경
11
- - **import 경로 수정**: `Theme.js`, `Notifier.js` 등 대소문자 교정
39
+ - **BaseElement → UElement migration**: Changed base class of all components from `BaseElement` to `UElement`
40
+ - **SidebarLinkConfig**: Changed `type` property from optional to required
41
+ - **Fixed import paths**: Corrected casing for `Theme.js`, `Notifier.js`, etc.
42
+
43
+ ### Fixes
44
+ - Removed duplicate `color` property in `SidebarButton.styles.ts`
45
+ - Cleaned up unused callback parameters in `repeat` directive
12
46
 
13
47
  ### Dependencies
14
48
  - `@iyulab/components` ^0.2.0 → ^0.4.0
@@ -16,10 +50,6 @@
16
50
  - `i18next` ^25.8.0 → ^25.8.13
17
51
  - `@types/node` ^25.0.9 → ^25.3.2
18
52
 
19
- ### Fixes
20
- - `SidebarButton.styles.ts`에서 중복된 `color` 속성 제거
21
- - `repeat` 디렉티브의 미사용 콜백 파라미터 정리
22
-
23
53
  ## 0.3.0 (2026-01-21)
24
54
 
25
55
  ### Breaking Changes
package/dist/App.d.ts CHANGED
@@ -41,8 +41,6 @@ declare class App {
41
41
  success(message: string, options?: NotificationOptions): Promise<void>;
42
42
  /** 에러 메시지 */
43
43
  error(message: string, options?: NotificationOptions): Promise<void>;
44
- /** 알림 표시 */
45
- private notify;
46
44
  /** 레이아웃 생성 */
47
45
  private createLayout;
48
46
  }
package/dist/App.js CHANGED
@@ -1,108 +1,77 @@
1
- import r from "i18next";
2
- import { Router as u } from "@iyulab/router";
3
- import { setDefaultBaseUrl as h } from "@iyulab/components/dist/utilities/IconRegistry.js";
4
- import { Theme as n } from "@iyulab/components/dist/utilities/Theme.js";
5
- import { Notifier as c } from "@iyulab/components/dist/utilities/Notifier.js";
6
- import { ScreenObserver as y } from "./internals/ScreenObserver.js";
7
- class o {
8
- // private 생성자로 외부에서 인스턴스 생성 방지
9
- constructor() {
10
- }
11
- /** 싱글톤 인스턴스 반환 */
12
- static get instance() {
13
- return o._instance || (o._instance = new o()), o._instance;
14
- }
15
- /** 현재 앱 설정 반환 */
16
- get config() {
17
- return this._config;
18
- }
19
- /** 라우터 인스턴스 반환 */
20
- get router() {
21
- return this._router;
22
- }
23
- /** 화면 크기 반환 */
24
- get screen() {
25
- return this._screen?.get();
26
- }
27
- /** 스타일 테마 관리 유틸리티 객체 반환 */
28
- get theme() {
29
- return n;
30
- }
31
- /** 다국어 로컬라이저(i18next) 반환 */
32
- get i18n() {
33
- return r;
34
- }
35
- /** 로드 초기화 */
36
- async load(t) {
37
- if (this.unload(), this._config = t, await n.init(t.theme), t.iconBasepath && h(t.iconBasepath), t.i18n) {
38
- for (const a of t.i18n.plugins || [])
39
- r.use(a);
40
- await r.init(t.i18n);
41
- }
42
- const e = t.root || document.body;
43
- this._layout = await this.createLayout(e, t.layout), this._screen = new y({
44
- element: e,
45
- breakpoints: t.layout.breakpoints || [768, 1024]
46
- });
47
- const i = document.createElement("u-outlet");
48
- this._layout.appendChild(i), this._router = new u({
49
- root: this._layout,
50
- basepath: t.basepath,
51
- routes: t.routes,
52
- fallback: t.fallback
53
- });
54
- }
55
- /** 언로드 */
56
- unload() {
57
- this._screen && (this._screen.destroy(), this._screen = void 0), this._layout && (this._layout.remove(), this._layout = void 0), this._router && (this._router.destroy(), this._router = void 0), this._config && (this._config = void 0);
58
- }
59
- /** 페이지 이동 */
60
- navigate(t) {
61
- this._router?.go(t);
62
- }
63
- /** 공지 메시지 */
64
- async notice(t, e) {
65
- await this.notify("notice", t, e);
66
- }
67
- /** 정보 메시지 */
68
- async info(t, e) {
69
- await this.notify("info", t, e);
70
- }
71
- /** 경고 메시지 */
72
- async warning(t, e) {
73
- await this.notify("warning", t, e);
74
- }
75
- /** 성공 메시지 */
76
- async success(t, e) {
77
- await this.notify("success", t, e);
78
- }
79
- /** 에러 메시지 */
80
- async error(t, e) {
81
- await this.notify("error", t, e);
82
- }
83
- /** 알림 표시 */
84
- async notify(t, e, i) {
85
- await c.toast({
86
- type: t,
87
- content: e,
88
- heading: i?.title,
89
- duration: i?.duration || 3e3,
90
- position: i?.position || "top-right"
91
- });
92
- }
93
- /** 레이아웃 생성 */
94
- async createLayout(t, e) {
95
- t === document.body && (document.body.style.margin = "0", document.body.style.width = "100vw", document.body.style.height = "100vh");
96
- let i;
97
- if (e.type === "sidebar") {
98
- const { SidebarLayout: a } = await import("./layouts/SidebarLayout.js"), s = new a();
99
- s.config = e, i = s;
100
- } else
101
- throw new Error(`Unsupported layout type: ${e.type}`);
102
- return t.appendChild(i), "updateComplete" in i && await i.updateComplete, i;
103
- }
104
- }
105
- const _ = o.instance;
106
- export {
107
- _ as app
108
- };
1
+ import { ScreenObserver as e } from "./internals/ScreenObserver.js";
2
+ import t from "i18next";
3
+ import { Router as n } from "@iyulab/router";
4
+ import { setDefaultBaseUrl as r } from "@iyulab/components/dist/utilities/icons.js";
5
+ import { Theme as i } from "@iyulab/components/dist/utilities/Theme.js";
6
+ import { Toast as a } from "@iyulab/components/dist/utilities/Toast.js";
7
+ var o = class o {
8
+ constructor() {}
9
+ static get instance() {
10
+ return o._instance ||= new o(), o._instance;
11
+ }
12
+ get config() {
13
+ return this._config;
14
+ }
15
+ get router() {
16
+ return this._router;
17
+ }
18
+ get screen() {
19
+ return this._screen?.get();
20
+ }
21
+ get theme() {
22
+ return i;
23
+ }
24
+ get i18n() {
25
+ return t;
26
+ }
27
+ async load(a) {
28
+ if (this.unload(), this._config = a, await i.init(a.theme), a.iconBasepath && r(a.iconBasepath), a.i18n) {
29
+ for (let e of a.i18n.plugins || []) t.use(e);
30
+ await t.init(a.i18n);
31
+ }
32
+ let o = a.root || document.body;
33
+ this._layout = await this.createLayout(o, a.layout), this._screen = new e({
34
+ element: o,
35
+ breakpoints: a.layout.breakpoints || [768, 1024]
36
+ });
37
+ let s = document.createElement("u-outlet");
38
+ this._layout.appendChild(s), this._router = new n({
39
+ root: this._layout,
40
+ basepath: a.basepath,
41
+ routes: a.routes,
42
+ fallback: a.fallback
43
+ });
44
+ }
45
+ unload() {
46
+ this._screen &&= (this._screen.destroy(), void 0), this._layout &&= (this._layout.remove(), void 0), this._router &&= (this._router.destroy(), void 0), this._config &&= void 0;
47
+ }
48
+ navigate(e) {
49
+ this._router?.go(e);
50
+ }
51
+ async notice(e, t) {
52
+ await a.notice(e, { ...t });
53
+ }
54
+ async info(e, t) {
55
+ await a.info(e, { ...t });
56
+ }
57
+ async warning(e, t) {
58
+ await a.warning(e, { ...t });
59
+ }
60
+ async success(e, t) {
61
+ await a.success(e, { ...t });
62
+ }
63
+ async error(e, t) {
64
+ await a.error(e, { ...t });
65
+ }
66
+ async createLayout(e, t) {
67
+ e === document.body && (document.body.style.margin = "0", document.body.style.width = "100vw", document.body.style.height = "100vh");
68
+ let n;
69
+ if (t.type === "sidebar") {
70
+ let { SidebarLayout: e } = await import("./layouts/SidebarLayout.js"), r = new e();
71
+ r.config = t, n = r;
72
+ } else throw Error(`Unsupported layout type: ${t.type}`);
73
+ return e.appendChild(n), "updateComplete" in n && await n.updateComplete, n;
74
+ }
75
+ }.instance;
76
+ //#endregion
77
+ export { o as app };
@@ -0,0 +1,9 @@
1
+ //#region \0@oxc-project+runtime@0.122.0/helpers/decorate.js
2
+ function e(e, t, n, r) {
3
+ var i = arguments.length, a = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, o;
4
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") a = Reflect.decorate(e, t, n, r);
5
+ else for (var s = e.length - 1; s >= 0; s--) (o = e[s]) && (a = (i < 3 ? o(a) : i > 3 ? o(t, n, a) : o(t, n)) || a);
6
+ return i > 3 && a && Object.defineProperty(t, n, a), a;
7
+ }
8
+ //#endregion
9
+ export { e as __decorate };
@@ -0,0 +1,6 @@
1
+ //#region \0@oxc-project+runtime@0.122.0/helpers/decorateMetadata.js
2
+ function e(e, t) {
3
+ if (typeof Reflect == "object" && typeof Reflect.metadata == "function") return Reflect.metadata(e, t);
4
+ }
5
+ //#endregion
6
+ export { e as __decorateMetadata };
@@ -1,5 +1,4 @@
1
1
  import { DirectiveResult } from 'lit/directive.js';
2
- import { UElement } from '@iyulab/components/dist/components/UElement.js';
3
2
  import { StyledElement, StyleMap } from '../internals/StyledElement.js';
4
3
  /** 버튼 항목 부분 */
5
4
  type ElementParts = 'host' | 'base' | 'icon' | 'label';
@@ -16,7 +15,6 @@ export interface SidebarButtonConfig {
16
15
  */
17
16
  export declare class SidebarButton extends StyledElement<ElementParts> {
18
17
  static styles: import('lit').CSSResultGroup[];
19
- static dependencies: Record<string, typeof UElement>;
20
18
  /** 콤팩트 모드 여부 */
21
19
  compact: boolean;
22
20
  /** 기본 u-icon 경로의 아이콘 이름 */
@@ -1,27 +1,20 @@
1
- import { html as c } from "lit";
2
- import { property as o } from "lit/decorators.js";
3
- import { UIcon as l } from "@iyulab/components/dist/components/icon/UIcon.component.js";
4
- import { StyledElement as m } from "../internals/StyledElement.js";
5
- import { styles as u } from "./SidebarButton.styles.js";
6
- var d = Object.defineProperty, p = (e, n, s, f) => {
7
- for (var t = void 0, r = e.length - 1, a; r >= 0; r--)
8
- (a = e[r]) && (t = a(n, s, t) || t);
9
- return t && d(n, s, t), t;
10
- };
11
- class i extends m {
12
- constructor() {
13
- super(...arguments), this.compact = !1;
14
- }
15
- static {
16
- this.styles = [super.styles, u];
17
- }
18
- static {
19
- this.dependencies = {
20
- "u-icon": l
21
- };
22
- }
23
- render() {
24
- return c`
1
+ import { __decorateMetadata as e } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorateMetadata.js";
2
+ import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.js";
3
+ import { StyledElement as n } from "../internals/StyledElement.js";
4
+ import { styles as r } from "./SidebarButton.styles.js";
5
+ import { html as i } from "lit";
6
+ import { customElement as a, property as o } from "lit/decorators.js";
7
+ import "@iyulab/components/dist/components/icon/UIcon.js";
8
+ //#region src/components/SidebarButton.ts
9
+ var s = class extends n {
10
+ constructor(...e) {
11
+ super(...e), this.compact = !1;
12
+ }
13
+ static {
14
+ this.styles = [super.styles, r];
15
+ }
16
+ render() {
17
+ return i`
25
18
  <button part="base" ?compact=${this.compact}>
26
19
  <u-icon part="icon" ?hidden=${!this.icon}
27
20
  .name=${this.icon}
@@ -31,17 +24,10 @@ class i extends m {
31
24
  </span>
32
25
  </button>
33
26
  `;
34
- }
35
- }
36
- p([
37
- o({ type: Boolean, reflect: !0 })
38
- ], i.prototype, "compact");
39
- p([
40
- o({ type: String })
41
- ], i.prototype, "icon");
42
- p([
43
- o({ type: String })
44
- ], i.prototype, "label");
45
- export {
46
- i as SidebarButton
27
+ }
47
28
  };
29
+ t([o({
30
+ type: Boolean,
31
+ reflect: !0
32
+ }), e("design:type", Object)], s.prototype, "compact", void 0), t([o({ type: String }), e("design:type", String)], s.prototype, "icon", void 0), t([o({ type: String }), e("design:type", Object)], s.prototype, "label", void 0), s = t([a("u-sidebar-button")], s);
33
+ //#endregion
@@ -1,5 +1,6 @@
1
- import { css as o } from "lit";
2
- const e = o`
1
+ import { css as e } from "lit";
2
+ //#region src/components/SidebarButton.styles.ts
3
+ var t = e`
3
4
  :host {
4
5
  display: block;
5
6
  width: 100%;
@@ -54,6 +55,5 @@ const e = o`
54
55
  text-overflow: ellipsis;
55
56
  }
56
57
  `;
57
- export {
58
- e as styles
59
- };
58
+ //#endregion
59
+ export { t as styles };
@@ -1,5 +1,4 @@
1
1
  import { DirectiveResult } from 'lit/directive.js';
2
- import { UElement } from '@iyulab/components/dist/components/UElement.js';
3
2
  import { StyledElement, StyleMap } from '../internals/StyledElement.js';
4
3
  import { SidebarLinkConfig } from './SidebarLink.js';
5
4
  type ElementParts = 'host' | 'header' | 'icon' | 'label' | 'caret' | 'items';
@@ -18,7 +17,6 @@ export interface SidebarGroupConfig {
18
17
  */
19
18
  export declare class SidebarGroup extends StyledElement<ElementParts> {
20
19
  static styles: import('lit').CSSResultGroup[];
21
- static dependencies: Record<string, typeof UElement>;
22
20
  /** 콤팩트 모드 여부 */
23
21
  compact: boolean;
24
22
  /** 선택된 상태 */
@@ -1,30 +1,23 @@
1
- import { html as p } from "lit";
2
- import { property as e } from "lit/decorators.js";
3
- import { UIcon as d } from "@iyulab/components/dist/components/icon/UIcon.component.js";
4
- import { StyledElement as h } from "../internals/StyledElement.js";
5
- import { SidebarLink as m } from "./SidebarLink.js";
6
- import { styles as u } from "./SidebarGroup.styles.js";
7
- var f = Object.defineProperty, o = (i, l, c, a) => {
8
- for (var t = void 0, r = i.length - 1, n; r >= 0; r--)
9
- (n = i[r]) && (t = n(l, c, t) || t);
10
- return t && f(l, c, t), t;
11
- };
12
- class s extends h {
13
- constructor() {
14
- super(...arguments), this.compact = !1, this.selected = !1, this.collapsed = !0, this.handleButtonClick = (l) => {
15
- this.compact ? this.shadowRoot?.querySelector("slot")?.assignedElements({ flatten: !0 }).find((t) => t instanceof m)?.renderRoot.querySelector("u-link")?.click() : this.collapsed = !this.collapsed;
16
- };
17
- }
18
- static {
19
- this.styles = [super.styles, u];
20
- }
21
- static {
22
- this.dependencies = {
23
- "u-icon": d
24
- };
25
- }
26
- render() {
27
- return p`
1
+ import { __decorateMetadata as e } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorateMetadata.js";
2
+ import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.js";
3
+ import { StyledElement as n } from "../internals/StyledElement.js";
4
+ import { SidebarLink as r } from "./SidebarLink.js";
5
+ import { styles as i } from "./SidebarGroup.styles.js";
6
+ import { html as a } from "lit";
7
+ import { customElement as o, property as s } from "lit/decorators.js";
8
+ import "@iyulab/components/dist/components/icon/UIcon.js";
9
+ //#region src/components/SidebarGroup.ts
10
+ var c = class extends n {
11
+ constructor(...e) {
12
+ super(...e), this.compact = !1, this.selected = !1, this.collapsed = !0, this.handleButtonClick = (e) => {
13
+ this.compact ? ((this.shadowRoot?.querySelector("slot")?.assignedElements({ flatten: !0 }).find((e) => e instanceof r))?.renderRoot.querySelector("u-link"))?.click() : this.collapsed = !this.collapsed;
14
+ };
15
+ }
16
+ static {
17
+ this.styles = [super.styles, i];
18
+ }
19
+ render() {
20
+ return a`
28
21
  <button part="header"
29
22
  ?compact=${this.compact}
30
23
  ?selected=${this.selected}
@@ -47,23 +40,16 @@ class s extends h {
47
40
  <slot></slot>
48
41
  </div>
49
42
  `;
50
- }
51
- }
52
- o([
53
- e({ type: Boolean, reflect: !0 })
54
- ], s.prototype, "compact");
55
- o([
56
- e({ type: Boolean, reflect: !0 })
57
- ], s.prototype, "selected");
58
- o([
59
- e({ type: Boolean, reflect: !0 })
60
- ], s.prototype, "collapsed");
61
- o([
62
- e({ type: String })
63
- ], s.prototype, "icon");
64
- o([
65
- e({ type: String })
66
- ], s.prototype, "label");
67
- export {
68
- s as SidebarGroup
43
+ }
69
44
  };
45
+ t([s({
46
+ type: Boolean,
47
+ reflect: !0
48
+ }), e("design:type", Boolean)], c.prototype, "compact", void 0), t([s({
49
+ type: Boolean,
50
+ reflect: !0
51
+ }), e("design:type", Boolean)], c.prototype, "selected", void 0), t([s({
52
+ type: Boolean,
53
+ reflect: !0
54
+ }), e("design:type", Boolean)], c.prototype, "collapsed", void 0), t([s({ type: String }), e("design:type", String)], c.prototype, "icon", void 0), t([s({ type: String }), e("design:type", Object)], c.prototype, "label", void 0), c = t([o("u-sidebar-group")], c);
55
+ //#endregion
@@ -1,5 +1,6 @@
1
- import { css as o } from "lit";
2
- const t = o`
1
+ import { css as e } from "lit";
2
+ //#region src/components/SidebarGroup.styles.ts
3
+ var t = e`
3
4
  :host {
4
5
  display: flex;
5
6
  flex-direction: column;
@@ -83,6 +84,5 @@ const t = o`
83
84
  opacity: 0;
84
85
  }
85
86
  `;
86
- export {
87
- t as styles
88
- };
87
+ //#endregion
88
+ export { t as styles };
@@ -1,5 +1,4 @@
1
1
  import { DirectiveResult } from 'lit/directive.js';
2
- import { UElement } from '@iyulab/components/dist/components/UElement.js';
3
2
  import { StyledElement, StyleMap } from '../internals/StyledElement.js';
4
3
  type ElementParts = 'host' | 'base' | 'icon' | 'label';
5
4
  /** 링크 항목 디폴트 타입 */
@@ -17,7 +16,6 @@ export interface SidebarLinkConfig {
17
16
  */
18
17
  export declare class SidebarLink extends StyledElement<ElementParts> {
19
18
  static styles: import('lit').CSSResultGroup[];
20
- static dependencies: Record<string, typeof UElement>;
21
19
  /** selected 상태 */
22
20
  selected: boolean;
23
21
  /** 콤팩트 모드 여부 */
@@ -1,27 +1,20 @@
1
- import { html as c } from "lit";
2
- import { property as e } from "lit/decorators.js";
3
- import { UIcon as l } from "@iyulab/components/dist/components/icon/UIcon.component.js";
4
- import { StyledElement as m } from "../internals/StyledElement.js";
5
- import { styles as d } from "./SidebarLink.styles.js";
6
- var h = Object.defineProperty, r = (p, n, s, y) => {
7
- for (var t = void 0, i = p.length - 1, a; i >= 0; i--)
8
- (a = p[i]) && (t = a(n, s, t) || t);
9
- return t && h(n, s, t), t;
10
- };
11
- class o extends m {
12
- constructor() {
13
- super(...arguments), this.selected = !1, this.compact = !1;
14
- }
15
- static {
16
- this.styles = [super.styles, d];
17
- }
18
- static {
19
- this.dependencies = {
20
- "u-icon": l
21
- };
22
- }
23
- render() {
24
- return c`
1
+ import { __decorateMetadata as e } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorateMetadata.js";
2
+ import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.js";
3
+ import { StyledElement as n } from "../internals/StyledElement.js";
4
+ import { styles as r } from "./SidebarLink.styles.js";
5
+ import { html as i } from "lit";
6
+ import { customElement as a, property as o } from "lit/decorators.js";
7
+ import "@iyulab/components/dist/components/icon/UIcon.js";
8
+ //#region src/components/SidebarLink.ts
9
+ var s = class extends n {
10
+ constructor(...e) {
11
+ super(...e), this.selected = !1, this.compact = !1;
12
+ }
13
+ static {
14
+ this.styles = [super.styles, r];
15
+ }
16
+ render() {
17
+ return i`
25
18
  <u-link .href=${this.href || "#"}>
26
19
  <div class="container" part="base" ?compact=${this.compact}>
27
20
  <u-icon part="icon" ?hidden=${!this.icon}
@@ -33,26 +26,11 @@ class o extends m {
33
26
  </div>
34
27
  </u-link>
35
28
  `;
36
- }
37
- }
38
- r([
39
- e({ type: Boolean, reflect: !0 })
40
- ], o.prototype, "selected");
41
- r([
42
- e({ type: Boolean })
43
- ], o.prototype, "compact");
44
- r([
45
- e({ type: String })
46
- ], o.prototype, "icon");
47
- r([
48
- e({ type: String })
49
- ], o.prototype, "label");
50
- r([
51
- e({ type: String })
52
- ], o.prototype, "href");
53
- r([
54
- e({ type: String })
55
- ], o.prototype, "pattern");
56
- export {
57
- o as SidebarLink
29
+ }
58
30
  };
31
+ t([o({
32
+ type: Boolean,
33
+ reflect: !0
34
+ }), e("design:type", Object)], s.prototype, "selected", void 0), t([o({ type: Boolean }), e("design:type", Object)], s.prototype, "compact", void 0), t([o({ type: String }), e("design:type", String)], s.prototype, "icon", void 0), t([o({ type: String }), e("design:type", Object)], s.prototype, "label", void 0), t([o({ type: String }), e("design:type", String)], s.prototype, "href", void 0), t([o({ type: String }), e("design:type", Object)], s.prototype, "pattern", void 0), s = t([a("u-sidebar-link")], s);
35
+ //#endregion
36
+ export { s as SidebarLink };
@@ -1,5 +1,6 @@
1
- import { css as o } from "lit";
2
- const e = o`
1
+ import { css as e } from "lit";
2
+ //#region src/components/SidebarLink.styles.ts
3
+ var t = e`
3
4
  :host {
4
5
  display: block;
5
6
  color: var(--u-neutral-800);
@@ -53,6 +54,5 @@ const e = o`
53
54
  text-overflow: ellipsis;
54
55
  }
55
56
  `;
56
- export {
57
- e as styles
58
- };
57
+ //#endregion
58
+ export { t as styles };
@@ -1,5 +1,4 @@
1
1
  import { DirectiveResult } from 'lit/directive.js';
2
- import { UElement } from '@iyulab/components/dist/components/UElement.js';
3
2
  import { StyledElement, StyleMap } from '../internals/StyledElement.js';
4
3
  import { SidebarLinkConfig } from './SidebarLink.js';
5
4
  import { SidebarGroupConfig } from './SidebarGroup.js';
@@ -17,7 +16,6 @@ export interface SidebarSectionConfig {
17
16
  */
18
17
  export declare class SidebarSection extends StyledElement<ElementParts> {
19
18
  static styles: import('lit').CSSResultGroup[];
20
- static dependencies: Record<string, typeof UElement>;
21
19
  /** 콤팩트 모드 여부 */
22
20
  compact: boolean;
23
21
  /** 네비게이션 아이템 데이터 */