@naeil/ui 0.9.0 → 0.10.0
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 +7 -0
- package/dist/{chunk-XRO3NJAB.js → chunk-F7XM5HJ4.js} +40 -154
- package/dist/{chunk-JDHGKM25.js → chunk-GQO6NMXK.js} +267 -2
- package/dist/components/index.js +12 -3
- package/dist/components/naeil-footer.d.ts +3 -3
- package/dist/components/naeil-footer.js +14 -11
- package/dist/components/naeil-header.d.ts +7 -9
- package/dist/components/naeil-header.js +2 -2
- package/dist/lib/ui-release.d.ts +1 -1
- package/dist/lib/ui-release.js +1 -1
- package/dist/naeil-locale/checker.d.ts +16 -0
- package/dist/naeil-locale/checker.js +91 -0
- package/dist/naeil-locale/chrome.d.ts +150 -0
- package/dist/naeil-locale/chrome.js +2385 -0
- package/dist/naeil-locale/chunk-D37JHNUN.js +56 -0
- package/dist/naeil-locale/chunk-N3ETBM74.js +24 -0
- package/dist/naeil-locale/chunk-QWHIELL2.js +161 -0
- package/dist/naeil-locale/chunk-YQ5OJWBF.js +53 -0
- package/dist/naeil-locale/client.d.ts +70 -0
- package/dist/naeil-locale/client.js +382 -0
- package/dist/naeil-locale/en-ZC66VDHP.js +86 -0
- package/dist/naeil-locale/index.d.ts +40 -0
- package/dist/naeil-locale/index.js +111 -0
- package/dist/naeil-locale/ja-DKIEQUG7.js +86 -0
- package/dist/naeil-locale/ko-CY6663RZ.js +86 -0
- package/dist/naeil-locale/messages-BQ-fnCAJ.d.ts +166 -0
- package/dist/naeil-locale/messages.d.ts +1 -0
- package/dist/naeil-locale/messages.js +14 -0
- package/dist/naeil-locale/server.d.ts +75 -0
- package/dist/naeil-locale/server.js +172 -0
- package/dist/source/components/naeil-footer-core.d.ts +16 -0
- package/dist/source/components/naeil-footer-core.js +93 -0
- package/dist/source/components/naeil-footer.d.ts +6 -11
- package/dist/source/components/naeil-footer.js +4 -75
- package/dist/source/components/naeil-header-account-core.d.ts +26 -0
- package/dist/source/components/naeil-header-account-core.js +98 -0
- package/dist/source/components/naeil-header-account.d.ts +6 -22
- package/dist/source/components/naeil-header-account.js +5 -81
- package/dist/source/components/naeil-header-content.d.ts +102 -109
- package/dist/source/components/naeil-header-content.js +6 -142
- package/dist/source/components/naeil-header-core.d.ts +59 -0
- package/dist/source/components/naeil-header-core.js +231 -0
- package/dist/source/components/naeil-header-data.d.ts +11 -0
- package/dist/source/components/naeil-header-data.js +14 -0
- package/dist/source/components/naeil-header.d.ts +10 -51
- package/dist/source/components/naeil-header.js +9 -200
- package/dist/source/components/naeil-messages-context.d.ts +94 -0
- package/dist/source/components/naeil-messages-context.js +16 -0
- package/dist/source/components/naeil-standalone-messages.d.ts +11 -0
- package/dist/source/components/naeil-standalone-messages.js +13 -0
- package/dist/source/i18n/routing.d.ts +22 -20
- package/dist/source/lib/ui-release.d.ts +1 -1
- package/dist/source/lib/ui-release.js +1 -1
- package/dist/source/naeil-locale/messages/en.json +78 -0
- package/dist/source/naeil-locale/messages/ja.json +78 -0
- package/dist/source/naeil-locale/messages/ko.json +78 -0
- package/docs/components/naeil-locale.md +46 -0
- package/docs/package-release.md +11 -0
- package/package.json +34 -6
- /package/dist/{naeil-header-content-BvISJ4RV.d.ts → naeil-header-data-BvISJ4RV.d.ts} +0 -0
|
@@ -1,147 +1,140 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export { NaeilHeaderLocale, headerLocales, headerProjects } from './naeil-header-data.js';
|
|
2
|
+
|
|
3
3
|
declare const headerLocaleNames: {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
en: string;
|
|
5
|
+
ko: string;
|
|
6
|
+
ja: string;
|
|
7
7
|
};
|
|
8
|
-
declare const headerProjects: readonly [{
|
|
9
|
-
readonly key: "naeilUi";
|
|
10
|
-
readonly href: "/design";
|
|
11
|
-
readonly accent: "oklch(0.623 0.214 259)";
|
|
12
|
-
readonly icon: "whale";
|
|
13
|
-
readonly status: "active" | "coming";
|
|
14
|
-
}];
|
|
15
8
|
declare const headerContent: {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
9
|
+
en: {
|
|
10
|
+
nav: {
|
|
11
|
+
home: string;
|
|
12
|
+
projects: string;
|
|
13
|
+
blog: string;
|
|
14
|
+
navigation: string;
|
|
15
|
+
menu: string;
|
|
16
|
+
closeMenu: string;
|
|
24
17
|
};
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
theme: {
|
|
19
|
+
switchToLight: string;
|
|
20
|
+
switchToDark: string;
|
|
28
21
|
};
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
locale: {
|
|
23
|
+
switchLabel: string;
|
|
31
24
|
};
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
25
|
+
projects: {
|
|
26
|
+
cc: {
|
|
27
|
+
name: string;
|
|
28
|
+
description: string;
|
|
36
29
|
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
pkm: {
|
|
31
|
+
name: string;
|
|
32
|
+
description: string;
|
|
40
33
|
};
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
34
|
+
naeilUi: {
|
|
35
|
+
name: string;
|
|
36
|
+
description: string;
|
|
44
37
|
};
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
38
|
+
sa: {
|
|
39
|
+
name: string;
|
|
40
|
+
description: string;
|
|
48
41
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
42
|
+
babyAgent: {
|
|
43
|
+
name: string;
|
|
44
|
+
description: string;
|
|
52
45
|
};
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
46
|
+
status: {
|
|
47
|
+
active: string;
|
|
48
|
+
coming: string;
|
|
56
49
|
};
|
|
57
50
|
};
|
|
58
51
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
52
|
+
ko: {
|
|
53
|
+
nav: {
|
|
54
|
+
home: string;
|
|
55
|
+
projects: string;
|
|
56
|
+
blog: string;
|
|
57
|
+
navigation: string;
|
|
58
|
+
menu: string;
|
|
59
|
+
closeMenu: string;
|
|
67
60
|
};
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
61
|
+
theme: {
|
|
62
|
+
switchToLight: string;
|
|
63
|
+
switchToDark: string;
|
|
71
64
|
};
|
|
72
|
-
|
|
73
|
-
|
|
65
|
+
locale: {
|
|
66
|
+
switchLabel: string;
|
|
74
67
|
};
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
68
|
+
projects: {
|
|
69
|
+
cc: {
|
|
70
|
+
name: string;
|
|
71
|
+
description: string;
|
|
79
72
|
};
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
73
|
+
pkm: {
|
|
74
|
+
name: string;
|
|
75
|
+
description: string;
|
|
83
76
|
};
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
77
|
+
naeilUi: {
|
|
78
|
+
name: string;
|
|
79
|
+
description: string;
|
|
87
80
|
};
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
81
|
+
sa: {
|
|
82
|
+
name: string;
|
|
83
|
+
description: string;
|
|
91
84
|
};
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
85
|
+
babyAgent: {
|
|
86
|
+
name: string;
|
|
87
|
+
description: string;
|
|
95
88
|
};
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
89
|
+
status: {
|
|
90
|
+
active: string;
|
|
91
|
+
coming: string;
|
|
99
92
|
};
|
|
100
93
|
};
|
|
101
94
|
};
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
95
|
+
ja: {
|
|
96
|
+
nav: {
|
|
97
|
+
home: string;
|
|
98
|
+
projects: string;
|
|
99
|
+
blog: string;
|
|
100
|
+
navigation: string;
|
|
101
|
+
menu: string;
|
|
102
|
+
closeMenu: string;
|
|
110
103
|
};
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
104
|
+
theme: {
|
|
105
|
+
switchToLight: string;
|
|
106
|
+
switchToDark: string;
|
|
114
107
|
};
|
|
115
|
-
|
|
116
|
-
|
|
108
|
+
locale: {
|
|
109
|
+
switchLabel: string;
|
|
117
110
|
};
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
111
|
+
projects: {
|
|
112
|
+
cc: {
|
|
113
|
+
name: string;
|
|
114
|
+
description: string;
|
|
122
115
|
};
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
116
|
+
pkm: {
|
|
117
|
+
name: string;
|
|
118
|
+
description: string;
|
|
126
119
|
};
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
120
|
+
naeilUi: {
|
|
121
|
+
name: string;
|
|
122
|
+
description: string;
|
|
130
123
|
};
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
124
|
+
sa: {
|
|
125
|
+
name: string;
|
|
126
|
+
description: string;
|
|
134
127
|
};
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
128
|
+
babyAgent: {
|
|
129
|
+
name: string;
|
|
130
|
+
description: string;
|
|
138
131
|
};
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
132
|
+
status: {
|
|
133
|
+
active: string;
|
|
134
|
+
coming: string;
|
|
142
135
|
};
|
|
143
136
|
};
|
|
144
137
|
};
|
|
145
138
|
};
|
|
146
139
|
|
|
147
|
-
export {
|
|
140
|
+
export { headerContent, headerLocaleNames };
|
|
@@ -1,145 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
"accent": "oklch(0.623 0.214 259)",
|
|
8
|
-
"icon": "whale",
|
|
9
|
-
"status": "active"
|
|
10
|
-
}
|
|
11
|
-
];
|
|
12
|
-
const headerContent = {
|
|
13
|
-
"en": {
|
|
14
|
-
"nav": {
|
|
15
|
-
"home": "Home",
|
|
16
|
-
"projects": "Projects",
|
|
17
|
-
"blog": "Blog",
|
|
18
|
-
"navigation": "Main navigation",
|
|
19
|
-
"menu": "Menu",
|
|
20
|
-
"closeMenu": "Close menu"
|
|
21
|
-
},
|
|
22
|
-
"theme": {
|
|
23
|
-
"switchToLight": "Switch to light theme",
|
|
24
|
-
"switchToDark": "Switch to dark theme"
|
|
25
|
-
},
|
|
26
|
-
"locale": {
|
|
27
|
-
"switchLabel": "Language"
|
|
28
|
-
},
|
|
29
|
-
"projects": {
|
|
30
|
-
"cc": {
|
|
31
|
-
"name": "Content Collector",
|
|
32
|
-
"description": "Automated content collection from RSS, YouTube, Reddit + AI summarization"
|
|
33
|
-
},
|
|
34
|
-
"pkm": {
|
|
35
|
-
"name": "PKM",
|
|
36
|
-
"description": "Personal knowledge management \u2014 document parsing, embeddings, semantic search"
|
|
37
|
-
},
|
|
38
|
-
"naeilUi": {
|
|
39
|
-
"name": "naeil-ui",
|
|
40
|
-
"description": "Minimal design system \u2014 OKLCH tokens, Tailwind v4, shadcn"
|
|
41
|
-
},
|
|
42
|
-
"sa": {
|
|
43
|
-
"name": "Sustainability Analyzer",
|
|
44
|
-
"description": "AI-powered ESG report analysis \u2014 PDF parsing, qualitative assessment, comparison tables"
|
|
45
|
-
},
|
|
46
|
-
"babyAgent": {
|
|
47
|
-
"name": "Baby Agent",
|
|
48
|
-
"description": "Parenting AI agent \u2014 LINE-based Q&A, records, reminders"
|
|
49
|
-
},
|
|
50
|
-
"status": {
|
|
51
|
-
"active": "Active",
|
|
52
|
-
"coming": "Coming Soon"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
"ko": {
|
|
57
|
-
"nav": {
|
|
58
|
-
"home": "\uD648",
|
|
59
|
-
"projects": "\uD504\uB85C\uC81D\uD2B8",
|
|
60
|
-
"blog": "\uBE14\uB85C\uADF8",
|
|
61
|
-
"navigation": "\uC8FC\uC694 \uBA54\uB274",
|
|
62
|
-
"menu": "\uBA54\uB274",
|
|
63
|
-
"closeMenu": "\uBA54\uB274 \uB2EB\uAE30"
|
|
64
|
-
},
|
|
65
|
-
"theme": {
|
|
66
|
-
"switchToLight": "\uBC1D\uC740 \uD14C\uB9C8\uB85C \uC804\uD658",
|
|
67
|
-
"switchToDark": "\uC5B4\uB450\uC6B4 \uD14C\uB9C8\uB85C \uC804\uD658"
|
|
68
|
-
},
|
|
69
|
-
"locale": {
|
|
70
|
-
"switchLabel": "\uC5B8\uC5B4"
|
|
71
|
-
},
|
|
72
|
-
"projects": {
|
|
73
|
-
"cc": {
|
|
74
|
-
"name": "Content Collector",
|
|
75
|
-
"description": "RSS, YouTube, Reddit \uC790\uB3D9 \uC218\uC9D1 + AI \uC694\uC57D"
|
|
76
|
-
},
|
|
77
|
-
"pkm": {
|
|
78
|
-
"name": "PKM",
|
|
79
|
-
"description": "\uAC1C\uC778 \uC9C0\uC2DD \uAD00\uB9AC \u2014 \uBB38\uC11C \uD30C\uC2F1, \uC784\uBCA0\uB529, \uC2DC\uB9E8\uD2F1 \uAC80\uC0C9"
|
|
80
|
-
},
|
|
81
|
-
"naeilUi": {
|
|
82
|
-
"name": "naeil-ui",
|
|
83
|
-
"description": "\uBBF8\uB2C8\uBA40 \uB514\uC790\uC778 \uC2DC\uC2A4\uD15C \u2014 OKLCH \uD1A0\uD070, Tailwind v4, shadcn"
|
|
84
|
-
},
|
|
85
|
-
"sa": {
|
|
86
|
-
"name": "Sustainability Analyzer",
|
|
87
|
-
"description": "ESG \uB9AC\uD3EC\uD2B8 AI \uBD84\uC11D \u2014 PDF \uD30C\uC2F1, \uC815\uC131\uD3C9\uAC00, \uBE44\uAD50\uD45C \uC790\uB3D9 \uC0DD\uC131"
|
|
88
|
-
},
|
|
89
|
-
"babyAgent": {
|
|
90
|
-
"name": "Baby Agent",
|
|
91
|
-
"description": "\uC721\uC544 AI \uC5D0\uC774\uC804\uD2B8 \u2014 LINE \uAE30\uBC18 Q&A, \uAE30\uB85D, \uB9AC\uB9C8\uC778\uB354"
|
|
92
|
-
},
|
|
93
|
-
"status": {
|
|
94
|
-
"active": "\uD65C\uC131",
|
|
95
|
-
"coming": "\uC900\uBE44 \uC911"
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"ja": {
|
|
100
|
-
"nav": {
|
|
101
|
-
"home": "\u30DB\u30FC\u30E0",
|
|
102
|
-
"projects": "\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8",
|
|
103
|
-
"blog": "\u30D6\u30ED\u30B0",
|
|
104
|
-
"navigation": "\u30E1\u30A4\u30F3\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3",
|
|
105
|
-
"menu": "\u30E1\u30CB\u30E5\u30FC",
|
|
106
|
-
"closeMenu": "\u30E1\u30CB\u30E5\u30FC\u3092\u9589\u3058\u308B"
|
|
107
|
-
},
|
|
108
|
-
"theme": {
|
|
109
|
-
"switchToLight": "\u30E9\u30A4\u30C8\u30C6\u30FC\u30DE\u306B\u5207\u308A\u66FF\u3048\u308B",
|
|
110
|
-
"switchToDark": "\u30C0\u30FC\u30AF\u30C6\u30FC\u30DE\u306B\u5207\u308A\u66FF\u3048\u308B"
|
|
111
|
-
},
|
|
112
|
-
"locale": {
|
|
113
|
-
"switchLabel": "\u8A00\u8A9E"
|
|
114
|
-
},
|
|
115
|
-
"projects": {
|
|
116
|
-
"cc": {
|
|
117
|
-
"name": "Content Collector",
|
|
118
|
-
"description": "RSS\u3001YouTube\u3001Reddit\u306E\u81EA\u52D5\u53CE\u96C6 + AI\u8981\u7D04"
|
|
119
|
-
},
|
|
120
|
-
"pkm": {
|
|
121
|
-
"name": "PKM",
|
|
122
|
-
"description": "\u500B\u4EBA\u30CA\u30EC\u30C3\u30B8\u7BA1\u7406 \u2014 \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u89E3\u6790\u3001\u57CB\u3081\u8FBC\u307F\u3001\u30BB\u30DE\u30F3\u30C6\u30A3\u30C3\u30AF\u691C\u7D22"
|
|
123
|
-
},
|
|
124
|
-
"naeilUi": {
|
|
125
|
-
"name": "naeil-ui",
|
|
126
|
-
"description": "\u30DF\u30CB\u30DE\u30EB\u30C7\u30B6\u30A4\u30F3\u30B7\u30B9\u30C6\u30E0 \u2014 OKLCH\u30C8\u30FC\u30AF\u30F3\u3001Tailwind v4\u3001shadcn"
|
|
127
|
-
},
|
|
128
|
-
"sa": {
|
|
129
|
-
"name": "Sustainability Analyzer",
|
|
130
|
-
"description": "ESG\u30EC\u30DD\u30FC\u30C8AI\u5206\u6790 \u2014 PDF\u89E3\u6790\u3001\u5B9A\u6027\u8A55\u4FA1\u3001\u6BD4\u8F03\u8868\u306E\u81EA\u52D5\u751F\u6210"
|
|
131
|
-
},
|
|
132
|
-
"babyAgent": {
|
|
133
|
-
"name": "Baby Agent",
|
|
134
|
-
"description": "\u80B2\u5150AI\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u2014 LINE Q&A\u3001\u8A18\u9332\u3001\u30EA\u30DE\u30A4\u30F3\u30C0\u30FC"
|
|
135
|
-
},
|
|
136
|
-
"status": {
|
|
137
|
-
"active": "\u30A2\u30AF\u30C6\u30A3\u30D6",
|
|
138
|
-
"coming": "\u6E96\u5099\u4E2D"
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
};
|
|
1
|
+
import en from "../naeil-locale/messages/en.json";
|
|
2
|
+
import ko from "../naeil-locale/messages/ko.json";
|
|
3
|
+
import ja from "../naeil-locale/messages/ja.json";
|
|
4
|
+
import { headerLocales, headerProjects } from "./naeil-header-data.js";
|
|
5
|
+
const headerLocaleNames = en.naeil.locale.names;
|
|
6
|
+
const headerContent = { en: en.naeil.header, ko: ko.naeil.header, ja: ja.naeil.header };
|
|
143
7
|
export {
|
|
144
8
|
headerContent,
|
|
145
9
|
headerLocaleNames,
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { NavigationProps, NavigationItem, NavigationLinkProps, NavigationLink, NavigationLinkComponent } from './ui/navigation.js';
|
|
4
|
+
import { NaeilHeaderLocale } from './naeil-header-data.js';
|
|
5
|
+
export { NaeilHeaderAccount, NaeilHeaderAccountControl, NaeilHeaderAccountControlProps } from './naeil-header-account-core.js';
|
|
6
|
+
|
|
7
|
+
interface NaeilHeaderProps extends Omit<NavigationProps, "brand" | "items" | "toolbar" | "mobileToolbar" | "labels"> {
|
|
8
|
+
locale: NaeilHeaderLocale;
|
|
9
|
+
/** Resolve canonical unlocalized paths. Defaults to the official localized site. */
|
|
10
|
+
resolveHref?: (path: string) => string;
|
|
11
|
+
brandHref?: string;
|
|
12
|
+
brandSlot?: ReactNode;
|
|
13
|
+
/** Ignored when brandSlot replaces the complete brand content. */
|
|
14
|
+
brandSuffix?: string;
|
|
15
|
+
/** After the brand link, outside it; rendered once at every width. */
|
|
16
|
+
statusSlot?: ReactNode;
|
|
17
|
+
/** Product menu data, after catalog/blog and before flat subNav links. */
|
|
18
|
+
appNavigation?: NavigationItem[];
|
|
19
|
+
brandLinkProps?: Omit<NavigationLinkProps, "href" | "children">;
|
|
20
|
+
/** Omit when the application does not support changing its UI language. */
|
|
21
|
+
onLocaleChange?: (locale: NaeilHeaderLocale) => void;
|
|
22
|
+
/** Use NaeilHeaderAccountControl for canonical UI; the app owns auth state/I/O. */
|
|
23
|
+
authSlot?: ReactNode;
|
|
24
|
+
labels?: NavigationProps["labels"];
|
|
25
|
+
projects?: NavigationLink[];
|
|
26
|
+
/** Legacy remote-catalog mode: generated noncurrent project/blog links use native anchors. */
|
|
27
|
+
projectsExternal?: boolean;
|
|
28
|
+
/** Legacy next-intl copy overrides; catalog/artwork/layout remain shared. */
|
|
29
|
+
translations?: {
|
|
30
|
+
projects: string;
|
|
31
|
+
blog: string;
|
|
32
|
+
project: (key: string) => string;
|
|
33
|
+
};
|
|
34
|
+
showProjects?: boolean;
|
|
35
|
+
showBlog?: boolean;
|
|
36
|
+
subNav?: Array<{
|
|
37
|
+
label: string;
|
|
38
|
+
href: string;
|
|
39
|
+
}>;
|
|
40
|
+
currentProjectKey?: string;
|
|
41
|
+
currentProjectHref?: string;
|
|
42
|
+
/** Compatibility escape hatch replacing the default theme/locale/auth toolbar. */
|
|
43
|
+
toolbarSlot?: ReactNode;
|
|
44
|
+
/** Compatibility escape hatch for the legacy native external brand link. */
|
|
45
|
+
brandLinkComponent?: NavigationLinkComponent;
|
|
46
|
+
}
|
|
47
|
+
/** The actual header theme control; reads only the consumer's theme provider. */
|
|
48
|
+
declare function NaeilHeaderThemeControl({ locale }: {
|
|
49
|
+
locale: NaeilHeaderLocale;
|
|
50
|
+
}): react_jsx_runtime.JSX.Element;
|
|
51
|
+
/** Shared rendering used by the whole header and legacy site control adapters. */
|
|
52
|
+
declare function NaeilHeaderLocaleControl({ locale, onLocaleChange }: {
|
|
53
|
+
locale: NaeilHeaderLocale;
|
|
54
|
+
onLocaleChange: (locale: NaeilHeaderLocale) => void;
|
|
55
|
+
}): react_jsx_runtime.JSX.Element;
|
|
56
|
+
/** One complete, opt-in branded composition shared by naeil.dev and applications. */
|
|
57
|
+
declare function NaeilHeader({ locale, resolveHref, brandHref, brandSlot, brandSuffix, statusSlot, appNavigation, brandLinkProps, brandLinkComponent, onLocaleChange, authSlot, toolbarSlot, projects, projectsExternal, translations, showProjects, showBlog, subNav, currentProjectKey, currentProjectHref, labels, Link, currentHref, onNavigate, className, containerClassName, ...props }: NaeilHeaderProps): react_jsx_runtime.JSX.Element;
|
|
58
|
+
|
|
59
|
+
export { NaeilHeader, NaeilHeaderLocale, NaeilHeaderLocaleControl, type NaeilHeaderProps, NaeilHeaderThemeControl };
|