zenn-cli 0.1.108 → 0.1.109-alpha.2

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.
@@ -0,0 +1 @@
1
+ const c={};function d({src:s,id:t}){return new Promise((n,i)=>{if(document.getElementById(t)){const e=setInterval(()=>{c[t]&&(clearInterval(e),n())},100)}else{const e=document.createElement("script");e.setAttribute("src",s),e.setAttribute("id",t),document.head.appendChild(e),e.onload=()=>{c[t]=!0,n()},e.onerror=a=>i(a)}})}function l({href:s,id:t}){return new Promise((n,i)=>{if(document.getElementById(t))return n();const r=document.createElement("link");r.setAttribute("href",s),r.setAttribute("rel","stylesheet"),r.setAttribute("id",t),document.head.appendChild(r),r.onload=()=>{n()},r.onerror=e=>i(e)})}const o="0.13.13",m="katex-container";class u extends HTMLElement{constructor(){super();const t=document.createElement("div");t.setAttribute("id",m),this._container=t}async connectedCallback(){this.render()}async render(){typeof katex=="undefined"&&await d({src:`https://cdn.jsdelivr.net/npm/katex@${o}/dist/katex.min.js`,id:"katex-js"}),l({href:`https://cdn.jsdelivr.net/npm/katex@${o}/dist/katex.min.css`,id:"katex-css"});const t=!!this.getAttribute("display-mode"),n=this.textContent||this.innerText;katex==null||katex.render(n,this._container,{macros:{"\\RR":"\\mathbb{R}"},throwOnError:!1,displayMode:t}),this.innerHTML=this._container.innerHTML}}customElements.define("embed-katex",u);
@@ -0,0 +1,614 @@
1
+ var se=Object.defineProperty;var T=Object.getOwnPropertySymbols;var ce=Object.prototype.hasOwnProperty,me=Object.prototype.propertyIsEnumerable;var P=(e,u,r)=>u in e?se(e,u,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[u]=r,k=(e,u)=>{for(var r in u||(u={}))ce.call(u,r)&&P(e,r,u[r]);if(T)for(var r of T(u))me.call(u,r)&&P(e,r,u[r]);return e};import{s,R as t,r as c,u as de,a as l,d as S,b as ge,c as Ee,U as z,t as pe,e as he,f as Fe,g as fe,h as _e,i as ve,j as ye}from"./vendor.e9e950b7.js";const be=function(){const u=document.createElement("link").relList;if(u&&u.supports&&u.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))a(n);new MutationObserver(n=>{for(const i of n)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&a(o)}).observe(document,{childList:!0,subtree:!0});function r(n){const i={};return n.integrity&&(i.integrity=n.integrity),n.referrerpolicy&&(i.referrerPolicy=n.referrerpolicy),n.crossorigin==="use-credentials"?i.credentials="include":n.crossorigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function a(n){if(n.ep)return;n.ep=!0;const i=r(n);fetch(n.href,i)}};be();const Be="modulepreload",H={},Ce="/",Ae=function(u,r){return!r||r.length===0?u():Promise.all(r.map(a=>{if(a=`${Ce}${a}`,a in H)return;H[a]=!0;const n=a.endsWith(".css"),i=n?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${i}`))return;const o=document.createElement("link");if(o.rel=n?"stylesheet":Be,n||(o.as="script",o.crossOrigin=""),o.href=a,document.head.appendChild(o),n)return new Promise((d,m)=>{o.addEventListener("load",d),o.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${a}`)))})})).then(()=>u())},f=e=>t.createElement(xe,{className:"error-message"},t.createElement("div",{className:"error-message__inner"},t.createElement("img",{src:"https://twemoji.maxcdn.com/2/svg/1f63f.svg",alt:"",width:90,height:90,className:"error-message__icon"}),t.createElement("div",{className:"error-message__text"},e.message||"\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F"))),xe=s.div`
2
+ height: 100vh;
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ .error-message__inner {
7
+ transform: translateY(-25%);
8
+ padding: 1rem;
9
+ }
10
+ .error-message__icon {
11
+ display: block;
12
+ margin: 0 auto;
13
+ }
14
+ .error-message__text {
15
+ margin-top: 1.7rem;
16
+ text-align: center;
17
+ font-weight: 700;
18
+ font-size: 1.4rem;
19
+ }
20
+ `;class we extends t.Component{constructor(){super(...arguments);this.state={error:null}}componentDidCatch(u){const r=c.isLocationNotFoundError(u)?"NotFound":"Unknown";this.setState({error:r})}render(){if(this.state.error===null)return this.props.children;const u="\u539F\u56E0\u4E0D\u660E\u306E\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F",r=this.state.error==="NotFound"?"\u30DA\u30FC\u30B8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F":u;return t.createElement(f,{message:r})}}async function ke(e){const u=await fetch(e);if(!u.ok){const r=new Error("An error occurred while fetching the data."),a=await u.json();throw r.message=a.message,r}return u.json()}function p(e,u){return de(e,ke,u)}const W=l.exports.createContext({reloadedAt:0}),Ne=e=>{const[u,r]=l.exports.useState(0);return l.exports.useEffect(()=>{const a=window.location.protocol==="https:"?"wss:":"ws:",n=new WebSocket(`${a}//${window.location.host}`);return n.onmessage=()=>{r(new Date().getTime())},()=>{console.log("Disconnecting socket..."),n.close()}},[]),t.createElement(W.Provider,{value:{reloadedAt:u}},e.children)};function v(e){const{reloadedAt:u}=l.exports.useContext(W);l.exports.useEffect(()=>{u!==0&&e()},[u])}function D({cacheKey:e,defaultValue:u}){const r=l.exports.useMemo(()=>{const m=Se(e);return m===null?u:typeof m!=typeof u?(console.log(`Persisted value type(${typeof m}) is invalid. It must be ${typeof u}`),i(),u):m},[]),[a,n]=l.exports.useState(r);function i(){localStorage.removeItem(e)}function o(m){n(m),$e(e,m)}return[a,o]}function De(e){localStorage.removeItem(e)}function $e(e,u){const r={value:u},a=JSON.stringify(r);localStorage.setItem(e,a)}function Se(e){const u=localStorage.getItem(e);if(!u)return null;const r=JSON.parse(u);return typeof r!="object"||r===null?(De(e),null):r.value}const h=e=>t.createElement(ze,{className:"list-item-inner"},typeof e.emoji=="string"&&t.createElement("span",{className:"list-item-inner__emoji"},e.emoji),typeof e.iconImgSrc=="string"&&t.createElement("img",{src:e.iconImgSrc,width:18,height:18,alt:"",className:"list-item-inner__icon"}),!!e.label&&t.createElement("span",{className:"list-item-inner__label"},e.label),t.createElement("div",{className:"list-item-inner__title",title:e.title},e.title,e.showNewTabIcon===!0&&t.createElement(S,{className:"list-item-inner__icon-open"}))),ze=s.div`
21
+ display: flex;
22
+ align-items: center;
23
+
24
+ .list-item-inner__emoji {
25
+ margin-right: 7px;
26
+ }
27
+ .list-item-inner__icon {
28
+ margin-right: 5px;
29
+ }
30
+ .list-item-inner__label {
31
+ display: inline-block;
32
+ padding: 1px 3px;
33
+ margin-right: 4px;
34
+ border: solid 1px var(--c-gray-border);
35
+ color: var(--c-gray);
36
+ font-size: 11px;
37
+ border-radius: 4px;
38
+ background: #fff;
39
+ line-height: 1.3;
40
+ }
41
+ .list-item-inner__title {
42
+ flex: 1;
43
+ overflow: hidden;
44
+ text-overflow: ellipsis;
45
+ white-space: nowrap;
46
+ }
47
+ .list-item-inner__icon-open {
48
+ margin: 0 2px;
49
+ width: 15px;
50
+ height: 15px;
51
+ vertical-align: -2px;
52
+ opacity: 0.7;
53
+ }
54
+ `,L=e=>{const u=`toggle-${e.uniqueKey}`,r=`toggle-${e.uniqueKey}-open`,[a,n]=D({cacheKey:r,defaultValue:e.defaultOpen});return t.createElement(Le,{className:"directory"},t.createElement("button",{className:"directory__button",type:"button",role:"tab","aria-controls":u,"aria-expanded":a,"aria-label":"\u30D5\u30A9\u30EB\u30C0\u30FC\u3092\u958B\u304F",onClick:()=>n(!a)},t.createElement(ge,{className:`directory__icon-arrow ${a?"rotated":""}`}),t.createElement(h,{title:e.title,label:e.label,iconImgSrc:`/static-images/${a?"folder-open.svg":"folder-close.svg"}`})),t.createElement("div",{className:"directory__children",role:"tabpanel","aria-hidden":!a,id:u},a?e.children:null))},Le=s.div`
55
+ .directory__button {
56
+ position: relative;
57
+ padding: 5px 0 5px 15px;
58
+ display: block;
59
+ width: 100%;
60
+ color: var(--c-gray);
61
+ text-align: left;
62
+ &:hover {
63
+ color: var(--c-body);
64
+ }
65
+ }
66
+ .directory__icon-arrow {
67
+ position: absolute;
68
+ width: 12px;
69
+ height: 12px;
70
+ top: 8px;
71
+ left: -2px;
72
+ color: var(--c-gray);
73
+ &.rotated {
74
+ transform: rotate(90deg);
75
+ }
76
+ }
77
+
78
+ .directory__children {
79
+ padding-left: 15px;
80
+ }
81
+ `,Me=e=>{const[u,r]=l.exports.useState(!1);function a(n){e.setValue(n),setTimeout(()=>{r(!1)},200)}return t.createElement(Re,{className:"settings"},t.createElement("button",{className:"settings__open",onClick:()=>r(!0)},e.openButtonIcon),u&&t.createElement(t.Fragment,null,t.createElement("div",{className:"settings__backdrop",onClick:()=>r(!1)}),t.createElement("div",{className:`settings__popover settings__popover--${e.position}`,style:{width:e.width}},e.options.map(({value:n,label:i})=>t.createElement("button",{key:`option-${n}`,value:n,onClick:()=>a(n),className:"settings__option","aria-selected":n===e.value},t.createElement(Ee,{className:"settings__option-icon"}),i)))))},Re=s.div`
82
+ display: flex;
83
+ align-items: center;
84
+ position: relative;
85
+
86
+ .settings__open {
87
+ display: inline-flex;
88
+ align-items: center;
89
+ color: var(--c-gray);
90
+ &:hover {
91
+ color: var(--c-body);
92
+ }
93
+ }
94
+ .settings__backdrop {
95
+ position: fixed;
96
+ background: transparent;
97
+ top: 0;
98
+ left: 0;
99
+ bottom: 0;
100
+ right: 0;
101
+ }
102
+ .settings__backdrop,
103
+ .settings__popover {
104
+ z-index: 9999;
105
+ }
106
+ .settings__popover {
107
+ position: absolute;
108
+ background: #fff;
109
+ top: calc(100% + 8px);
110
+ box-shadow: 0 2px 8px rgb(15 26 62 / 35%);
111
+ border-radius: 5px;
112
+ font-size: 13.5px;
113
+ overflow: hidden;
114
+ padding: 5px;
115
+ }
116
+ .settings__popover--left {
117
+ left: -10px;
118
+ }
119
+ .settings__popover--right {
120
+ right: -10px;
121
+ }
122
+ .settings__popover--center {
123
+ left: 50%;
124
+ transform: translateX(-50%);
125
+ }
126
+ .settings__option {
127
+ width: 100%;
128
+ text-align: left;
129
+ padding: 8px 8px 8px 22px;
130
+ border-radius: 4px;
131
+ &:hover {
132
+ background: var(--c-gray-bg);
133
+ }
134
+ &[aria-selected='true'] {
135
+ .settings__option-icon {
136
+ opacity: 1;
137
+ }
138
+ }
139
+ }
140
+ .settings__option-icon {
141
+ position: absolute;
142
+ left: 8px;
143
+ width: 16px;
144
+ height: 16px;
145
+ opacity: 0;
146
+ color: var(--c-primary);
147
+ }
148
+ `,Ie=({bodyHtml:e,children:u})=>{const r=l.exports.useRef(null);return l.exports.useEffect(()=>{if(!r.current||!(e!=null&&e.length))return;const a=Array.from(r.current.getElementsByTagName("details")),n=d=>()=>{a.forEach(m=>{m.open=d})},i=n(!0),o=n(!1);return window.addEventListener("beforeprint",i),window.addEventListener("afterprint",o),()=>{window.removeEventListener("beforeprint",i),window.removeEventListener("afterprint",o)}},[e]),t.createElement("div",{ref:r,className:"___print-details-opener"},u)},A=e=>{var u;return"rawHtml"in e?(u=e.rawHtml)!=null&&u.length?t.createElement(Ie,{bodyHtml:e.rawHtml},t.createElement("div",{className:"znc",dangerouslySetInnerHTML:{__html:e.rawHtml}})):t.createElement(Ve,null,"\u672C\u6587\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"):t.createElement("div",{className:"znc"},e.children)},Ve=s.div`
149
+ text-align: center;
150
+ font-size: 1.1rem;
151
+ color: var(--c-gray);
152
+ `,F=s.div`
153
+ max-width: 760px;
154
+ margin: 0 auto;
155
+ padding: 0 1.8rem;
156
+ @media (max-width: 468px) {
157
+ padding: 0 1rem;
158
+ }
159
+ `;function b(e){l.exports.useEffect(()=>{!e||(document.title=e)},[e])}const Oe=()=>{const{data:e}=p("/api/cli-version",{revalidateOnFocus:!1,revalidateOnReconnect:!1});return!e||e.updateAvailable===!1?null:t.createElement(Te,{className:"update-notification-bar"},t.createElement(F,null,t.createElement("div",{className:"update-notification-bar__inner"},t.createElement("div",{className:"update-notification-bar__icon"},"!"),t.createElement("div",{className:"update-notification-bar__text"},"\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u30EA\u30EA\u30FC\u30B9\u3055\u308C\u3066\u3044\u307E\u3059\u3002",t.createElement("code",null,"npm install zenn-cli@latest"),"\u3067\u66F4\u65B0\u3057\u3066\u304F\u3060\u3055\u3044"))))},je=z`
160
+ from {
161
+ opacity: 0;
162
+ transform: translateY(-40px);
163
+ }
164
+ to {
165
+ opacity: 1;
166
+ transform: translateY(0);
167
+ }
168
+ `,Te=s.div`
169
+ .update-notification-bar__inner {
170
+ display: flex;
171
+ justify-content: center;
172
+ align-items: center;
173
+ flex-wrap: wrap;
174
+ margin-top: 1.3rem;
175
+ padding: 0.9rem;
176
+ background: var(--c-primary-bg);
177
+ color: #364757;
178
+ border-radius: 10px;
179
+ animation: ${je} 0.3s ease;
180
+ }
181
+
182
+ .update-notification-bar__icon {
183
+ margin-right: 8px;
184
+ content: '!';
185
+ font-weight: 700;
186
+ width: 20px;
187
+ line-height: 20px;
188
+ height: 20px;
189
+ text-align: center;
190
+ border-radius: 50%;
191
+ background: var(--c-primary);
192
+ color: #fff;
193
+ font-size: 12px;
194
+ }
195
+ .update-notification-bar__text {
196
+ flex: 1;
197
+ font-size: 14px;
198
+ code {
199
+ display: inline-flex;
200
+ margin: 0 0.2em;
201
+ padding: 0.1em 0.6em;
202
+ font-size: 0.9em;
203
+ background: #cfe6f9;
204
+ border-radius: 5px;
205
+ }
206
+ }
207
+ `,Pe=()=>{const{data:e}=p("/api/local-info"),u=e==null?void 0:e.hasInit;return b("Zenn Editor"),t.createElement(t.Fragment,null,t.createElement(Oe,null),t.createElement(F,null,t.createElement(He,{className:"home"},t.createElement("h1",{className:"home__title"},t.createElement("img",{src:"/logo.svg",alt:"Zenn Editor",width:300,height:35})),t.createElement("div",{className:"home__content"},t.createElement(A,null,u===!0||u===void 0?t.createElement(t.Fragment,null,t.createElement("h3",null,"\u{1F4DD} \u8A18\u4E8B\u306E\u4F5C\u6210"),t.createElement("pre",null,t.createElement("code",null,"$ npx zenn"," ",t.createElement("span",{className:"token function"},"new:article"),t.createElement("div",{className:"token comment"},"# \u8A18\u4E8B\u306EURL\u306E\u4E00\u90E8\u3068\u306A\u308Bslug\u3092\u6307\u5B9A\u3057\u3066\u4F5C\u6210\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002",t.createElement("br",null),"$ npx zenn new:article --slug my-awesome-article"))),t.createElement("h3",null,"\u{1F4D8} \u672C\u306E\u4F5C\u6210"),t.createElement("pre",null,t.createElement("code",null,"$ npx zenn"," ",t.createElement("span",{className:"token function"},"new:book"),t.createElement("div",{className:"token comment"},"# \u672C\u306EURL\u306E\u4E00\u90E8\u3068\u306A\u308Bslug\u3092\u6307\u5B9A\u3057\u3066\u4F5C\u6210\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002",t.createElement("br",null),"$ npx zenn new:book --slug my-awesome-book")))):t.createElement(t.Fragment,null,t.createElement("h3",null,"\u{1F527} \u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u304C\u5FC5\u8981\u3067\u3059"),t.createElement("p",null,"\u307E\u3060",t.createElement("code",null,"articles"),"\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304C\u4F5C\u6210\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u4EE5\u4E0B\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u5B9F\u884C\u3057\u3066\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3092\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002"),t.createElement("pre",null,t.createElement("code",null,"$ npx zenn ",t.createElement("span",{className:"token function"},"init"))))),t.createElement("div",{className:"home__learn-more"},t.createElement("div",{className:"home__learn-more-title"},"\u8A73\u3057\u3044\u4F7F\u3044\u65B9\u306FCLI\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u3092\u3054\u89A7\u304F\u3060\u3055\u3044"),t.createElement(C,{slug:"zenn-cli-guide",className:"home__link-cli-guide"},"CLI\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9\u3092\u958B\u304F"))))))},He=s.article`
208
+ .home__title {
209
+ padding: 2.5rem 0;
210
+ text-align: center;
211
+ border-bottom: solid 1px var(--c-gray-border);
212
+ }
213
+ .home__content {
214
+ padding: 2.5rem 0;
215
+ }
216
+ .home__learn-more {
217
+ margin-top: 3rem;
218
+ padding: 1.8rem 2rem 2.5rem;
219
+ background: var(--c-gray-bg);
220
+ border-radius: 10px;
221
+ text-align: center;
222
+ }
223
+ .home__learn-more-title {
224
+ color: var(--c-gray);
225
+ }
226
+ .home__link-cli-guide {
227
+ margin-top: 1rem;
228
+ display: inline-flex;
229
+ padding: 0.6em 1.5em;
230
+ background: var(--c-primary);
231
+ color: #fff;
232
+ border-radius: 0.45em;
233
+ border: solid 1px rgba(92, 147, 187, 0.15);
234
+ font-size: 0.95rem;
235
+ font-weight: 600;
236
+ }
237
+ `,_=e=>t.createElement(Ke,{style:{margin:e.margin}}),Ue=z`
238
+ to {
239
+ transform: rotate(360deg);
240
+ }
241
+ `,qe=z`
242
+ from {
243
+ opacity: 0;
244
+ }
245
+ to {
246
+ opacity: 1;
247
+ }
248
+ `,Ke=s.div`
249
+ display: table;
250
+ width: 30px;
251
+ height: 30px;
252
+ margin: 0 auto;
253
+ border: 4px solid var(--c-primary);
254
+ border-radius: 50%;
255
+ border-top-color: var(--c-primary-bg);
256
+ animation: ${Ue} 0.8s linear infinite, ${qe} 0.7s;
257
+ `,We=({hash:e,slug:u})=>{const{data:r,error:a}=p(`/api/cli-guide/${u}`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:2}),n=r==null?void 0:r.bodyHtml,i=r==null?void 0:r.title;return b(i),l.exports.useEffect(()=>{if(!e||!n)return;const o=document.getElementById(e);if(!o){console.error(`Couldn't find elements with id="${e}"`);return}o.scrollIntoView(),window.scrollBy(0,-30)},[n,e]),a?t.createElement("div",null,a.message):n?t.createElement(t.Fragment,null,t.createElement(F,null,t.createElement(Je,{className:"guide"},t.createElement("h1",{className:"guide__title"},i),t.createElement("div",{className:"guide__content"},t.createElement(A,{rawHtml:n}))))):t.createElement(_,{margin:"5rem auto"})},Je=s.div`
258
+ padding: 3rem 0;
259
+ font-size: 0.94rem;
260
+ .guide__title {
261
+ font-size: 2rem;
262
+ }
263
+ .guide__content {
264
+ padding: 1.5rem 0;
265
+ }
266
+ `;function Ye(e){return e?/^[0-9a-z\-_]{12,50}$/.test(e):!1}function Ge(e){return`slug\u306E\u5024\uFF08${e}\uFF09\u304C\u4E0D\u6B63\u3067\u3059\u3002\u5C0F\u6587\u5B57\u306E\u534A\u89D2\u82F1\u6570\u5B57\uFF08a-z0-9\uFF09\u3001\u30CF\u30A4\u30D5\u30F3\uFF08-\uFF09\u3001\u30A2\u30F3\u30C0\u30FC\u30B9\u30B3\u30A2\uFF08_\uFF09\u306E12\u301C50\u5B57\u306E\u7D44\u307F\u5408\u308F\u305B\u306B\u3057\u3066\u304F\u3060\u3055\u3044`}function Ze(e){return e?/^[0-9a-z\-_]{1,50}$/.test(e)||/^[0-9]+.[0-9a-z\-_]{1,50}$/.test(e):!1}function Xe(e){return`\u30C1\u30E3\u30D7\u30BF\u30FC\u306Eslug\u306E\u5024\uFF08${e}\uFF09\u304C\u4E0D\u6B63\u3067\u3059\u3002\u5C0F\u6587\u5B57\u306E\u534A\u89D2\u82F1\u6570\u5B57\uFF08a-z0-9\uFF09\u3001\u30CF\u30A4\u30D5\u30F3\uFF08-\uFF09\u3001\u30A2\u30F3\u30C0\u30FC\u30B9\u30B3\u30A2\uFF08_\uFF09\u306E1\u301C50\u5B57\u306E\u7D44\u307F\u5408\u308F\u305B\u306B\u3057\u3066\u304F\u3060\u3055\u3044`}function x(e){return typeof e=="string"&&e.length>0}const J={isCritical:!0,getMessage:({slug:e})=>Ge(e),isValid:({slug:e})=>Ye(e)},M={isCritical:!0,getMessage:()=>"title\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u3092\u6587\u5B57\u5217\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({title:e})=>x(e)},R={isCritical:!0,getMessage:()=>"\u30BF\u30A4\u30C8\u30EB\u306F70\u5B57\u4EE5\u5185\u306B\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({title:e})=>x(e)?e.length<=70:!0},Y={isCritical:!0,getMessage:()=>'published\uFF08\u516C\u958B\u8A2D\u5B9A\uFF09\u3092 true \u304B false \u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u30AF\u30AA\u30C6\u30FC\u30B7\u30E7\u30F3 " \u3067\u56F2\u307E\u306A\u3044\u3067\u304F\u3060\u3055\u3044\uFF09',isValid:({published:e})=>typeof e=="boolean"},Qe={isCritical:!0,detailUrl:"https://zenn.dev/tech-or-idea",detailUrlText:"\u8A73\u7D30\u3092\u958B\u304F",getMessage:()=>"type\uFF08\u8A18\u4E8B\u306E\u30BF\u30A4\u30D7\uFF09\u306B tech \u3082\u3057\u304F\u306F idea \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u6280\u8853\u8A18\u4E8B\u306E\u5834\u5408\u306F tech \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({type:e})=>e?e==="tech"||e==="idea":!1},et={detailUrl:"https://getemoji.com",detailUrlText:"\u7D75\u6587\u5B57\u3092\u63A2\u3059",getMessage:()=>"\u30A2\u30A4\u30AD\u30E3\u30C3\u30C1\u3068\u306A\u308B emoji\uFF08\u7D75\u6587\u5B57\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({emoji:e})=>x(e)},tt={isCritical:!0,getMessage:()=>"\u7D75\u6587\u5B57\uFF08emoji\uFF09\u30921\u3064\u3060\u3051\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({emoji:e})=>{if(!x(e))return!0;const u=pe(),r=e.match(u);return!(!r||!r[0]||r[1])}},G={isCritical:!0,getMessage:()=>'topics\uFF08\u8A18\u4E8B\u306B\u95A2\u9023\u3059\u308B\u8A00\u8A9E\u3084\u6280\u8853\uFF09\u3092\u914D\u5217\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B\uFF09["react", "javascript"]',isValid:({topics:e})=>Array.isArray(e)?e.length>0:!1},Z={isCritical:!0,getMessage:()=>"topics\u306F\u6700\u59275\u3064\u307E\u3067\u6307\u5B9A\u3067\u304D\u307E\u3059",isValid:({topics:e})=>Array.isArray(e)?e.length<=5:!0},X={isCritical:!0,getMessage:()=>"topics\u306F\u5168\u3066\u6587\u5B57\u5217\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({topics:e})=>Array.isArray(e)?e.every(u=>typeof u=="string"&&u.length>0):!0},Q={getMessage:()=>"topics\u306B\u8A18\u53F7\u3084\u30B9\u30DA\u30FC\u30B9\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u4F8B\u3048\u3070C++\u306F\u300Ccpp\u300D\u3001C#\u306F\u300Ccsharp\u300D\u3068\u8A18\u8F09\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({topics:e})=>Array.isArray(e)?!e.some(r=>typeof r=="string"&&r.match(/[ -/:-@[-`{-~]/g)):!0},ee={getMessage:()=>"tags\u3067\u306F\u306A\u304Ftopics\u3092\u4F7F\u3063\u3066\u304F\u3060\u3055\u3044",isValid:e=>{var u,r;return!((u=e.tags)!=null&&u.length)&&!((r=e.tag)!=null&&r.length)}},ut={isCritical:!0,getMessage:()=>"summary\uFF08\u672C\u306E\u8AAC\u660E\uFF09\u306E\u8A18\u8F09\u306F\u5FC5\u9808\u3067\u3059",isValid:({summary:e})=>typeof e=="string"&&e.length>0},rt={isCritical:!0,getMessage:()=>'price\uFF08\u672C\u306E\u4FA1\u683C\uFF09\u3092\u534A\u89D2\u6570\u5B57\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u30AF\u30AA\u30C6\u30FC\u30B7\u30E7\u30F3 " \u3067\u56F2\u307E\u306A\u3044\u3067\u304F\u3060\u3055\u3044\uFF09',isValid:({price:e})=>typeof e=="number"},at={isCritical:!0,getMessage:()=>"price\uFF08\u672C\u306E\u4FA1\u683C\uFF09\u3092\u6709\u6599\u306B\u3059\u308B\u5834\u5408\u3001200\u301C5000\u306E\u9593\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({price:e})=>typeof e!="number"||e===0?!0:e>=200&&e<=5e3},nt={isCritical:!0,getMessage:()=>"price\uFF08\u672C\u306E\u4FA1\u683C\uFF09\u306F100\u5186\u5358\u4F4D\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({price:e})=>typeof e!="number"?!0:e%100===0},it={getMessage:({slug:e})=>`\u672C\u306E\u30AB\u30D0\u30FC\u753B\u50CF\uFF08cover.png\u3082\u3057\u304F\u306Fcover.jpg\uFF09\u3092\u300C/books/${e}\u300D\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u914D\u7F6E\u3057\u3066\u304F\u3060\u3055\u3044`,isValid:({coverDataUrl:e})=>typeof e=="string"},ot={isCritical:!0,getMessage:e=>`\u30AB\u30D0\u30FC\u753B\u50CF\u306E\u30B5\u30A4\u30BA\u306F1MB\u4EE5\u5185\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u73FE\u5728\u306E\u30B5\u30A4\u30BA: ${e.coverFilesize?`${Math.trunc(e.coverFilesize/1024)}KB`:"\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F"}`,isValid:({coverDataUrl:e,coverFilesize:u})=>typeof e!="string"?!0:typeof u=="number"&&u<=1024*1024};function U(e,u){return!u||!e?null:Math.round(u/e*10)/10}const lt={getMessage:e=>{const u=U(e.coverWidth,e.coverHeight);return`\u30AB\u30D0\u30FC\u753B\u50CF\u306E\u300C\u5E45 : \u9AD8\u3055\u300D\u306E\u6BD4\u7387\u306F\u300C1 : 1.4\u300D\u306B\u3059\u308B\u3053\u3068\u3092\u304A\u3059\u3059\u3081\u3057\u307E\u3059\uFF08\u6700\u7D42\u7684\u306B\u5E45500px\u30FB\u9AD8\u3055700px\u306B\u30EA\u30B5\u30A4\u30BA\u3055\u308C\u307E\u3059\uFF09\u3002${u?`\u73FE\u5728\u306E\u6BD4\u7387\u306F\u300C1 : ${u}\u300D\u3067\u3059`:""}`},isValid:({coverDataUrl:e,coverHeight:u,coverWidth:r})=>{if(typeof e!="string")return!0;const a=U(r,u);return typeof a=="number"&&a===1.4}},st={isCritical:!0,getMessage:()=>"config.yaml\u306E chapters \u306E\u6307\u5B9A\u306B\u8AA4\u308A\u304C\u3042\u308A\u307E\u3059",detailUrl:"https://zenn.dev/zenn/articles/zenn-cli-guide#%F0%9F%93%84-config.yaml",isValid:({specifiedChapterSlugs:e})=>e===void 0?!0:Array.isArray(e)&&e.every(u=>typeof u=="string")},ct={isCritical:!0,getMessage:()=>"chapters \u306B\u6307\u5B9A\u3059\u308B\u6587\u5B57\u5217\u306B\u306F\u62E1\u5F35\u5B50\uFF08.md\uFF09\u3092\u542B\u3081\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u30D5\u30A1\u30A4\u30EB\u540D\u304C example.md \u3067\u3042\u308C\u3070 example \u3068\u306E\u307F\u8A18\u8F09\u3057\u3066\u304F\u3060\u3055\u3044",detailUrl:"https://zenn.dev/zenn/articles/zenn-cli-guide#%F0%9F%93%84-config.yaml",isValid:({specifiedChapterSlugs:e})=>Array.isArray(e)?!e.some(r=>typeof r=="string"&&r.match(/\.md$/)):!0},mt={isCritical:!0,getMessage:({slug:e})=>Xe(e),isValid:({slug:e})=>Ze(e)},dt={isCritical:!0,getMessage:()=>"free\uFF08\u7121\u6599\u516C\u958B\u8A2D\u5B9A\uFF09\u306B\u306F true \u3082\u3057\u304F\u306F false\u306E\u307F\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",isValid:({free:e})=>e===void 0||typeof e=="boolean"};function I(e,u){return u.reduce((r,a)=>(a.isValid(e)||r.push({isCritical:a.isCritical===!0,message:a.getMessage(e),detailUrl:a.detailUrl,detailUrlText:a.detailUrlText}),r),[])}const gt=e=>I(e,[J,M,R,Y,Qe,tt,et,G,ee,Q,Z,X]),Et=e=>I(e,[J,M,R,Y,G,ee,Q,Z,X,ut,rt,at,nt,it,ot,lt,st,ct]),pt=e=>I(e,[mt,M,R,dt]),te=({topics:e})=>t.createElement(ht,{className:"topic-list"},e.map((u,r)=>t.createElement("span",{className:"topic-list__item",key:`topic-${r}`},u))),N="3px",ht=s.div`
267
+ margin-top: -${N};
268
+ .topic-list__item {
269
+ display: inline-flex;
270
+ color: var(--c-gray);
271
+ font-size: 0.9em;
272
+ border: solid 1px var(--c-gray-border);
273
+ background: #fff;
274
+ padding: 0.1em 0.4em;
275
+ border-radius: 5px;
276
+ margin: ${N} 6px ${N} 0;
277
+ }
278
+ `,E=e=>t.createElement(Ft,{className:"property-row"},t.createElement("div",{className:"property-row__title"},e.title),t.createElement("div",{className:"property-row__content"},e.children)),Ft=s.div`
279
+ display: flex;
280
+ font-size: 0.92rem;
281
+ color: var(--c-gray);
282
+ & + .property-row {
283
+ margin-top: 0.5rem;
284
+ }
285
+ .property-row__title {
286
+ font-weight: 700;
287
+ width: 140px;
288
+ }
289
+ .property-row__content {
290
+ flex: 1;
291
+ }
292
+ `,ue="#ff9715",q=({message:e,isCritical:u,detailUrl:r,detailUrlText:a})=>t.createElement(ft,{className:`validation-error-row ${u?"validation-error-row--critical":""}`},t.createElement(he,{className:"validation-error-row__icon"}),t.createElement("div",{className:"validation-error-row__message"},e,typeof r=="string"&&t.createElement("a",{className:"validation-error-row__link",href:r,target:"_blank",rel:"nofollow noreferrer"},a||"\u8A73\u7D30\u3092\u898B\u308B",t.createElement(S,{className:"validation-error-row__link-icon"})))),ft=s.div`
293
+ display: flex;
294
+ align-items: flex-start;
295
+ margin-top: 0.5rem;
296
+ .validation-error-row__icon {
297
+ width: 1.1em;
298
+ height: 1.1em;
299
+ color: ${ue};
300
+ flex-shrink: 0;
301
+ transform: translateY(-0.1em);
302
+ }
303
+ .validation-error-row__message {
304
+ flex: 1;
305
+ color: var(--c-gray);
306
+ font-size: 14px;
307
+ margin-left: 7px;
308
+ }
309
+ .validation-error-row__link {
310
+ margin-left: 6px;
311
+ color: inherit;
312
+ text-decoration: underline;
313
+ text-underline-offset: 2px;
314
+ text-decoration-color: var(--c-gray-border);
315
+ display: inline-flex;
316
+ align-items: center;
317
+ &:hover {
318
+ color: var(--c-body);
319
+ }
320
+ }
321
+ .validation-error-row__link-icon {
322
+ width: 15px;
323
+ height: 15px;
324
+ }
325
+ &.validation-error-row--critical {
326
+ .validation-error-row__message {
327
+ /* color: var(--c-error); */
328
+ }
329
+ .validation-error-row__icon {
330
+ color: var(--c-error);
331
+ }
332
+ }
333
+ `,V=({validationErrors:e})=>{const{criticalErrors:u,warnings:r}=l.exports.useMemo(()=>e.reduce((a,n)=>(a[n.isCritical?"criticalErrors":"warnings"].push(n),a),{criticalErrors:[],warnings:[]}),[e]);return e.length?t.createElement(_t,{className:"validation-error"},u.length>0&&t.createElement("div",{className:"validation-error__critical"},t.createElement("div",{className:"validation-error__title validation-error__title--critical"},u.length,"\u4EF6\u306E\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059"),u.map((a,n)=>t.createElement(q,k({key:`validation-error-${n}`},a)))),r.length>0&&t.createElement("div",{className:"validation-error__warnings"},t.createElement("div",{className:"validation-error__title"},r.length,"\u4EF6\u306E\u4FEE\u6B63\u3092\u304A\u3059\u3059\u3081\u3057\u307E\u3059"),r.map((a,n)=>t.createElement(q,k({key:`validation-error-${n}`},a))))):null},_t=s.div`
334
+ padding: 1.2rem 1.4rem 1.3rem;
335
+ background: #fff;
336
+ border-radius: 10px;
337
+ .validation-error__title {
338
+ font-size: 0.95rem;
339
+ color: ${ue};
340
+ font-weight: 700;
341
+ }
342
+ .validation-error__title--critical {
343
+ color: var(--c-error);
344
+ }
345
+ .validation-error__critical + .validation-error__warnings {
346
+ margin-top: 1.2rem;
347
+ }
348
+ `,vt=({article:e})=>{const u=l.exports.useMemo(()=>gt(e),[e]);return t.createElement(yt,null,t.createElement(F,null,typeof e.emoji=="string"&&t.createElement("div",{className:"article-header__emoji"},e.emoji),t.createElement("h1",{className:"article-header__title"},e.title||"title\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"),t.createElement("div",{className:"article-header__properties"},t.createElement(E,{title:"slug"},e.slug),t.createElement(E,{title:"published"},typeof e.published=="boolean"?t.createElement(t.Fragment,null,e.published?"true\uFF08\u516C\u958B\uFF09":"false\uFF08\u4E0B\u66F8\u304D\uFF09"):"true \u3082\u3057\u304F\u306F false \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"),t.createElement(E,{title:"type"},e.type==="tech"?"tech\uFF08\u6280\u8853\u8A18\u4E8B\uFF09":t.createElement(t.Fragment,null,e.type==="idea"?"idea\uFF08\u30A2\u30A4\u30C7\u30A2\uFF09":"tech \u3082\u3057\u304F\u306F idea \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")),t.createElement(E,{title:"topics"},Array.isArray(e.topics)&&e.topics.length?t.createElement(te,{topics:e.topics}):"\u6307\u5B9A\u304C\u5FC5\u8981\u3067\u3059")),!!u.length&&t.createElement("div",{className:"article-header__validation-errors"},t.createElement(V,{validationErrors:u}))))},yt=s.header`
349
+ padding: 3.3rem 0;
350
+ background: var(--c-gray-bg);
351
+ .article-header__emoji {
352
+ margin-top: -0.5em;
353
+ font-size: 56px;
354
+ color: #000;
355
+ }
356
+ .article-header__title {
357
+ font-size: 1.9rem;
358
+ }
359
+ .article-header__properties {
360
+ margin-top: 1rem;
361
+ }
362
+ .article-header__validation-errors {
363
+ margin-top: 1.4rem;
364
+ }
365
+ `,bt=({slug:e})=>{const{data:u,error:r,isValidating:a,mutate:n}=p(`/api/articles/${e}`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:3}),i=u==null?void 0:u.article;return b(`${(i==null?void 0:i.title)||e}\u306E\u30D7\u30EC\u30D3\u30E5\u30FC`),v(()=>{n()}),i?t.createElement(t.Fragment,null,t.createElement(vt,{article:i}),t.createElement(F,null,t.createElement(Bt,{className:"article-show"},t.createElement("div",{className:"article-show__content"},t.createElement(A,{rawHtml:i.bodyHtml||""}))))):a?t.createElement(_,{margin:"5rem auto"}):t.createElement(f,{message:r==null?void 0:r.message})},Bt=s.div`
366
+ .article-show__content {
367
+ padding: 3rem 0 18rem;
368
+ }
369
+ `,Ct=({book:e})=>{const u=l.exports.useMemo(()=>Et(e),[e]);return t.createElement(At,null,t.createElement(F,null,t.createElement("div",{className:"book-header__hero"},t.createElement("div",{className:"book-header__cover"},t.createElement("img",{src:e.coverDataUrl||"/static-images/book-cover.png",className:"book-header__cover-img",alt:"\u30AB\u30D0\u30FC\u753B\u50CF\u306E\u30D7\u30EC\u30D3\u30E5\u30FC",width:"160",height:"224"})),t.createElement("h1",{className:"book-header__title"},e.title||"title\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")),t.createElement("div",{className:"book-header__properties"},t.createElement(E,{title:"slug"},e.slug),t.createElement(E,{title:"published"},typeof e.published=="boolean"?t.createElement(t.Fragment,null,e.published?"true\uFF08\u516C\u958B\uFF09":"false\uFF08\u4E0B\u66F8\u304D\uFF09"):"true \u3082\u3057\u304F\u306F false \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"),t.createElement(E,{title:"price"},typeof e.price=="number"?e.price:"\u534A\u89D2\u6570\u5B57\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"),t.createElement(E,{title:"topics"},Array.isArray(e.topics)&&e.topics.length?t.createElement(te,{topics:e.topics}):"\u6307\u5B9A\u304C\u5FC5\u8981\u3067\u3059"),t.createElement(E,{title:"summary"},t.createElement("div",{className:"book-header__summary"},e.summary||"\u6307\u5B9A\u304C\u5FC5\u8981\u3067\u3059"))),!!u.length&&t.createElement("div",{className:"book-header__validation-errors"},t.createElement(V,{validationErrors:u}))))},At=s.header`
370
+ padding: 3.3rem 0;
371
+ background: var(--c-gray-bg);
372
+ .book-header__hero {
373
+ display: flex;
374
+ align-items: center;
375
+ }
376
+ .book-header__cover-img {
377
+ background: #fff;
378
+ object-fit: cover;
379
+ box-shadow: 0 9px 20px -9px rgba(0, 27, 68, 0.52),
380
+ 0 0 3px rgba(0, 21, 60, 0.1);
381
+ border-radius: 5px;
382
+ }
383
+ .book-header__title {
384
+ flex: 1;
385
+ margin-top: -1em;
386
+ margin-left: 1.2em;
387
+ font-size: 1.8rem;
388
+ }
389
+ .book-header__properties {
390
+ margin-top: 1.5rem;
391
+ }
392
+ .book-header__summary {
393
+ white-space: pre-line;
394
+ }
395
+ .book-header__validation-errors {
396
+ margin-top: 1.4rem;
397
+ }
398
+ @media (max-width: 768px) {
399
+ .book-header__hero {
400
+ display: block;
401
+ }
402
+ .book-header__cover {
403
+ text-align: center;
404
+ }
405
+ .book-header__title {
406
+ margin: 1.7rem 0 0;
407
+ font-size: 1.5rem;
408
+ }
409
+ }
410
+ `,K=({bookSlug:e,chapters:u,showListNumber:r})=>{const a=r?"ol":"ul";return t.createElement(xt,{className:"book-chapter-list"},t.createElement(a,null,u.map(n=>t.createElement("li",{key:`book-chapter-${n.filename}`,className:"book-chapter-list__li"},t.createElement(le,{bookSlug:e,chapterFilename:n.filename,className:"book-chapter-list__link"},n.title||"\u7121\u984C",t.createElement("span",{className:"book-chapter-list__slug"},"\uFF08",n.slug||n.filename,"\uFF09"))))))},xt=s.div`
411
+ color: var(--c-gray);
412
+ font-weight: 700;
413
+ ul,
414
+ ol {
415
+ margin-left: 1.4em;
416
+ padding-left: 0.2em;
417
+ }
418
+ ul {
419
+ list-style: disc;
420
+ }
421
+ ol {
422
+ list-style: decimal;
423
+ }
424
+ .book-chapter-list__li {
425
+ margin: 0.3rem 0;
426
+ }
427
+ .book-chapter-list__link {
428
+ color: var(--c-primary-darker);
429
+ font-weight: normal;
430
+ &:hover {
431
+ text-decoration: underline;
432
+ }
433
+ }
434
+ .book-chapter-list__slug {
435
+ font-size: 0.8em;
436
+ opacity: 0.7;
437
+ text-decoration: none;
438
+ }
439
+ `,wt=({slug:e})=>{const{data:u,error:r,isValidating:a,mutate:n}=p(`/api/books/${e}`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:3}),i=u==null?void 0:u.book;b(`${(i==null?void 0:i.title)||e}\u306E\u30D7\u30EC\u30D3\u30E5\u30FC`);const{data:o,error:d,isValidating:m,mutate:w}=p(`/api/books/${e}/chapters`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:3});v(()=>{n(),w()});const y=o==null?void 0:o.chapters,{withPositionChapters:g,withoutPositionChapters:B}=l.exports.useMemo(()=>y?y.reduce((O,j)=>(O[typeof j.position=="number"?"withPositionChapters":"withoutPositionChapters"].push(j),O),{withPositionChapters:[],withoutPositionChapters:[]}):{withPositionChapters:[],withoutPositionChapters:[]},[y]);return i?t.createElement(t.Fragment,null,t.createElement(Ct,{book:i}),t.createElement(F,null,t.createElement(kt,{className:"book-show"},t.createElement("h2",{className:"book-show__chapters-title"},"Chapters"),m?t.createElement(_,null):t.createElement(t.Fragment,null,d?t.createElement(f,{message:d==null?void 0:d.message}):t.createElement("div",null,!!(g!=null&&g.length)&&t.createElement("div",{className:"book-show__chapters"},t.createElement(K,{bookSlug:i.slug,chapters:g,showListNumber:!0})),!!(B!=null&&B.length)&&t.createElement("div",{className:"book-show__excluded-chapters"},t.createElement("p",{className:"book-show__chapters-note"},"\u4EE5\u4E0B\u306E\u30C1\u30E3\u30D7\u30BF\u30FC\u306Fzenn.dev\u3078\u306E\u30C7\u30D7\u30ED\u30A4\u5BFE\u8C61\u306B\u542B\u307E\u308C\u307E\u305B\u3093\u3002\u672C\u306B\u542B\u3081\u308B\u30C1\u30E3\u30D7\u30BF\u30FC\u306E",t.createElement("a",{href:"https://zenn.dev/zenn/articles/what-is-slug",rel:"noopener noreferrer",target:"_blank"},"\u30B9\u30E9\u30C3\u30B0"),"\u3092",t.createElement("code",null,"config.yaml"),"\u306B\u6307\u5B9A\u3059\u308B\u304B\u3001\u5168\u3066\u306E\u30C1\u30E3\u30D7\u30BF\u30FC\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u3092",t.createElement("code",null,"\u30C1\u30E3\u30D7\u30BF\u30FC\u756A\u53F7.\u30B9\u30E9\u30C3\u30B0.md"),"\u306E\u5F62\u5F0F\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",t.createElement("a",{href:"https://zenn.dev/zenn/articles/zenn-cli-guide#%F0%9F%93%84-%E5%90%84%E3%83%81%E3%83%A3%E3%83%97%E3%82%BF%E3%83%BC%E3%81%AE%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%EF%BC%88%E2%97%AF%E2%97%AF.md%EF%BC%89",target:"_blank",rel:"noopener noreferrer"},"\u8A73\u3057\u3044\u8AAC\u660E\u3092\u958B\u304F",t.createElement(S,{className:"book-show__open-icon"}))),t.createElement("div",{className:"book-show__chapters"},t.createElement(K,{bookSlug:i.slug,chapters:B,showListNumber:!1})))))))):a?t.createElement(_,{margin:"5rem auto"}):t.createElement(f,{message:r==null?void 0:r.message})},kt=s.div`
440
+ padding: 3rem 0 6rem;
441
+
442
+ .book-show__chapters-title {
443
+ font-size: 2rem;
444
+ }
445
+ .book-show__chapters {
446
+ margin-top: 1rem;
447
+ line-height: 1.5;
448
+ }
449
+ .book-show__excluded-chapters {
450
+ margin-top: 2.5rem;
451
+ padding: 1.3rem;
452
+ border: solid 1px var(--c-gray-border);
453
+ border-radius: 10px;
454
+ color: var(--c-gray);
455
+ font-size: 0.95rem;
456
+ }
457
+ .book-show__chapters-note {
458
+ line-height: 1.8;
459
+ code {
460
+ line-height: 1.2;
461
+ display: inline-flex;
462
+ margin: 0 0.2em;
463
+ padding: 0.2em 0.5em;
464
+ font-size: 0.88em;
465
+ background: var(--c-gray-bg);
466
+ border-radius: 5px;
467
+ }
468
+ a {
469
+ display: inline-flex;
470
+ align-items: center;
471
+ text-decoration: underline;
472
+ text-underline-offset: 4px;
473
+ text-decoration-color: var(--c-gray-border);
474
+ &:hover {
475
+ color: var(--c-body);
476
+ }
477
+ }
478
+ }
479
+ .book-show__open-icon {
480
+ width: 15px;
481
+ height: 15px;
482
+ }
483
+ `,Nt=({chapter:e,book:u})=>{const r=l.exports.useMemo(()=>pt(e),[e]);return t.createElement(Dt,null,t.createElement("div",{className:"chapter-header__book"},t.createElement(oe,{slug:u.slug,className:"chapter-header__book-link"},t.createElement(Fe,{className:"book-header__book-back"}),t.createElement("span",{className:"chapter-header__book-title"},u.title))),t.createElement("div",{className:"chapter-header__main"},t.createElement(F,null,t.createElement("h1",{className:"chapter-header__title"},e.title||"title\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"),t.createElement("div",{className:"chapter-header__properties"},t.createElement(E,{title:"slug"},e.slug),t.createElement(E,{title:"free"},u.price===0?"\u672C\u306E\u4FA1\u683C\u304C\xA50\u3067\u3042\u308B\u305F\u3081\u30C1\u30E3\u30D7\u30BF\u30FC\u306F\u7121\u6599\u516C\u958B\u3055\u308C\u307E\u3059":t.createElement(t.Fragment,null,e.free?"true\uFF08\u7121\u6599\u516C\u958B\uFF09":"false\uFF08\u8CFC\u5165\u8005\u306E\u307F\u95B2\u89A7\u53EF\uFF09"))),!!r.length&&t.createElement("div",{className:"chapter-header__validation-errors"},t.createElement(V,{validationErrors:r})))))},Dt=s.header`
484
+ background: var(--c-gray-bg);
485
+ .chapter-header__book {
486
+ background: rgba(158, 186, 203, 0.3);
487
+ padding: 0.6rem 1rem;
488
+ }
489
+ .chapter-header__book-link {
490
+ display: flex;
491
+ align-items: center;
492
+ color: var(--c-gray);
493
+ &:hover {
494
+ color: var(--c-body);
495
+ }
496
+ }
497
+ .book-header__book-back {
498
+ width: 14px;
499
+ height: 14px;
500
+ }
501
+
502
+ .chapter-header__book-title {
503
+ margin-left: 5px;
504
+ flex: 1;
505
+ font-size: 13.5px;
506
+ font-weight: 700;
507
+ }
508
+ .chapter-header__main {
509
+ padding: 2.2rem 0 2.8rem;
510
+ }
511
+ .chapter-header__title {
512
+ font-size: 1.8rem;
513
+ }
514
+ .chapter-header__properties {
515
+ margin-top: 1rem;
516
+ }
517
+ .chapter-header__validation-errors {
518
+ margin-top: 1.4rem;
519
+ }
520
+ `,$t=({bookSlug:e,chapterFilename:u})=>{const{data:r,error:a,isValidating:n,mutate:i}=p(`/api/books/${e}`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:3}),o=r==null?void 0:r.book,{data:d,error:m,isValidating:w,mutate:y}=p(`/api/books/${e}/chapters/${u}`,{revalidateOnFocus:!1,revalidateOnReconnect:!1,errorRetryCount:3}),g=d==null?void 0:d.chapter;return b(`${(g==null?void 0:g.title)||u}\u306E\u30D7\u30EC\u30D3\u30E5\u30FC`),v(()=>{i(),y()}),o?g?t.createElement(t.Fragment,null,t.createElement(Nt,{book:o,chapter:g}),t.createElement(F,null,t.createElement(St,{className:"book-show"},t.createElement("div",{className:"chapter-show__content"},t.createElement(A,{rawHtml:g.bodyHtml||""}))))):w?t.createElement(_,{margin:"5rem auto"}):t.createElement(f,{message:(m==null?void 0:m.message)||`\u30C1\u30E3\u30D7\u30BF\u30FC ${u} \u306E\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F`}):n?t.createElement(_,{margin:"5rem auto"}):t.createElement(f,{message:(a==null?void 0:a.message)||`\u672C ${e} \u306E\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F`})},St=s.div`
521
+ .chapter-show__content {
522
+ padding: 3rem 0 10rem;
523
+ }
524
+ `;function zt(e){return escape(e.replace(/\./g,"%2E"))}function Lt(e){return unescape(e).replace(/%2E/g,".")}const re=c.Path().any("slug",{action:({slug:e})=>t.createElement(bt,{slug:e})}),ae=c.Path().any("slug",{action:({slug:e})=>t.createElement(wt,{slug:e})}),ne=ae.anyRoute.attach(c.Path()).any("chapter_filename",{action:({slug:e,chapter_filename:u})=>t.createElement($t,{bookSlug:e,chapterFilename:Lt(u)})}),ie=c.SingleHash("hash",{optional:!0}).attach(c.Path()).any("slug",{action:({slug:e,hash:u})=>t.createElement(We,{slug:e,hash:u})}),$=c.Path().exact({action:()=>t.createElement(Pe,null)}).route("guide",e=>e.attach(ie)).route("articles",e=>e.attach(re)).route("books",e=>e.attach(ne)),Mt=()=>c.useRoutes($),Rt=e=>{const u=c.useLocation(),r=l.exports.useMemo(()=>u.key===$.exactRoute.key,[u]);return t.createElement(c.Link,{route:$.exactRoute,className:r?`active ${e.className}`:e.className},e.children)},It=e=>{const u=c.useLocation(),r=l.exports.useMemo(()=>u.pathname===`/articles/${e.slug}`,[u]);return t.createElement(c.Link,{route:re.anyRoute,match:{slug:e.slug},className:r?`active ${e.className}`:e.className},e.children)},oe=e=>{const u=c.useLocation(),r=l.exports.useMemo(()=>u.pathname===`/books/${e.slug}`,[u]);return t.createElement(c.Link,{route:ae.anyRoute,match:{slug:e.slug},className:r?`active ${e.className}`:e.className},e.children)},le=e=>{const u=c.useLocation(),r=zt(e.chapterFilename),a=l.exports.useMemo(()=>u.pathname===`/books/${e.bookSlug}/${r}`,[u]);return t.createElement(c.Link,{route:ne.anyRoute,match:{slug:e.bookSlug,chapter_filename:r},className:a?`active ${e.className}`:e.className},e.children)},C=e=>{const u=c.useLocation(),r=l.exports.useMemo(()=>u.pathname!==`/guide/${e.slug}`?!1:e.hash?u.hash===`#${e.hash}`:!0,[u]);return t.createElement(c.Link,{route:ie.anyRoute,match:{slug:e.slug,hash:e.hash},className:r?`active ${e.className}`:e.className},e.children)},Vt=({article:e})=>t.createElement(It,{slug:e.slug},t.createElement(h,{title:e.title||e.slug,label:e.published?void 0:"\u4E0B\u66F8\u304D",emoji:e.emoji||"\u{1F4C4}"})),Ot=({bookSlug:e,chapter:u,chapterNumber:r})=>{const a=typeof r=="number";return t.createElement(le,{bookSlug:e,chapterFilename:u.filename},t.createElement(h,{label:a?void 0:"\u9664\u5916",title:`${a?`${r}. `:""}${u.title||u.slug}`}))},jt=({bookSlug:e})=>{const{data:u,mutate:r}=p(`/api/books/${e}/chapters`,{revalidateOnFocus:!1}),a=u==null?void 0:u.chapters;return v(()=>{r()}),t.createElement("ul",null,t.createElement("li",null,t.createElement(oe,{slug:e},t.createElement(h,{title:"\u8A2D\u5B9A",emoji:"\u{1F4D8}"}))),!!(a!=null&&a.length)&&t.createElement(t.Fragment,null,a==null?void 0:a.map((n,i)=>t.createElement("li",{key:`dir-book-${e}-${n.slug}`},t.createElement(Ot,{bookSlug:e,chapter:n,chapterNumber:typeof n.position=="number"?i+1:void 0})))))},Tt=({book:e})=>t.createElement(L,{title:e.title||e.slug,uniqueKey:`dir-book-${e.slug}`,defaultOpen:!1,label:e.published?void 0:"\u4E0B\u66F8\u304D"},t.createElement(jt,{bookSlug:e.slug})),Pt=({sort:e})=>{const{data:u,mutate:r}=p(`/api/articles?sort=${e}`,{revalidateOnFocus:!1,errorRetryCount:3}),a=u==null?void 0:u.articles;return v(()=>{r()}),t.createElement(L,{title:"articles",uniqueKey:"dir-articles",defaultOpen:!0},t.createElement("ul",null,!!(a!=null&&a.length)&&t.createElement("li",null,a.map(n=>t.createElement(Vt,{key:`item-article-${n.slug}`,article:n})))))},Ht=({sort:e})=>{const{data:u,mutate:r}=p(`/api/books?sort=${e}`,{revalidateOnFocus:!1}),a=u==null?void 0:u.books;return v(()=>{r()}),t.createElement(L,{title:"books",uniqueKey:"dir-books",defaultOpen:!0},!!(a!=null&&a.length)&&t.createElement("ul",null,a==null?void 0:a.map(n=>t.createElement(Tt,{key:`item-book-${n.slug}`,book:n}))))},Ut=()=>{const[e,u]=D({cacheKey:"fold-sidebar",defaultValue:!1}),[r,a]=D({cacheKey:"item-sort-type",defaultValue:"modified"});return t.createElement(qt,{"aria-expanded":!e,className:"sidebar"},t.createElement("button",{className:"sidebar__btn-fold",onClick:()=>u(!e),"aria-label":e?"\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F":"\u6298\u308A\u305F\u305F\u3080"},e?t.createElement(fe,{className:"sidebar__fold-icon"}):t.createElement(_e,{className:"sidebar__fold-icon"})),t.createElement("div",{className:"sidebar__inner","aria-hidden":e},t.createElement("header",{className:"sidebar__header"},t.createElement(Rt,null,t.createElement("img",{src:"/logo.svg",alt:"Zenn Editor",width:150,height:20,className:"sidebar__header-logo"})),t.createElement(Me,{openButtonIcon:t.createElement(ve,{className:"sidebar__sort-open"}),openButtonAriaLabel:"\u30BD\u30FC\u30C8\u8A2D\u5B9A\u3092\u958B\u304F",position:"right",options:[{value:"modified",label:"\u30D5\u30A1\u30A4\u30EB\u66F4\u65B0\u9806\u306B\u4E26\u3079\u308B"},{value:"system",label:"\u30B7\u30B9\u30C6\u30E0\u306E\u8868\u793A\u9806\u306B\u5F93\u3046"}],value:r,setValue:n=>a(n),width:200})),t.createElement("div",{className:"sidebar__items"},t.createElement(Pt,{sort:r}),t.createElement(Ht,{sort:r}),t.createElement("ul",{className:"sidebar__static-links"},t.createElement("li",null,t.createElement(C,{slug:"zenn-cli-guide",hash:"cli-%E3%81%A7%E8%A8%98%E4%BA%8B%EF%BC%88article%EF%BC%89%E3%82%92%E7%AE%A1%E7%90%86%E3%81%99%E3%82%8B"},t.createElement(h,{title:"\u8A18\u4E8B\u306E\u4F5C\u6210\u30AC\u30A4\u30C9",emoji:"\u{1F4DD}"}))),t.createElement("li",null,t.createElement(C,{slug:"zenn-cli-guide",hash:"cli-%E3%81%A7%E6%9C%AC%EF%BC%88book%EF%BC%89%E3%82%92%E7%AE%A1%E7%90%86%E3%81%99%E3%82%8B"},t.createElement(h,{title:"\u672C\u306E\u4F5C\u6210\u30AC\u30A4\u30C9",emoji:"\u{1F4DA}"}))),t.createElement("li",null,t.createElement(C,{slug:"deploy-github-images"},t.createElement(h,{title:"\u753B\u50CF\u7BA1\u7406\u30AC\u30A4\u30C9",emoji:"\u{1F3DE}",label:"Beta"}))),t.createElement("li",null,t.createElement("a",{href:"https://zenn.dev/zenn/articles/markdown-guide",target:"_blank",rel:"noopener noreferrer"},t.createElement(h,{title:"\u30DE\u30FC\u30AF\u30C0\u30A6\u30F3\u8A18\u6CD5",emoji:"\u{1F58B}\uFE0F ",showNewTabIcon:!0}))),t.createElement("li",null,t.createElement("a",{href:"https://zenn.dev/dashboard/uploader",target:"_blank",rel:"noopener noreferrer"},t.createElement(h,{title:"\u753B\u50CF\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",emoji:"\u{1F4F7}",showNewTabIcon:!0})))))))},qt=s.div`
525
+ position: sticky;
526
+ top: 0;
527
+ height: 100vh;
528
+ overflow-y: auto;
529
+ border-right: solid 1px var(--c-gray-border);
530
+ padding: 15px;
531
+ width: 46px;
532
+ &[aria-expanded='true'] {
533
+ width: 350px;
534
+ }
535
+ .sidebar__btn-fold {
536
+ position: absolute;
537
+ top: 12px;
538
+ right: 10px;
539
+ display: inline-flex;
540
+ align-items: center;
541
+ justify-content: center;
542
+ width: 26px;
543
+ height: 26px;
544
+ background: var(--c-gray-bg);
545
+ border-radius: 5px;
546
+ &:hover {
547
+ .sidebar__fold-icon {
548
+ color: var(--c-body);
549
+ }
550
+ }
551
+ }
552
+ .sidebar__fold-icon {
553
+ width: 18px;
554
+ width: 18px;
555
+ color: var(--c-gray);
556
+ }
557
+
558
+ .sidebar__inner {
559
+ &[aria-hidden='true'] {
560
+ display: none;
561
+ }
562
+ }
563
+ .sidebar__header {
564
+ display: flex;
565
+ align-items: center;
566
+ justify-content: space-between;
567
+ padding-right: 34px;
568
+ }
569
+ .sidebar__header-logo {
570
+ flex-shrink: 0;
571
+ display: block;
572
+ }
573
+ .sidebar__sort-open {
574
+ width: 22px;
575
+ height: 22px;
576
+ }
577
+ .sidebar__items {
578
+ margin: 10px 0;
579
+ display: block;
580
+ font-size: 13.5px;
581
+ a {
582
+ margin: 2px 0;
583
+ padding: 2px 0;
584
+ display: block;
585
+ color: var(--c-gray);
586
+ &:hover {
587
+ color: var(--c-body);
588
+ }
589
+ &.active {
590
+ position: relative;
591
+ color: var(--c-primary-darker);
592
+ &:before {
593
+ content: '';
594
+ position: absolute;
595
+ background: var(--c-primary-bg);
596
+ top: 0;
597
+ bottom: 0;
598
+ left: -5px;
599
+ right: -5px;
600
+ z-index: -1;
601
+ border-radius: 4px;
602
+ }
603
+ }
604
+ }
605
+ }
606
+ .sidebar__static-links {
607
+ margin-top: 8px;
608
+ }
609
+ `,Kt=({children:e})=>t.createElement(Wt,{className:"layout"},t.createElement("aside",{className:"layout__sidebar"},t.createElement(Ut,null)),t.createElement("main",{className:"layout__main"},e)),Wt=s.div`
610
+ display: flex;
611
+ .layout__main {
612
+ flex: 1;
613
+ }
614
+ `,Jt=e=>{try{const u=JSON.parse(e);if(typeof u.type!="string")throw new Error("Bad Request");if(typeof u.data!="object")throw new Error("Bad Request");return u}catch{return{type:"none",data:{}}}},Yt=()=>{l.exports.useEffect(()=>{let e=!1;window.addEventListener("message",u=>{const r=Jt(u.data);switch(r.type){case"ready":{e=!0;const a=document.getElementById(r.data.id);if(!(a instanceof HTMLIFrameElement))break;const n={type:"rendering",data:{src:a==null?void 0:a.getAttribute("data-content")}};a.contentWindow&&a.contentWindow.postMessage&&a.contentWindow.postMessage(JSON.stringify(n),"*");break}case"resize":{if(!e)break;const a=document.getElementById(r.data.id);a instanceof HTMLIFrameElement&&(a.height=`${r.data.height||0}`);break}}})},[])};const Gt=()=>{const e=c.useLocation();return l.exports.useEffect(()=>{e.hash||window.scrollTo(0,0)},[e]),null},Zt=()=>(l.exports.useEffect(()=>{Ae(()=>import("./index.a740181c.js"),[])},[]),Yt(),t.createElement(we,null,t.createElement(Ne,null,t.createElement(c.RoconRoot,null,t.createElement(Gt,null),t.createElement(Kt,null,t.createElement(Mt,null))))));ye.render(t.createElement(Zt,null),document.getElementById("root"));