@ketvietlab/ketsuite 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +1 -1
- package/dist/modules/activity_backend/islands.d.ts +39 -2
- package/dist/modules/activity_backend/islands.d.ts.map +1 -1
- package/dist/modules/activity_backend/islands.js +5 -5
- package/dist/modules/activity_backend/islands.js.map +1 -1
- package/dist/modules/backend/design/client/backend-shell.d.mts +6 -0
- package/dist/modules/backend/design/client/backend-shell.d.mts.map +1 -0
- package/dist/modules/backend/design/client/backend-shell.mjs +2 -0
- package/dist/modules/backend/design/client/backend-shell.mjs.map +7 -0
- package/dist/modules/backend/design/client/chart.d.mts +3 -0
- package/dist/modules/backend/design/client/chart.d.mts.map +1 -1
- package/dist/modules/backend/design/client/chart.mjs +1 -1
- package/dist/modules/backend/design/client/chart.mjs.map +3 -3
- package/dist/modules/backend/index.d.ts.map +1 -1
- package/dist/modules/backend/index.js +8 -2
- package/dist/modules/backend/index.js.map +1 -1
- package/dist/modules/backend/islands.d.ts +38 -2
- package/dist/modules/backend/islands.d.ts.map +1 -1
- package/dist/modules/backend/islands.js +5 -11
- package/dist/modules/backend/islands.js.map +1 -1
- package/dist/modules/backend/joints.js +1 -1
- package/dist/modules/calendar_backend/islands.d.ts +20 -2
- package/dist/modules/calendar_backend/islands.d.ts.map +1 -1
- package/dist/modules/calendar_backend/islands.js +3 -3
- package/dist/modules/calendar_backend/islands.js.map +1 -1
- package/dist/modules/crm_backend/client/crm-kanban-view.d.mts.map +1 -1
- package/dist/modules/crm_backend/client/crm-kanban-view.mjs +0 -1
- package/dist/modules/crm_backend/client/crm-kanban-view.mjs.map +1 -1
- package/dist/modules/crm_backend/islands.d.ts +16 -2
- package/dist/modules/crm_backend/islands.d.ts.map +1 -1
- package/dist/modules/crm_backend/islands.js +3 -3
- package/dist/modules/crm_backend/islands.js.map +1 -1
- package/dist/modules/flow_backend/islands.d.ts +41 -2
- package/dist/modules/flow_backend/islands.d.ts.map +1 -1
- package/dist/modules/flow_backend/islands.js +8 -8
- package/dist/modules/flow_backend/islands.js.map +1 -1
- package/dist/modules/livedoc/islands.d.ts +24 -2
- package/dist/modules/livedoc/islands.d.ts.map +1 -1
- package/dist/modules/livedoc/islands.js +6 -5
- package/dist/modules/livedoc/islands.js.map +1 -1
- package/dist/modules/mail_backend/islands.d.ts +39 -2
- package/dist/modules/mail_backend/islands.d.ts.map +1 -1
- package/dist/modules/mail_backend/islands.js +5 -5
- package/dist/modules/mail_backend/islands.js.map +1 -1
- package/dist/modules/partner_backend/islands.d.ts +35 -2
- package/dist/modules/partner_backend/islands.d.ts.map +1 -1
- package/dist/modules/partner_backend/islands.js +3 -3
- package/dist/modules/partner_backend/islands.js.map +1 -1
- package/dist/modules/product_backend/client/editor-view.d.mts +5 -4
- package/dist/modules/product_backend/client/editor-view.d.mts.map +1 -1
- package/dist/modules/product_backend/client/editor-view.mjs +53 -79
- package/dist/modules/product_backend/client/editor-view.mjs.map +1 -1
- package/dist/modules/product_backend/client/product.d.mts +2 -5
- package/dist/modules/product_backend/client/product.d.mts.map +1 -1
- package/dist/modules/product_backend/client/product.mjs +2 -3
- package/dist/modules/product_backend/client/product.mjs.map +1 -1
- package/dist/modules/product_backend/index.d.ts.map +1 -1
- package/dist/modules/product_backend/index.js +7 -0
- package/dist/modules/product_backend/index.js.map +1 -1
- package/dist/modules/product_backend/islands.d.ts +35 -2
- package/dist/modules/product_backend/islands.d.ts.map +1 -1
- package/dist/modules/product_backend/islands.js +7 -9
- package/dist/modules/product_backend/islands.js.map +1 -1
- package/dist/modules/sale_backend/client/editor-view.d.mts +5 -4
- package/dist/modules/sale_backend/client/editor-view.d.mts.map +1 -1
- package/dist/modules/sale_backend/client/editor-view.mjs +49 -71
- package/dist/modules/sale_backend/client/editor-view.mjs.map +1 -1
- package/dist/modules/sale_backend/client/sale.d.mts +1 -5
- package/dist/modules/sale_backend/client/sale.d.mts.map +1 -1
- package/dist/modules/sale_backend/client/sale.mjs +1 -8
- package/dist/modules/sale_backend/client/sale.mjs.map +1 -1
- package/dist/modules/sale_backend/index.js +7 -0
- package/dist/modules/sale_backend/index.js.map +1 -1
- package/dist/modules/sale_backend/islands.d.ts +17 -2
- package/dist/modules/sale_backend/islands.d.ts.map +1 -1
- package/dist/modules/sale_backend/islands.js +5 -7
- package/dist/modules/sale_backend/islands.js.map +1 -1
- package/dist/modules/stock_backend/client/editor-view.d.mts +5 -4
- package/dist/modules/stock_backend/client/editor-view.d.mts.map +1 -1
- package/dist/modules/stock_backend/client/editor-view.mjs +77 -92
- package/dist/modules/stock_backend/client/editor-view.mjs.map +1 -1
- package/dist/modules/stock_backend/client/stock.d.mts +1 -5
- package/dist/modules/stock_backend/client/stock.d.mts.map +1 -1
- package/dist/modules/stock_backend/client/stock.mjs +1 -8
- package/dist/modules/stock_backend/client/stock.mjs.map +1 -1
- package/dist/modules/stock_backend/index.js +7 -0
- package/dist/modules/stock_backend/index.js.map +1 -1
- package/dist/modules/stock_backend/islands.d.ts +19 -2
- package/dist/modules/stock_backend/islands.d.ts.map +1 -1
- package/dist/modules/stock_backend/islands.js +5 -7
- package/dist/modules/stock_backend/islands.js.map +1 -1
- package/dist/modules/website_search/client/search.d.mts +8 -1
- package/dist/modules/website_search/client/search.d.mts.map +1 -1
- package/dist/modules/website_search/client/search.mjs +37 -16
- package/dist/modules/website_search/client/search.mjs.map +1 -1
- package/dist/modules/website_search/islands.d.ts +18 -2
- package/dist/modules/website_search/islands.d.ts.map +1 -1
- package/dist/modules/website_search/islands.js +4 -14
- package/dist/modules/website_search/islands.js.map +1 -1
- package/dist/scaffold/index.js +1 -1
- package/dist/ui/client/activity-view.d.mts +2 -0
- package/dist/ui/client/activity-view.d.mts.map +1 -1
- package/dist/ui/client/activity-view.mjs +6 -4
- package/dist/ui/client/activity-view.mjs.map +1 -1
- package/dist/ui/client/activity.d.mts +2 -0
- package/dist/ui/client/activity.d.mts.map +1 -1
- package/dist/ui/client/calendar-view.d.mts +1 -0
- package/dist/ui/client/calendar-view.d.mts.map +1 -1
- package/dist/ui/client/calendar-view.mjs +1 -2
- package/dist/ui/client/calendar-view.mjs.map +1 -1
- package/dist/ui/client/calendar.d.mts +1 -0
- package/dist/ui/client/calendar.d.mts.map +1 -1
- package/dist/ui/client/chart-view.d.ts +1 -7
- package/dist/ui/client/chart-view.d.ts.map +1 -1
- package/dist/ui/client/chart-view.js +10 -13
- package/dist/ui/client/chart-view.js.map +1 -1
- package/dist/ui/client/flow-board-view.d.mts.map +1 -1
- package/dist/ui/client/flow-board-view.mjs +3 -4
- package/dist/ui/client/flow-board-view.mjs.map +1 -1
- package/dist/ui/client/live-doc-view.d.ts +3 -3
- package/dist/ui/client/live-doc-view.d.ts.map +1 -1
- package/dist/ui/client/live-doc-view.js +13 -10
- package/dist/ui/client/live-doc-view.js.map +1 -1
- package/dist/ui/client/live-doc.d.mts +4 -1
- package/dist/ui/client/live-doc.d.mts.map +1 -1
- package/dist/ui/client/live-doc.mjs +1 -1
- package/dist/ui/client/live-doc.mjs.map +3 -3
- package/dist/ui/client/mail-bundle.d.mts +5 -3
- package/dist/ui/client/mail-bundle.d.mts.map +1 -1
- package/dist/ui/client/mail-bundle.mjs +5 -5
- package/dist/ui/client/mail-bundle.mjs.map +2 -2
- package/dist/ui/client/mail-entry.d.mts +2 -0
- package/dist/ui/client/mail-entry.d.mts.map +1 -1
- package/dist/ui/client/mail-view.d.mts +2 -0
- package/dist/ui/client/mail-view.d.mts.map +1 -1
- package/dist/ui/client/mail-view.mjs +6 -4
- package/dist/ui/client/mail-view.mjs.map +1 -1
- package/dist/ui/client/table-selection-view.d.ts +2 -3
- package/dist/ui/client/table-selection-view.d.ts.map +1 -1
- package/dist/ui/client/table-selection-view.js +49 -72
- package/dist/ui/client/table-selection-view.js.map +1 -1
- package/dist/ui/client/user-workflow.d.ts +1 -1
- package/dist/ui/client/user-workflow.d.ts.map +1 -1
- package/dist/ui/client/user-workflow.js +12 -10
- package/dist/ui/client/user-workflow.js.map +1 -1
- package/package.json +4 -4
- package/dist/modules/backend/design/client/table-selection.d.mts +0 -7
- package/dist/modules/backend/design/client/table-selection.d.mts.map +0 -1
- package/dist/modules/backend/design/client/table-selection.mjs +0 -2
- package/dist/modules/backend/design/client/table-selection.mjs.map +0 -7
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
declare var
|
|
1
|
+
declare var W: (t: any) => {
|
|
2
2
|
view: () => any;
|
|
3
|
+
mount: () => void;
|
|
3
4
|
dispose: () => void;
|
|
4
|
-
},
|
|
5
|
+
}, R: (t: any) => {
|
|
5
6
|
view: () => any;
|
|
7
|
+
mount: () => void;
|
|
6
8
|
dispose: () => void;
|
|
7
9
|
};
|
|
8
|
-
export {
|
|
10
|
+
export { W as chatter, R as inboxIndicator };
|
|
9
11
|
//# sourceMappingURL=mail-bundle.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-bundle.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-bundle.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mail-bundle.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-bundle.mjs"],"names":[],"mappings":"AAiD2C,QAAA,IAA+B,CAAC;;;;CAAU,EAAC,CAAC;;;;CAAU,CAAC;AAAA,OAAM,EAAC,CAAC,IAAI,OAAO,EAAC,CAAC,IAAI,cAAc,EAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @ts-nocheck Generated by tools/build-backend-client.mjs — do not edit.
|
|
2
|
-
import{each as
|
|
2
|
+
import{each as U,html as V,signal as j}from"/_ket/view/index.js";var P={vi:{title:"Th\u1EA3o lu\u1EADn",followers:"ng\u01B0\u1EDDi theo d\xF5i",follow:"Theo d\xF5i",unfollow:"B\u1ECF theo d\xF5i",comment:"G\u1EEDi tin nh\u1EAFn",note:"Ghi ch\xFA n\u1ED9i b\u1ED9",placeholder:"Vi\u1EBFt c\u1EADp nh\u1EADt cho b\u1EA3n ghi n\xE0y\u2026",attachment:"T\u1EC7p \u0111\xEDnh k\xE8m",send:"G\u1EEDi",sending:"\u0110ang g\u1EEDi\u2026",close:"\u0110\xF3ng",loading:"\u0110ang t\u1EA3i trao \u0111\u1ED5i\u2026",empty:"Ch\u01B0a c\xF3 trao \u0111\u1ED5i n\xE0o.",loadMore:"T\u1EA3i th\xEAm",retry:"Th\u1EED l\u1EA1i",system:"KetSuite",inbox:"H\u1ED9p th\u01B0 th\xF4ng b\xE1o",email:"Email",deliveryStates:{queued:"\u0111ang ch\u1EDD",sending:"\u0111ang g\u1EEDi",retryable:"ch\u1EDD th\u1EED l\u1EA1i",sent:"\u0111\xE3 g\u1EEDi",failed:"g\u1EEDi l\u1ED7i",cancelled:"\u0111\xE3 h\u1EE7y"}},en:{title:"Chatter",followers:"followers",follow:"Follow",unfollow:"Unfollow",comment:"Send message",note:"Internal note",placeholder:"Write an update for this record\u2026",attachment:"Attachment",send:"Send",sending:"Sending\u2026",close:"Close",loading:"Loading conversation\u2026",empty:"No messages yet.",loadMore:"Load more",retry:"Retry",system:"KetSuite",inbox:"Notification inbox",email:"Email",deliveryStates:{queued:"queued",sending:"sending",retryable:"retry pending",sent:"sent",failed:"failed",cancelled:"cancelled"}}},_=t=>P[String(t.lang).toLowerCase().startsWith("en")?"en":"vi"],L=t=>String(t.lang).toLowerCase().startsWith("en")?"en-US":"vi-VN",N=t=>t==="partner.Partner"?"partner_mail_backend":t==="product.Template"?"product_mail_backend":t==="product.Product"?"product_variant_mail_backend":t==="stock.Picking"?"stock_mail_backend":t==="stock.Lot"?"stock_lot_mail_backend":t==="sale.Order"?"sale_mail_backend":t==="account.Move"?"account_mail_backend":null,x=t=>t&&typeof t=="object"&&"message"in t?String(t.message):"The collaboration request failed",C=()=>{let t=new Set,i=!1;return{fetch:async(c,r={})=>{if(i)throw new DOMException("Island disposed","AbortError");let e=new AbortController;t.add(e);try{return await fetch(c,{...r,signal:e.signal})}finally{t.delete(e)}},disposed:()=>i,dispose:()=>{i=!0;for(let c of t)c.abort();t.clear()}}},v=async(t,i,c)=>{let r=await t(`/_ket/fn/${encodeURIComponent(i)}`,{method:"POST",credentials:"same-origin",headers:{"content-type":"application/json"},body:JSON.stringify(c)}),e=await r.json();if(!r.ok||e.ok===!1){let d=new Error(String(e.message??`HTTP ${r.status}`));throw d.code=e.code,d}return e.value},O=async(t,i,c)=>{let r=new FormData;r.set("file",i),r.set("resModel","mail.Message"),r.set("resId",c);let e=await t("/files",{method:"POST",credentials:"same-origin",body:r}),d=await e.json();if(!e.ok)throw new Error(String(d.message??`HTTP ${e.status}`));return String(d.id)};function q(t,i,c={}){let{each:r,html:e,signal:d}=t,a=_(i),$=new Intl.DateTimeFormat(L(i)),m=d(c.status??"loading"),n=d(!1),u=d(c.composerKind??null),f=d(c.error??""),y=d(c.page??{threadId:null,displayName:"",total:0,messages:[],followers:[],following:!1}),p=N(String(i.resModel)),h=C(),I=0,k=null,g=async({append:l=!1,quiet:s=!1}={})=>{if(!p){m.set("error"),f.set(`Unsupported collaboration target: ${String(i.resModel)}`);return}s||m.set("loading");try{let o=y(),b=await v(h.fetch,`${p}.timeline`,{targetId:i.resId,limit:l?20:Math.max(20,o.messages.length),offset:l?o.messages.length:0});y.set(l?{...b,messages:[...o.messages,...b.messages]}:b),f.set(""),m.set("ready")}catch(o){if(h.disposed())return;f.set(x(o)),m.set("error")}},A=async l=>{if(l.preventDefault(),!p||n())return;let s=l.target,o=new FormData(s),b=String(o.get("body")??"").trim();if(b){n.set(!0),f.set("");try{let w=crypto.randomUUID(),S=o.get("attachment"),F=S instanceof File&&S.size>0?[await O(h.fetch,S,w)]:[];await v(h.fetch,`${p}.post`,{id:w,targetId:i.resId,kind:String(o.get("kind")??"comment"),body:b,attachmentIds:F}),s.reset(),await g(),u.set(null)}catch(w){if(h.disposed())return;f.set(x(w)),m.set("error")}finally{n.set(!1)}}},D=async()=>{if(!(!p||n())){n.set(!0);try{await v(h.fetch,`${p}.${y().following?"unfollow":"follow"}`,{targetId:i.resId}),await g({quiet:!0})}catch(l){if(h.disposed())return;f.set(x(l)),m.set("error")}finally{n.set(!1)}}},T=()=>{h.disposed()||I>=240||(I++,k=setTimeout(async()=>{h.disposed()||(document.visibilityState==="visible"&&!n()&&await g({quiet:!0}),T())},15e3))};return{view:()=>{let l=y();return e`<section data-ui="chatter" data-state=${m()} aria-label=${a.title}>
|
|
3
3
|
<div data-ui="chatter-kinds" role="toolbar" aria-label=${a.title}>
|
|
4
4
|
<button data-ui="chatter-kind" data-kind="comment" data-active=${u()==="comment"} data-control="action" data-variant="secondary" data-size="compact" type="button" aria-pressed=${u()==="comment"} on:click=${()=>u.set(u()==="comment"?null:"comment")} disabled=${n()}>${a.comment}</button>
|
|
5
5
|
<button data-ui="chatter-kind" data-kind="note" data-active=${u()==="note"} data-control="action" data-variant="secondary" data-size="compact" type="button" aria-pressed=${u()==="note"} on:click=${()=>u.set(u()==="note"?null:"note")} disabled=${n()}>${a.note}</button>
|
|
@@ -26,8 +26,8 @@ import{each as O,html as U,signal as V}from"/_ket/view/index.js";var P={vi:{titl
|
|
|
26
26
|
</form>`:""}
|
|
27
27
|
${f()?e`<div data-ui="chatter-error" role="alert">${f()} <button data-ui="action" data-variant="secondary" data-size="compact" type="button" on:click=${()=>g()}>${a.retry}</button></div>`:""}
|
|
28
28
|
<div data-ui="chatter-timeline" aria-live="polite">
|
|
29
|
-
${
|
|
30
|
-
${
|
|
29
|
+
${m()==="loading"?e`<p data-ui="chatter-loading">${a.loading}</p>`:""}
|
|
30
|
+
${m()==="ready"&&l.messages.length===0?e`<p data-ui="chatter-empty">${a.empty}</p>`:""}
|
|
31
31
|
${r(l.messages,s=>s.id,s=>e`<article data-ui="chatter-message" data-kind=${s.kind}>
|
|
32
32
|
<header data-ui="chatter-message-head">
|
|
33
33
|
<strong data-ui="chatter-author">${s.authorName||a.system}</strong>
|
|
@@ -42,9 +42,9 @@ import{each as O,html as U,signal as V}from"/_ket/view/index.js";var P={vi:{titl
|
|
|
42
42
|
</article>`)}
|
|
43
43
|
</div>
|
|
44
44
|
${l.messages.length<l.total?e`<button data-ui="chatter-more" data-control="action" data-variant="secondary" data-size="compact" type="button" on:click=${()=>g({append:!0})} disabled=${n()}>${a.loadMore}</button>`:""}
|
|
45
|
-
</section>`},dispose:()=>{k!==null&&clearTimeout(k),
|
|
45
|
+
</section>`},mount:()=>{(async()=>h.disposed()||(await g(),T()))()},dispose:()=>{k!==null&&clearTimeout(k),h.dispose()}}}function E(t,i,c=0){let{html:r,signal:e}=t,d=_(i),a=e(c),$=C(),m=async()=>{try{let n=await v($.fetch,"mail.countUnread",{});a.set(Number(n.count??0))}catch{if($.disposed())return;a.set(0)}};return{view:()=>r`<a data-ui="mail-indicator" href="/admin/inbox" title=${d.inbox} aria-label=${d.inbox}>
|
|
46
46
|
<svg data-ui="mail-indicator-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
|
|
47
47
|
<path d="M21 15a4 4 0 0 1-4 4H8l-5 3v-3.8A4 4 0 0 1 1 15V7a4 4 0 0 1 4-4h12a4 4 0 0 1 4 4Z" />
|
|
48
48
|
</svg>
|
|
49
49
|
${a()>0?r`<span data-ui="mail-indicator-count">${a()}</span>`:""}
|
|
50
|
-
</a>`,dispose:$.dispose}}var z={each:
|
|
50
|
+
</a>`,mount:()=>{m()},dispose:$.dispose}}var z={each:U,html:V,signal:j},W=t=>q(z,t),R=t=>E(z,t);export{W as chatter,R as inboxIndicator};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["mail-entry.mjs", "mail-view.mjs"],
|
|
4
|
-
"sourcesContent": ["import { each, html, signal } from '@ketvietlab/ketjs-view'\nimport { createChatterView, createInboxIndicatorView } from './mail-view.mjs'\n\nconst runtime = { each, html, signal }\n\n/** @param {Record<string, unknown>} props */\nexport const chatter = (props) => createChatterView(runtime, props)\n/** @param {Record<string, unknown>} props */\nexport const inboxIndicator = (props) => createInboxIndicatorView(runtime, props)\n", "// @ts-nocheck This dependency-free browser/SSR source is contract-tested through both runtimes.\nconst LABELS = {\n vi: {\n title: 'Th\u1EA3o lu\u1EADn',\n followers: 'ng\u01B0\u1EDDi theo d\u00F5i',\n follow: 'Theo d\u00F5i',\n unfollow: 'B\u1ECF theo d\u00F5i',\n comment: 'G\u1EEDi tin nh\u1EAFn',\n note: 'Ghi ch\u00FA n\u1ED9i b\u1ED9',\n placeholder: 'Vi\u1EBFt c\u1EADp nh\u1EADt cho b\u1EA3n ghi n\u00E0y\u2026',\n attachment: 'T\u1EC7p \u0111\u00EDnh k\u00E8m',\n send: 'G\u1EEDi',\n sending: '\u0110ang g\u1EEDi\u2026',\n close: '\u0110\u00F3ng',\n loading: '\u0110ang t\u1EA3i trao \u0111\u1ED5i\u2026',\n empty: 'Ch\u01B0a c\u00F3 trao \u0111\u1ED5i n\u00E0o.',\n loadMore: 'T\u1EA3i th\u00EAm',\n retry: 'Th\u1EED l\u1EA1i',\n system: 'KetSuite',\n inbox: 'H\u1ED9p th\u01B0 th\u00F4ng b\u00E1o',\n email: 'Email',\n deliveryStates: {\n queued: '\u0111ang ch\u1EDD',\n sending: '\u0111ang g\u1EEDi',\n retryable: 'ch\u1EDD th\u1EED l\u1EA1i',\n sent: '\u0111\u00E3 g\u1EEDi',\n failed: 'g\u1EEDi l\u1ED7i',\n cancelled: '\u0111\u00E3 h\u1EE7y',\n },\n },\n en: {\n title: 'Chatter',\n followers: 'followers',\n follow: 'Follow',\n unfollow: 'Unfollow',\n comment: 'Send message',\n note: 'Internal note',\n placeholder: 'Write an update for this record\u2026',\n attachment: 'Attachment',\n send: 'Send',\n sending: 'Sending\u2026',\n close: 'Close',\n loading: 'Loading conversation\u2026',\n empty: 'No messages yet.',\n loadMore: 'Load more',\n retry: 'Retry',\n system: 'KetSuite',\n inbox: 'Notification inbox',\n email: 'Email',\n deliveryStates: {\n queued: 'queued',\n sending: 'sending',\n retryable: 'retry pending',\n sent: 'sent',\n failed: 'failed',\n cancelled: 'cancelled',\n },\n },\n}\n\nconst labelsOf = (props) => LABELS[String(props.lang).toLowerCase().startsWith('en') ? 'en' : 'vi']\nconst localeOf = (props) => (String(props.lang).toLowerCase().startsWith('en') ? 'en-US' : 'vi-VN')\n\nconst apiFor = (resModel) => {\n if (resModel === 'partner.Partner') return 'partner_mail_backend'\n if (resModel === 'product.Template') return 'product_mail_backend'\n if (resModel === 'product.Product') return 'product_variant_mail_backend'\n if (resModel === 'stock.Picking') return 'stock_mail_backend'\n if (resModel === 'stock.Lot') return 'stock_lot_mail_backend'\n if (resModel === 'sale.Order') return 'sale_mail_backend'\n if (resModel === 'account.Move') return 'account_mail_backend'\n return null\n}\n\nconst errorText = (error) =>\n error && typeof error === 'object' && 'message' in error\n ? String(error.message)\n : 'The collaboration request failed'\n\nconst requestScope = () => {\n const pending = new Set()\n let disposed = false\n return {\n fetch: async (url, options = {}) => {\n if (disposed) throw new DOMException('Island disposed', 'AbortError')\n const controller = new AbortController()\n pending.add(controller)\n try {\n return await fetch(url, { ...options, signal: controller.signal })\n } finally {\n pending.delete(controller)\n }\n },\n disposed: () => disposed,\n dispose: () => {\n disposed = true\n for (const controller of pending) controller.abort()\n pending.clear()\n },\n }\n}\n\nconst callApi = async (request, name, input) => {\n const response = await request(`/_ket/fn/${encodeURIComponent(name)}`, {\n method: 'POST',\n credentials: 'same-origin',\n headers: { 'content-type': 'application/json' },\n body: JSON.stringify(input),\n })\n const payload = await response.json()\n if (!response.ok || payload.ok === false) {\n const error = new Error(String(payload.message ?? `HTTP ${response.status}`))\n error.code = payload.code\n throw error\n }\n return payload.value\n}\n\nconst upload = async (request, file, messageId) => {\n const form = new FormData()\n form.set('file', file)\n form.set('resModel', 'mail.Message')\n form.set('resId', messageId)\n const response = await request('/files', { method: 'POST', credentials: 'same-origin', body: form })\n const payload = await response.json()\n if (!response.ok) throw new Error(String(payload.message ?? `HTTP ${response.status}`))\n return String(payload.id)\n}\n\nexport function createChatterView(runtime, props, seed = {}) {\n const { each, html, signal } = runtime\n const labels = labelsOf(props)\n const messageDateFormatter = new Intl.DateTimeFormat(localeOf(props))\n const status = signal(seed.status ?? 'loading')\n const busy = signal(false)\n const composerKind = signal(seed.composerKind ?? null)\n const error = signal(seed.error ?? '')\n const page = signal(\n seed.page ?? {\n threadId: null,\n displayName: '',\n total: 0,\n messages: [],\n followers: [],\n following: false,\n },\n )\n const bridge = apiFor(String(props.resModel))\n const requests = requestScope()\n let pollCount = 0\n let pollTimer = null\n\n const load = async ({ append = false, quiet = false } = {}) => {\n if (!bridge) {\n status.set('error')\n error.set(`Unsupported collaboration target: ${String(props.resModel)}`)\n return\n }\n if (!quiet) status.set('loading')\n try {\n const current = page()\n const result = await callApi(requests.fetch, `${bridge}.timeline`, {\n targetId: props.resId,\n limit: append ? 20 : Math.max(20, current.messages.length),\n offset: append ? current.messages.length : 0,\n })\n page.set(append ? { ...result, messages: [...current.messages, ...result.messages] } : result)\n error.set('')\n status.set('ready')\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n }\n }\n\n const post = async (event) => {\n event.preventDefault()\n if (!bridge || busy()) return\n const form = event.target\n const values = new FormData(form)\n const body = String(values.get('body') ?? '').trim()\n if (!body) return\n busy.set(true)\n error.set('')\n try {\n const id = crypto.randomUUID()\n const selected = values.get('attachment')\n const attachmentIds =\n selected instanceof File && selected.size > 0 ? [await upload(requests.fetch, selected, id)] : []\n await callApi(requests.fetch, `${bridge}.post`, {\n id,\n targetId: props.resId,\n kind: String(values.get('kind') ?? 'comment'),\n body,\n attachmentIds,\n })\n form.reset()\n await load()\n composerKind.set(null)\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n } finally {\n busy.set(false)\n }\n }\n\n const toggleFollow = async () => {\n if (!bridge || busy()) return\n busy.set(true)\n try {\n await callApi(requests.fetch, `${bridge}.${page().following ? 'unfollow' : 'follow'}`, {\n targetId: props.resId,\n })\n await load({ quiet: true })\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n } finally {\n busy.set(false)\n }\n }\n\n const schedulePoll = () => {\n if (requests.disposed() || pollCount >= 240) return\n pollCount++\n pollTimer = setTimeout(async () => {\n if (requests.disposed()) return\n if (document.visibilityState === 'visible' && !busy()) await load({ quiet: true })\n schedulePoll()\n }, 15_000)\n }\n\n if (typeof window !== 'undefined')\n queueMicrotask(async () => {\n if (requests.disposed()) return\n await load()\n schedulePoll()\n })\n\n const view = () => {\n const data = page()\n return html`<section data-ui=\"chatter\" data-state=${status()} aria-label=${labels.title}>\n <div data-ui=\"chatter-kinds\" role=\"toolbar\" aria-label=${labels.title}>\n <button data-ui=\"chatter-kind\" data-kind=\"comment\" data-active=${composerKind() === 'comment'} data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" aria-pressed=${composerKind() === 'comment'} on:click=${() => composerKind.set(composerKind() === 'comment' ? null : 'comment')} disabled=${busy()}>${labels.comment}</button>\n <button data-ui=\"chatter-kind\" data-kind=\"note\" data-active=${composerKind() === 'note'} data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" aria-pressed=${composerKind() === 'note'} on:click=${() => composerKind.set(composerKind() === 'note' ? null : 'note')} disabled=${busy()}>${labels.note}</button>\n </div>\n <header data-ui=\"chatter-head\">\n <div data-ui=\"chatter-heading\">\n <h2 data-ui=\"chatter-title\">${labels.title}</h2>\n <span data-ui=\"chatter-followers\">${data.followers.length} ${labels.followers}</span>\n </div>\n <button data-ui=\"chatter-follow\" data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${toggleFollow} disabled=${busy()}>\n ${data.following ? labels.unfollow : labels.follow}\n </button>\n </header>\n ${\n composerKind()\n ? html`<form data-ui=\"chatter-composer\" on:submit=${post}>\n <input type=\"hidden\" name=\"kind\" value=${composerKind()} autocomplete=\"off\">\n <textarea data-ui=\"chatter-body\" name=\"body\" placeholder=${labels.placeholder} required disabled=${busy()}></textarea>\n <div data-ui=\"chatter-compose-actions\">\n <label data-ui=\"chatter-attachment\">${labels.attachment}<input data-ui=\"form-control\" type=\"file\" name=\"attachment\" autocomplete=\"off\" disabled=${busy()}></label>\n <div>\n <button data-ui=\"chatter-compose-close\" data-control=\"action\" data-variant=\"tertiary\" data-size=\"compact\" type=\"button\" on:click=${() => composerKind.set(null)} disabled=${busy()}>${labels.close}</button>\n <button data-ui=\"chatter-send\" data-control=\"action\" data-variant=\"primary\" data-size=\"compact\" type=\"submit\" disabled=${busy()}>${busy() ? labels.sending : labels.send}</button>\n </div>\n </div>\n </form>`\n : ''\n }\n ${error() ? html`<div data-ui=\"chatter-error\" role=\"alert\">${error()} <button data-ui=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${() => load()}>${labels.retry}</button></div>` : ''}\n <div data-ui=\"chatter-timeline\" aria-live=\"polite\">\n ${status() === 'loading' ? html`<p data-ui=\"chatter-loading\">${labels.loading}</p>` : ''}\n ${status() === 'ready' && data.messages.length === 0 ? html`<p data-ui=\"chatter-empty\">${labels.empty}</p>` : ''}\n ${each(\n data.messages,\n (message) => message.id,\n (message) => html`<article data-ui=\"chatter-message\" data-kind=${message.kind}>\n <header data-ui=\"chatter-message-head\">\n <strong data-ui=\"chatter-author\">${message.authorName || labels.system}</strong>\n <time data-ui=\"chatter-time\" datetime=${message.createdAt}>${messageDateFormatter.format(new Date(message.createdAt))}</time>\n </header>\n <p data-ui=\"chatter-message-body\">${message.body}</p>\n ${\n message.deliveries?.length\n ? html`<ul data-ui=\"chatter-deliveries\">${each(\n message.deliveries,\n (delivery) => delivery.id,\n (delivery) => html`<li data-ui=\"chatter-delivery\" data-state=${delivery.state}>\n ${labels.email}: ${labels.deliveryStates[delivery.state] ?? delivery.state}\n ${delivery.state === 'failed' && delivery.lastError ? html`<span>${delivery.lastError}</span>` : ''}\n </li>`,\n )}</ul>`\n : ''\n }\n ${\n message.attachments?.length\n ? html`<ul data-ui=\"chatter-attachments\">${each(\n message.attachments,\n (attachment) => attachment.id,\n (attachment) => html`<li><a href=${attachment.href}>${attachment.name}</a></li>`,\n )}</ul>`\n : ''\n }\n </article>`,\n )}\n </div>\n ${\n data.messages.length < data.total\n ? html`<button data-ui=\"chatter-more\" data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${() => load({ append: true })} disabled=${busy()}>${labels.loadMore}</button>`\n : ''\n }\n </section>`\n }\n return {\n view,\n dispose: () => {\n if (pollTimer !== null) clearTimeout(pollTimer)\n requests.dispose()\n },\n }\n}\n\nexport function createInboxIndicatorView(runtime, props, initialCount = 0) {\n const { html, signal } = runtime\n const labels = labelsOf(props)\n const count = signal(initialCount)\n const requests = requestScope()\n const load = async () => {\n try {\n const result = await callApi(requests.fetch, 'mail.countUnread', {})\n count.set(Number(result.count ?? 0))\n } catch {\n if (requests.disposed()) return\n count.set(0)\n }\n }\n if (typeof window !== 'undefined') queueMicrotask(load)\n return {\n view: () => html`<a data-ui=\"mail-indicator\" href=\"/admin/inbox\" title=${labels.inbox} aria-label=${labels.inbox}>\n <svg data-ui=\"mail-indicator-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M21 15a4 4 0 0 1-4 4H8l-5 3v-3.8A4 4 0 0 1 1 15V7a4 4 0 0 1 4-4h12a4 4 0 0 1 4 4Z\" />\n </svg>\n ${count() > 0 ? html`<span data-ui=\"mail-indicator-count\">${count()}</span>` : ''}\n </a>`,\n dispose: requests.dispose,\n }\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import { each, html, signal } from '@ketvietlab/ketjs-view'\nimport { createChatterView, createInboxIndicatorView } from './mail-view.mjs'\n\nconst runtime = { each, html, signal }\n\n/** @param {Record<string, unknown>} props */\nexport const chatter = (props) => createChatterView(runtime, props)\n/** @param {Record<string, unknown>} props */\nexport const inboxIndicator = (props) => createInboxIndicatorView(runtime, props)\n", "// @ts-nocheck This dependency-free browser/SSR source is contract-tested through both runtimes.\nconst LABELS = {\n vi: {\n title: 'Th\u1EA3o lu\u1EADn',\n followers: 'ng\u01B0\u1EDDi theo d\u00F5i',\n follow: 'Theo d\u00F5i',\n unfollow: 'B\u1ECF theo d\u00F5i',\n comment: 'G\u1EEDi tin nh\u1EAFn',\n note: 'Ghi ch\u00FA n\u1ED9i b\u1ED9',\n placeholder: 'Vi\u1EBFt c\u1EADp nh\u1EADt cho b\u1EA3n ghi n\u00E0y\u2026',\n attachment: 'T\u1EC7p \u0111\u00EDnh k\u00E8m',\n send: 'G\u1EEDi',\n sending: '\u0110ang g\u1EEDi\u2026',\n close: '\u0110\u00F3ng',\n loading: '\u0110ang t\u1EA3i trao \u0111\u1ED5i\u2026',\n empty: 'Ch\u01B0a c\u00F3 trao \u0111\u1ED5i n\u00E0o.',\n loadMore: 'T\u1EA3i th\u00EAm',\n retry: 'Th\u1EED l\u1EA1i',\n system: 'KetSuite',\n inbox: 'H\u1ED9p th\u01B0 th\u00F4ng b\u00E1o',\n email: 'Email',\n deliveryStates: {\n queued: '\u0111ang ch\u1EDD',\n sending: '\u0111ang g\u1EEDi',\n retryable: 'ch\u1EDD th\u1EED l\u1EA1i',\n sent: '\u0111\u00E3 g\u1EEDi',\n failed: 'g\u1EEDi l\u1ED7i',\n cancelled: '\u0111\u00E3 h\u1EE7y',\n },\n },\n en: {\n title: 'Chatter',\n followers: 'followers',\n follow: 'Follow',\n unfollow: 'Unfollow',\n comment: 'Send message',\n note: 'Internal note',\n placeholder: 'Write an update for this record\u2026',\n attachment: 'Attachment',\n send: 'Send',\n sending: 'Sending\u2026',\n close: 'Close',\n loading: 'Loading conversation\u2026',\n empty: 'No messages yet.',\n loadMore: 'Load more',\n retry: 'Retry',\n system: 'KetSuite',\n inbox: 'Notification inbox',\n email: 'Email',\n deliveryStates: {\n queued: 'queued',\n sending: 'sending',\n retryable: 'retry pending',\n sent: 'sent',\n failed: 'failed',\n cancelled: 'cancelled',\n },\n },\n}\n\nconst labelsOf = (props) => LABELS[String(props.lang).toLowerCase().startsWith('en') ? 'en' : 'vi']\nconst localeOf = (props) => (String(props.lang).toLowerCase().startsWith('en') ? 'en-US' : 'vi-VN')\n\nconst apiFor = (resModel) => {\n if (resModel === 'partner.Partner') return 'partner_mail_backend'\n if (resModel === 'product.Template') return 'product_mail_backend'\n if (resModel === 'product.Product') return 'product_variant_mail_backend'\n if (resModel === 'stock.Picking') return 'stock_mail_backend'\n if (resModel === 'stock.Lot') return 'stock_lot_mail_backend'\n if (resModel === 'sale.Order') return 'sale_mail_backend'\n if (resModel === 'account.Move') return 'account_mail_backend'\n return null\n}\n\nconst errorText = (error) =>\n error && typeof error === 'object' && 'message' in error\n ? String(error.message)\n : 'The collaboration request failed'\n\nconst requestScope = () => {\n const pending = new Set()\n let disposed = false\n return {\n fetch: async (url, options = {}) => {\n if (disposed) throw new DOMException('Island disposed', 'AbortError')\n const controller = new AbortController()\n pending.add(controller)\n try {\n return await fetch(url, { ...options, signal: controller.signal })\n } finally {\n pending.delete(controller)\n }\n },\n disposed: () => disposed,\n dispose: () => {\n disposed = true\n for (const controller of pending) controller.abort()\n pending.clear()\n },\n }\n}\n\nconst callApi = async (request, name, input) => {\n const response = await request(`/_ket/fn/${encodeURIComponent(name)}`, {\n method: 'POST',\n credentials: 'same-origin',\n headers: { 'content-type': 'application/json' },\n body: JSON.stringify(input),\n })\n const payload = await response.json()\n if (!response.ok || payload.ok === false) {\n const error = new Error(String(payload.message ?? `HTTP ${response.status}`))\n error.code = payload.code\n throw error\n }\n return payload.value\n}\n\nconst upload = async (request, file, messageId) => {\n const form = new FormData()\n form.set('file', file)\n form.set('resModel', 'mail.Message')\n form.set('resId', messageId)\n const response = await request('/files', { method: 'POST', credentials: 'same-origin', body: form })\n const payload = await response.json()\n if (!response.ok) throw new Error(String(payload.message ?? `HTTP ${response.status}`))\n return String(payload.id)\n}\n\nexport function createChatterView(runtime, props, seed = {}) {\n const { each, html, signal } = runtime\n const labels = labelsOf(props)\n const messageDateFormatter = new Intl.DateTimeFormat(localeOf(props))\n const status = signal(seed.status ?? 'loading')\n const busy = signal(false)\n const composerKind = signal(seed.composerKind ?? null)\n const error = signal(seed.error ?? '')\n const page = signal(\n seed.page ?? {\n threadId: null,\n displayName: '',\n total: 0,\n messages: [],\n followers: [],\n following: false,\n },\n )\n const bridge = apiFor(String(props.resModel))\n const requests = requestScope()\n let pollCount = 0\n let pollTimer = null\n\n const load = async ({ append = false, quiet = false } = {}) => {\n if (!bridge) {\n status.set('error')\n error.set(`Unsupported collaboration target: ${String(props.resModel)}`)\n return\n }\n if (!quiet) status.set('loading')\n try {\n const current = page()\n const result = await callApi(requests.fetch, `${bridge}.timeline`, {\n targetId: props.resId,\n limit: append ? 20 : Math.max(20, current.messages.length),\n offset: append ? current.messages.length : 0,\n })\n page.set(append ? { ...result, messages: [...current.messages, ...result.messages] } : result)\n error.set('')\n status.set('ready')\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n }\n }\n\n const post = async (event) => {\n event.preventDefault()\n if (!bridge || busy()) return\n const form = event.target\n const values = new FormData(form)\n const body = String(values.get('body') ?? '').trim()\n if (!body) return\n busy.set(true)\n error.set('')\n try {\n const id = crypto.randomUUID()\n const selected = values.get('attachment')\n const attachmentIds =\n selected instanceof File && selected.size > 0 ? [await upload(requests.fetch, selected, id)] : []\n await callApi(requests.fetch, `${bridge}.post`, {\n id,\n targetId: props.resId,\n kind: String(values.get('kind') ?? 'comment'),\n body,\n attachmentIds,\n })\n form.reset()\n await load()\n composerKind.set(null)\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n } finally {\n busy.set(false)\n }\n }\n\n const toggleFollow = async () => {\n if (!bridge || busy()) return\n busy.set(true)\n try {\n await callApi(requests.fetch, `${bridge}.${page().following ? 'unfollow' : 'follow'}`, {\n targetId: props.resId,\n })\n await load({ quiet: true })\n } catch (cause) {\n if (requests.disposed()) return\n error.set(errorText(cause))\n status.set('error')\n } finally {\n busy.set(false)\n }\n }\n\n const schedulePoll = () => {\n if (requests.disposed() || pollCount >= 240) return\n pollCount++\n pollTimer = setTimeout(async () => {\n if (requests.disposed()) return\n if (document.visibilityState === 'visible' && !busy()) await load({ quiet: true })\n schedulePoll()\n }, 15_000)\n }\n\n const mount = () => {\n void (async () => {\n if (requests.disposed()) return\n await load()\n schedulePoll()\n })()\n }\n\n const view = () => {\n const data = page()\n return html`<section data-ui=\"chatter\" data-state=${status()} aria-label=${labels.title}>\n <div data-ui=\"chatter-kinds\" role=\"toolbar\" aria-label=${labels.title}>\n <button data-ui=\"chatter-kind\" data-kind=\"comment\" data-active=${composerKind() === 'comment'} data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" aria-pressed=${composerKind() === 'comment'} on:click=${() => composerKind.set(composerKind() === 'comment' ? null : 'comment')} disabled=${busy()}>${labels.comment}</button>\n <button data-ui=\"chatter-kind\" data-kind=\"note\" data-active=${composerKind() === 'note'} data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" aria-pressed=${composerKind() === 'note'} on:click=${() => composerKind.set(composerKind() === 'note' ? null : 'note')} disabled=${busy()}>${labels.note}</button>\n </div>\n <header data-ui=\"chatter-head\">\n <div data-ui=\"chatter-heading\">\n <h2 data-ui=\"chatter-title\">${labels.title}</h2>\n <span data-ui=\"chatter-followers\">${data.followers.length} ${labels.followers}</span>\n </div>\n <button data-ui=\"chatter-follow\" data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${toggleFollow} disabled=${busy()}>\n ${data.following ? labels.unfollow : labels.follow}\n </button>\n </header>\n ${\n composerKind()\n ? html`<form data-ui=\"chatter-composer\" on:submit=${post}>\n <input type=\"hidden\" name=\"kind\" value=${composerKind()} autocomplete=\"off\">\n <textarea data-ui=\"chatter-body\" name=\"body\" placeholder=${labels.placeholder} required disabled=${busy()}></textarea>\n <div data-ui=\"chatter-compose-actions\">\n <label data-ui=\"chatter-attachment\">${labels.attachment}<input data-ui=\"form-control\" type=\"file\" name=\"attachment\" autocomplete=\"off\" disabled=${busy()}></label>\n <div>\n <button data-ui=\"chatter-compose-close\" data-control=\"action\" data-variant=\"tertiary\" data-size=\"compact\" type=\"button\" on:click=${() => composerKind.set(null)} disabled=${busy()}>${labels.close}</button>\n <button data-ui=\"chatter-send\" data-control=\"action\" data-variant=\"primary\" data-size=\"compact\" type=\"submit\" disabled=${busy()}>${busy() ? labels.sending : labels.send}</button>\n </div>\n </div>\n </form>`\n : ''\n }\n ${error() ? html`<div data-ui=\"chatter-error\" role=\"alert\">${error()} <button data-ui=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${() => load()}>${labels.retry}</button></div>` : ''}\n <div data-ui=\"chatter-timeline\" aria-live=\"polite\">\n ${status() === 'loading' ? html`<p data-ui=\"chatter-loading\">${labels.loading}</p>` : ''}\n ${status() === 'ready' && data.messages.length === 0 ? html`<p data-ui=\"chatter-empty\">${labels.empty}</p>` : ''}\n ${each(\n data.messages,\n (message) => message.id,\n (message) => html`<article data-ui=\"chatter-message\" data-kind=${message.kind}>\n <header data-ui=\"chatter-message-head\">\n <strong data-ui=\"chatter-author\">${message.authorName || labels.system}</strong>\n <time data-ui=\"chatter-time\" datetime=${message.createdAt}>${messageDateFormatter.format(new Date(message.createdAt))}</time>\n </header>\n <p data-ui=\"chatter-message-body\">${message.body}</p>\n ${\n message.deliveries?.length\n ? html`<ul data-ui=\"chatter-deliveries\">${each(\n message.deliveries,\n (delivery) => delivery.id,\n (delivery) => html`<li data-ui=\"chatter-delivery\" data-state=${delivery.state}>\n ${labels.email}: ${labels.deliveryStates[delivery.state] ?? delivery.state}\n ${delivery.state === 'failed' && delivery.lastError ? html`<span>${delivery.lastError}</span>` : ''}\n </li>`,\n )}</ul>`\n : ''\n }\n ${\n message.attachments?.length\n ? html`<ul data-ui=\"chatter-attachments\">${each(\n message.attachments,\n (attachment) => attachment.id,\n (attachment) => html`<li><a href=${attachment.href}>${attachment.name}</a></li>`,\n )}</ul>`\n : ''\n }\n </article>`,\n )}\n </div>\n ${\n data.messages.length < data.total\n ? html`<button data-ui=\"chatter-more\" data-control=\"action\" data-variant=\"secondary\" data-size=\"compact\" type=\"button\" on:click=${() => load({ append: true })} disabled=${busy()}>${labels.loadMore}</button>`\n : ''\n }\n </section>`\n }\n return {\n view,\n mount,\n dispose: () => {\n if (pollTimer !== null) clearTimeout(pollTimer)\n requests.dispose()\n },\n }\n}\n\nexport function createInboxIndicatorView(runtime, props, initialCount = 0) {\n const { html, signal } = runtime\n const labels = labelsOf(props)\n const count = signal(initialCount)\n const requests = requestScope()\n const load = async () => {\n try {\n const result = await callApi(requests.fetch, 'mail.countUnread', {})\n count.set(Number(result.count ?? 0))\n } catch {\n if (requests.disposed()) return\n count.set(0)\n }\n }\n return {\n view: () => html`<a data-ui=\"mail-indicator\" href=\"/admin/inbox\" title=${labels.inbox} aria-label=${labels.inbox}>\n <svg data-ui=\"mail-indicator-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M21 15a4 4 0 0 1-4 4H8l-5 3v-3.8A4 4 0 0 1 1 15V7a4 4 0 0 1 4-4h12a4 4 0 0 1 4 4Z\" />\n </svg>\n ${count() > 0 ? html`<span data-ui=\"mail-indicator-count\">${count()}</span>` : ''}\n </a>`,\n mount: () => void load(),\n dispose: requests.dispose,\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["each", "html", "signal", "LABELS", "labelsOf", "props", "localeOf", "apiFor", "resModel", "errorText", "error", "requestScope", "pending", "disposed", "url", "options", "controller", "callApi", "request", "name", "input", "response", "payload", "upload", "file", "messageId", "form", "createChatterView", "runtime", "seed", "each", "html", "signal", "labels", "messageDateFormatter", "status", "busy", "composerKind", "page", "bridge", "requests", "pollCount", "pollTimer", "load", "append", "quiet", "current", "result", "cause", "post", "event", "values", "body", "id", "selected", "attachmentIds", "toggleFollow", "schedulePoll", "data", "message", "delivery", "attachment", "createInboxIndicatorView", "initialCount", "count", "runtime", "each", "html", "signal", "chatter", "props", "createChatterView", "inboxIndicator", "createInboxIndicatorView"]
|
|
7
7
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/** @param {Record<string, unknown>} props */
|
|
2
2
|
export declare const chatter: (props: Record<string, unknown>) => {
|
|
3
3
|
view: () => any;
|
|
4
|
+
mount: () => void;
|
|
4
5
|
dispose: () => void;
|
|
5
6
|
};
|
|
6
7
|
/** @param {Record<string, unknown>} props */
|
|
7
8
|
export declare const inboxIndicator: (props: Record<string, unknown>) => {
|
|
8
9
|
view: () => any;
|
|
10
|
+
mount: () => undefined;
|
|
9
11
|
dispose: () => void;
|
|
10
12
|
};
|
|
11
13
|
//# sourceMappingURL=mail-entry.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-entry.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-entry.mjs"],"names":[],"mappings":"AAKA,6CAA6C;AAC7C,eAAO,MAAM,OAAO,UADR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"mail-entry.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-entry.mjs"],"names":[],"mappings":"AAKA,6CAA6C;AAC7C,eAAO,MAAM,OAAO,UADR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CACgC,CAAA;AACnE,6CAA6C;AAC7C,eAAO,MAAM,cAAc,UADf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAC8C,CAAA"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export declare function createChatterView(runtime: any, props: any, seed?: {}): {
|
|
2
2
|
view: () => any;
|
|
3
|
+
mount: () => void;
|
|
3
4
|
dispose: () => void;
|
|
4
5
|
};
|
|
5
6
|
export declare function createInboxIndicatorView(runtime: any, props: any, initialCount?: number): {
|
|
6
7
|
view: () => any;
|
|
8
|
+
mount: () => undefined;
|
|
7
9
|
dispose: () => void;
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=mail-view.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-view.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-view.mjs"],"names":[],"mappings":"AAiIA,wBAAgB,iBAAiB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAK
|
|
1
|
+
{"version":3,"file":"mail-view.d.mts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/mail-view.mjs"],"names":[],"mappings":"AAiIA,wBAAgB,iBAAiB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAK;;;;EAsM1D;AAED,wBAAgB,wBAAwB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,YAAY,SAAI;IAerE,IAAI;IAMJ,KAAK;IACL,OAAO;EAEV"}
|
|
@@ -234,12 +234,13 @@ export function createChatterView(runtime, props, seed = {}) {
|
|
|
234
234
|
}, 15_000)
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
|
|
238
|
-
|
|
237
|
+
const mount = () => {
|
|
238
|
+
void (async () => {
|
|
239
239
|
if (requests.disposed()) return
|
|
240
240
|
await load()
|
|
241
241
|
schedulePoll()
|
|
242
|
-
})
|
|
242
|
+
})()
|
|
243
|
+
}
|
|
243
244
|
|
|
244
245
|
const view = () => {
|
|
245
246
|
const data = page()
|
|
@@ -318,6 +319,7 @@ export function createChatterView(runtime, props, seed = {}) {
|
|
|
318
319
|
}
|
|
319
320
|
return {
|
|
320
321
|
view,
|
|
322
|
+
mount,
|
|
321
323
|
dispose: () => {
|
|
322
324
|
if (pollTimer !== null) clearTimeout(pollTimer)
|
|
323
325
|
requests.dispose()
|
|
@@ -339,7 +341,6 @@ export function createInboxIndicatorView(runtime, props, initialCount = 0) {
|
|
|
339
341
|
count.set(0)
|
|
340
342
|
}
|
|
341
343
|
}
|
|
342
|
-
if (typeof window !== 'undefined') queueMicrotask(load)
|
|
343
344
|
return {
|
|
344
345
|
view: () => html`<a data-ui="mail-indicator" href="/admin/inbox" title=${labels.inbox} aria-label=${labels.inbox}>
|
|
345
346
|
<svg data-ui="mail-indicator-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
|
|
@@ -347,6 +348,7 @@ export function createInboxIndicatorView(runtime, props, initialCount = 0) {
|
|
|
347
348
|
</svg>
|
|
348
349
|
${count() > 0 ? html`<span data-ui="mail-indicator-count">${count()}</span>` : ''}
|
|
349
350
|
</a>`,
|
|
351
|
+
mount: () => void load(),
|
|
350
352
|
dispose: requests.dispose,
|
|
351
353
|
}
|
|
352
354
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-view.mjs","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/ui/client/mail-view.mjs"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mail-view.mjs","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/ui/client/mail-view.mjs"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const tableSelection: (_props: IslandProps) => IslandController;
|
|
1
|
+
import type { BrowserBehavior } from '@ketvietlab/ketjs';
|
|
2
|
+
export declare const backendShell: BrowserBehavior;
|
|
4
3
|
//# sourceMappingURL=table-selection-view.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-selection-view.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/table-selection-view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"table-selection-view.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/table-selection-view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,mBAAmB,CAAA;AA+d3E,eAAO,MAAM,YAAY,EAAE,eAa1B,CAAA"}
|