@notionhq/custom-blocks-host 0.2.12 → 0.2.13

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/browser.js CHANGED
@@ -1 +1 @@
1
- function Pr(e){let{manifestProperties:o,propertySchemasById:n}=e,s=[];for(let[c,l]of Object.entries(o)){let f=jr({propertyKey:c,manifestProperty:l,propertySchemasById:n});f!==void 0&&s.push([c,f])}return Object.fromEntries(s)}function jr(e){let{propertyKey:o,manifestProperty:n,propertySchemasById:s}=e,c=Ze(n.name),l=Object.entries(s).filter(([f,y])=>y.type===n.type&&(f===o||Ze(y.name)===c));return l.length===1?l[0][0]:void 0}function Ze(e){return e.trim().toLowerCase()}var Be,Br={lang:void 0,message:void 0,abortEarly:void 0,abortPipeEarly:void 0};function Te(e){return!e&&!Be?Br:{lang:e?.lang??Be?.lang,message:e?.message,abortEarly:e?.abortEarly??Be?.abortEarly,abortPipeEarly:e?.abortPipeEarly??Be?.abortPipeEarly}}var Mr;function Rr(e){return Mr?.get(e)}var Dr;function wr(e){return Dr?.get(e)}var Ar;function Tr(e,o){return Ar?.get(e)?.get(o)}function ge(e){let o=typeof e;return o==="string"?`"${e}"`:o==="number"||o==="bigint"||o==="boolean"?`${e}`:o==="object"||o==="function"?(e&&Object.getPrototypeOf(e)?.constructor?.name)??"null":o}function M(e,o,n,s,c){let l=c&&"input"in c?c.input:n.value,f=c?.expected??e.expects??null,y=c?.received??ge(l),m={kind:e.kind,type:e.type,input:l,expected:f,received:y,message:`Invalid ${o}: ${f?`Expected ${f} but r`:"R"}eceived ${y}`,requirement:e.requirement,path:c?.path,issues:c?.issues,lang:s.lang,abortEarly:s.abortEarly,abortPipeEarly:s.abortPipeEarly},S=e.kind==="schema",I=c?.message??e.message??Tr(e.reference,m.lang)??(S?wr(m.lang):null)??s.message??Rr(m.lang);I!==void 0&&(m.message=typeof I=="function"?I(m):I),S&&(n.typed=!1),n.issues?n.issues.push(m):n.issues=[m]}var Ye=new WeakMap;function F(e){let o=Ye.get(e);return o||(o={version:1,vendor:"valibot",validate(n){return e["~run"]({value:n},Te())}},Ye.set(e,o)),o}function qr(e,o){return Object.prototype.hasOwnProperty.call(e,o)&&o!=="__proto__"&&o!=="prototype"&&o!=="constructor"}function qe(e,o){let n=[...new Set(e)];return n.length>1?`(${n.join(` ${o} `)})`:n[0]??"never"}var Nr=class extends Error{constructor(e){super(e[0].message),this.name="ValiError",this.issues=e}};function te(e){return{kind:"transformation",type:"brand",reference:te,async:!1,name:e,"~run"(o){return o}}}function be(e){return{kind:"validation",type:"finite",reference:be,async:!1,expects:null,requirement:Number.isFinite,message:e,"~run"(o,n){return o.typed&&!this.requirement(o.value)&&M(this,"finite",o,n),o}}}function Me(e,o){return{kind:"validation",type:"max_length",reference:Me,async:!1,expects:`<=${e}`,requirement:e,message:o,"~run"(n,s){return n.typed&&n.value.length>this.requirement&&M(this,"length",n,s,{received:`${n.value.length}`}),n}}}function ke(e,o){return{kind:"validation",type:"min_length",reference:ke,async:!1,expects:`>=${e}`,requirement:e,message:o,"~run"(n,s){return n.typed&&n.value.length<this.requirement&&M(this,"length",n,s,{received:`${n.value.length}`}),n}}}function Se(e,o){return{kind:"validation",type:"min_value",reference:Se,async:!1,expects:`>=${e instanceof Date?e.toJSON():ge(e)}`,requirement:e,message:o,"~run"(n,s){return n.typed&&!(n.value>=this.requirement)&&M(this,"value",n,s,{received:n.value instanceof Date?n.value.toJSON():ge(n.value)}),n}}}var Fr={abortEarly:!0};function tt(e,o,n){return typeof e.fallback=="function"?e.fallback(o,n):e.fallback}function Re(e,o,n){return typeof e.default=="function"?e.default(o,n):e.default}function O(e,o){return{kind:"schema",type:"array",reference:O,expects:"Array",async:!1,item:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(Array.isArray(c)){n.typed=!0,n.value=[];for(let l=0;l<c.length;l++){let f=c[l],y=this.item["~run"]({value:f},s);if(y.issues){let m={type:"array",origin:"value",input:c,key:l,value:f};for(let S of y.issues)S.path?S.path.unshift(m):S.path=[m],n.issues?.push(S);if(n.issues||(n.issues=y.issues),s.abortEarly){n.typed=!1;break}}y.typed||(n.typed=!1),n.value.push(y.value)}}else M(this,"type",n,s);return n}}}function b(e){return{kind:"schema",type:"boolean",reference:b,expects:"boolean",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="boolean"?o.typed=!0:M(this,"type",o,n),o}}}function i(e,o){return{kind:"schema",type:"literal",reference:i,expects:ge(e),async:!1,literal:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===this.literal?n.typed=!0:M(this,"type",n,s),n}}}function Ne(e){return{kind:"schema",type:"nan",reference:Ne,expects:"NaN",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return Number.isNaN(o.value)?o.typed=!0:M(this,"type",o,n),o}}}function K(e,o){return{kind:"schema",type:"nullable",reference:K,expects:`(${e.expects} | null)`,async:!1,wrapped:e,default:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===null&&(this.default!==void 0&&(n.value=Re(this,n,s)),n.value===null)?(n.typed=!0,n):this.wrapped["~run"](n,s)}}}function E(e){return{kind:"schema",type:"number",reference:E,expects:"number",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="number"&&!isNaN(o.value)?o.typed=!0:M(this,"type",o,n),o}}}function r(e,o){return{kind:"schema",type:"object",reference:r,expects:"Object",async:!1,entries:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(c&&typeof c=="object"){n.typed=!0,n.value={};for(let l in this.entries){let f=this.entries[l];if(l in c||(f.type==="exact_optional"||f.type==="optional"||f.type==="nullish")&&f.default!==void 0){let y=l in c?c[l]:Re(f),m=f["~run"]({value:y},s);if(m.issues){let S={type:"object",origin:"value",input:c,key:l,value:y};for(let I of m.issues)I.path?I.path.unshift(S):I.path=[S],n.issues?.push(I);if(n.issues||(n.issues=m.issues),s.abortEarly){n.typed=!1;break}}m.typed||(n.typed=!1),n.value[l]=m.value}else if(f.fallback!==void 0)n.value[l]=tt(f);else if(f.type!=="exact_optional"&&f.type!=="optional"&&f.type!=="nullish"&&(M(this,"key",n,s,{input:void 0,expected:`"${l}"`,path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]}),s.abortEarly))break}}else M(this,"type",n,s);return n}}}function a(e,o){return{kind:"schema",type:"optional",reference:a,expects:`(${e.expects} | undefined)`,async:!1,wrapped:e,default:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===void 0&&(this.default!==void 0&&(n.value=Re(this,n,s)),n.value===void 0)?(n.typed=!0,n):this.wrapped["~run"](n,s)}}}function w(e,o){return{kind:"schema",type:"picklist",reference:w,expects:qe(e.map(ge),"|"),async:!1,options:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){return this.options.includes(n.value)?n.typed=!0:M(this,"type",n,s),n}}}function U(e,o,n){return{kind:"schema",type:"record",reference:U,expects:"Object",async:!1,key:e,value:o,message:n,get"~standard"(){return F(this)},"~run"(s,c){let l=s.value;if(l&&typeof l=="object"){s.typed=!0,s.value={};for(let f in l)if(qr(l,f)){let y=l[f],m=this.key["~run"]({value:f},c);if(m.issues){let I={type:"object",origin:"key",input:l,key:f,value:y};for(let j of m.issues)j.path=[I],s.issues?.push(j);if(s.issues||(s.issues=m.issues),c.abortEarly){s.typed=!1;break}}let S=this.value["~run"]({value:y},c);if(S.issues){let I={type:"object",origin:"value",input:l,key:f,value:y};for(let j of S.issues)j.path?j.path.unshift(I):j.path=[I],s.issues?.push(j);if(s.issues||(s.issues=S.issues),c.abortEarly){s.typed=!1;break}}(!m.typed||!S.typed)&&(s.typed=!1),m.typed&&(s.value[m.value]=S.value)}}else M(this,"type",s,c);return s}}}function p(e,o){return{kind:"schema",type:"strict_object",reference:p,expects:"Object",async:!1,entries:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(c&&typeof c=="object"){n.typed=!0,n.value={};for(let l in this.entries){let f=this.entries[l];if(l in c||(f.type==="exact_optional"||f.type==="optional"||f.type==="nullish")&&f.default!==void 0){let y=l in c?c[l]:Re(f),m=f["~run"]({value:y},s);if(m.issues){let S={type:"object",origin:"value",input:c,key:l,value:y};for(let I of m.issues)I.path?I.path.unshift(S):I.path=[S],n.issues?.push(I);if(n.issues||(n.issues=m.issues),s.abortEarly){n.typed=!1;break}}m.typed||(n.typed=!1),n.value[l]=m.value}else if(f.fallback!==void 0)n.value[l]=tt(f);else if(f.type!=="exact_optional"&&f.type!=="optional"&&f.type!=="nullish"&&(M(this,"key",n,s,{input:void 0,expected:`"${l}"`,path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]}),s.abortEarly))break}if(!n.issues||!s.abortEarly){for(let l in c)if(!(l in this.entries)){M(this,"key",n,s,{input:l,expected:"never",path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]});break}}}else M(this,"type",n,s);return n}}}function t(e){return{kind:"schema",type:"string",reference:t,expects:"string",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="string"?o.typed=!0:M(this,"type",o,n),o}}}function et(e){let o;if(e)for(let n of e)if(o)for(let s of n.issues)o.push(s);else o=n.issues;return o}function x(e,o){return{kind:"schema",type:"union",reference:x,expects:qe(e.map(n=>n.expects),"|"),async:!1,options:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c,l,f;for(let y of this.options){let m=y["~run"]({value:n.value},s);if(m.typed)if(m.issues)l?l.push(m):l=[m];else{c=m;break}else f?f.push(m):f=[m]}if(c)return c;if(l){if(l.length===1)return l[0];M(this,"type",n,s,{issues:et(l)}),n.typed=!0}else{if(f?.length===1)return f[0];M(this,"type",n,s,{issues:et(f)})}return n}}}function Ie(){return{kind:"schema",type:"unknown",reference:Ie,expects:"unknown",async:!1,get"~standard"(){return F(this)},"~run"(e){return e.typed=!0,e}}}function h(e,o,n){return{kind:"schema",type:"variant",reference:h,expects:"Object",async:!1,key:e,options:o,message:n,get"~standard"(){return F(this)},"~run"(s,c){let l=s.value;if(l&&typeof l=="object"){let f,y=0,m=this.key,S=[],I=(j,k)=>{for(let G of j.options){if(G.type==="variant")I(G,new Set(k).add(G.key));else{let W=!0,T=0;for(let B of k){let q=G.entries[B];if(B in l?q["~run"]({typed:!1,value:l[B]},Fr).issues:q.type!=="exact_optional"&&q.type!=="optional"&&q.type!=="nullish"){W=!1,m!==B&&(y<T||y===T&&B in l&&!(m in l))&&(y=T,m=B,S=[]),m===B&&S.push(G.entries[B].expects);break}T++}if(W){let B=G["~run"]({value:l},c);(!f||!f.typed&&B.typed)&&(f=B)}}if(f&&!f.issues)break}};if(I(this,new Set([this.key])),f)return f;M(this,"type",s,c,{input:l[m],expected:qe(S,"|"),path:[{type:"object",origin:"value",input:l,key:m,value:l[m]}]})}else M(this,"type",s,c);return s}}}function rt(e,o){let n={...e.entries};for(let s of o)delete n[s];return{...e,entries:n,get"~standard"(){return F(this)}}}function fe(e,o,n){let s=e["~run"]({value:o},Te(n));if(s.issues)throw new Nr(s.issues);return s.value}function z(...e){return{...e[0],pipe:e,get"~standard"(){return F(this)},"~run"(o,n){for(let s of e)if(s.kind!=="metadata"){if(o.issues&&(s.kind==="schema"||s.kind==="transformation")){o.typed=!1;break}(!o.issues||!n.abortEarly&&!n.abortPipeEarly)&&(o=s["~run"](o,n))}return o}}}function xe(e,o,n){let s=e["~run"]({value:o},Te(n));return{typed:s.typed,success:!s.issues,output:s.value,issues:s.issues}}var re=z(t(),te("NotionBlockId")),Z=z(t(),te("NotionDataSourceId")),H=z(t(),te("NotionPageId")),nt=z(t(),te("NotionAgentId")),ot=z(t(),te("NotionSpaceId"));var it=w(["default","gray","brown","orange","yellow","green","blue","purple","pink","red","gray_background","brown_background","orange_background","yellow_background","green_background","blue_background","purple_background","pink_background","red_background","default_background"]),Fe=r({id:t(),name:t(),color:a(it),description:a(t())}),Ur=r({id:t(),name:t(),color:a(it),option_ids:O(t())}),zr=r({synced_property_id:t(),synced_property_name:t()}),P=r({name:t(),description:a(t())}),Hr=["title","rich_text","number","checkbox","url","email","phone_number","select","multi_select","status","date","people","files","unique_id","relation","place","formula","rollup","button","verification","last_visited_time","location","created_time","last_edited_time","created_by","last_edited_by"],st=w(Hr),ut=["title","rich_text","number","checkbox","url","email","phone_number","date","created_time","last_edited_time"],Ue=h("type",[r({...P.entries,type:i("title")}),r({...P.entries,type:i("rich_text")}),r({...P.entries,type:i("number")}),r({...P.entries,type:i("checkbox")}),r({...P.entries,type:i("url")}),r({...P.entries,type:i("email")}),r({...P.entries,type:i("phone_number")}),r({...P.entries,type:i("select"),options:O(Fe)}),r({...P.entries,type:i("multi_select"),options:O(Fe)}),r({...P.entries,type:i("status"),options:O(Fe),groups:O(Ur)}),r({...P.entries,type:i("date")}),r({...P.entries,type:i("people")}),r({...P.entries,type:i("files")}),r({...P.entries,type:i("unique_id")}),r({...P.entries,type:i("relation"),data_source_id:a(t()),dual_property:a(zr)}),r({...P.entries,type:i("place")}),r({...P.entries,type:i("formula")}),r({...P.entries,type:i("rollup")}),r({...P.entries,type:i("button")}),r({...P.entries,type:i("verification")}),r({...P.entries,type:i("last_visited_time")}),r({...P.entries,type:i("location")}),r({...P.entries,type:i("created_time")}),r({...P.entries,type:i("last_edited_time")}),r({...P.entries,type:i("created_by")}),r({...P.entries,type:i("last_edited_by")})]);var at={created_time:{type:"created_time",name:"Created time"},last_edited_time:{type:"last_edited_time",name:"Last edited time"},created_by:{type:"created_by",name:"Created by"},last_edited_by:{type:"last_edited_by",name:"Last edited by"}};var ct=r({id:Z,table:t(),spaceId:a(ot)}),lt=r({id:a(Z),propertiesById:U(t(),Ue)}),io=r({key:t(),collectionPointer:a(ct),collectionSchema:a(lt),propertyIdsByKey:U(t(),a(t())),propertySchemasById:U(t(),Ue)}),Gr=r({collectionPointer:a(ct),collectionSchema:a(lt),propertyIdsByKey:a(U(t(),a(t())))}),le=U(t(),Gr);var Lr=h("type",[r({type:i("emoji"),emoji:t()}),r({type:i("external"),url:t()})]),Vr=r({name:t(),description:a(t()),type:st}),Qr=r({name:t(),description:a(t()),icon:a(Lr),properties:a(U(t(),Vr),{})}),pe=r({version:i(1),dataSources:U(t(),Qr)});var me=w(["standard","high"]),pt="standard";var ft=r({type:i("contrastModeChanged"),contrastMode:me});var ne=h("type",[r({type:i("page_id"),page_id:H}),r({type:i("data_source_id"),data_source_id:Z}),r({type:i("workspace"),workspace:i(!0)}),r({type:i("block_id"),block_id:re}),r({type:i("agent_id"),agent_id:nt}),r({type:i("unavailable")})]);var ye=h("type",[r({type:i("unavailable")}),r({type:i("page"),id:H,parent:ne})]),$r=r({type:i("emoji"),emoji:t()}),Xr=r({type:i("custom_emoji"),custom_emoji:r({id:t(),name:a(t()),url:a(t())})}),yt=r({type:i("external"),external:r({url:t()})}),vt=r({type:i("file"),file:r({url:t(),expiry_time:a(t())})}),He=h("type",[$r,Xr,yt,vt]),Ge=h("type",[yt,vt]),X=K(t()),mt=U(t(),Ie()),ze=x([r({id:t(),name:a(t()),color:a(t()),description:a(X)}),r({name:t(),id:a(t()),color:a(t()),description:a(X)})]),Wr=r({start:t(),end:a(X),time_zone:a(X)}),Jr=x([r({object:a(i("user")),id:t()}),r({object:i("group"),id:t(),name:a(X)})]),Kr=r({id:t()}),Zr=x([r({type:i("external"),name:t(),external:r({url:t()})}),r({type:i("file"),name:t(),file:r({url:t(),expiry_time:a(t())})})]),Yr=r({lat:E(),lon:E(),name:a(X),address:a(X),aws_place_id:a(X),google_place_id:a(X)}),L={id:t()},en=h("type",[r({...L,type:i("title"),title:O(mt)}),r({...L,type:i("rich_text"),rich_text:O(mt)}),r({...L,type:i("number"),number:K(E())}),r({...L,type:i("url"),url:X}),r({...L,type:i("email"),email:X}),r({...L,type:i("phone_number"),phone_number:X}),r({...L,type:i("checkbox"),checkbox:b()}),r({...L,type:i("select"),select:K(ze)}),r({...L,type:i("status"),status:K(ze)}),r({...L,type:i("multi_select"),multi_select:O(ze)}),r({...L,type:i("date"),date:K(Wr)}),r({...L,type:i("people"),people:O(Jr)}),r({...L,type:i("relation"),has_more:a(b()),relation:O(Kr)}),r({...L,type:i("files"),files:O(Zr)}),r({...L,type:i("place"),place:K(Yr)})]),_e=U(t(),en),ve=r({object:i("page"),id:H,parent:ne,properties:_e,created_time:a(t()),last_edited_time:a(t()),icon:a(He),cover:a(Ge),url:a(t()),public_url:a(t()),is_archived:b(),in_trash:b()});var tn=t(),rn=r({code:tn,message:t(),isRetryable:b()}),dt=h("status",[r({type:i("createPageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("createPageResult"),requestId:t(),status:i("error"),error:rn})]);var Le=z(t(),te("NotionUserId")),oe=r({object:i("user"),id:Le,name:a(t()),avatar_url:K(t()),type:i("person"),person:r({email:t()})}),ht=r({object:i("list"),results:O(oe),next_cursor:K(t()),has_more:b(),type:i("user"),user:U(t(),Ie())});var gt=r({type:i("currentUserChanged"),currentUser:oe});var bt=r({type:i("dataSourcesChanged"),dataSources:r({bindings:le})});var nn=t(),on=r({code:nn,message:t(),isRetryable:b()}),kt=r({type:i("getPage"),requestId:t(),pageId:H}),St=h("status",[r({type:i("getPageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("getPageResult"),requestId:t(),status:i("error"),error:on})]);var sn=t(),un=r({code:sn,message:t(),isRetryable:b()}),It=r({type:i("getUser"),requestId:t(),userId:Le}),xt=h("status",[r({type:i("getUserResult"),requestId:t(),status:i("success"),user:oe}),r({type:i("getUserResult"),requestId:t(),status:i("error"),error:un})]);var de=w(["light","dark"]);var an=t(),cn=r({code:an,message:t(),isRetryable:b()});var De=h("status",[r({type:i("init"),initializationId:t(),status:i("success"),theme:de,contrastMode:me,blockId:re,parent:ne,page:ye,manifest:pe,dataSources:r({bindings:le}),currentUser:oe}),r({type:i("init"),initializationId:t(),status:i("error"),error:cn})]);var _t=r({type:i("invalidSandboxMessage"),reason:t()});var ln=t(),pn=r({code:ln,message:t(),isRetryable:b()}),Ct=r({type:i("listUsers"),requestId:t(),startCursor:a(t()),pageSize:a(E())}),Et=h("status",[r({type:i("listUsersResult"),requestId:t(),status:i("success"),list:ht}),r({type:i("listUsersResult"),requestId:t(),status:i("error"),error:pn})]);var fn=w(["side_peek","center_peek"]),mn=t(),yn=r({code:mn,message:t(),isRetryable:b()}),Ot=r({type:i("openPage"),requestId:t(),pageId:H,mode:fn}),Pt=h("status",[r({type:i("openPageResult"),requestId:t(),status:i("success"),pageId:H}),r({type:i("openPageResult"),requestId:t(),status:i("error"),error:yn})]);var jt=r({type:i("pageChanged"),page:ye});var Bt=r({type:i("parentChanged"),parent:ne});var Mt=r({unit:w(["year","month","week","day"]),value:E(),time:t(),defaultTimeZone:a(t())}),vn=r({unit:w(["hour","minute"]),value:E()}),Rt=r({unit:i("none")}),dn=x([Mt,vn]),Dt=a(x([Mt,Rt])),wt=a(x([dn,Rt])),hn=r({type:i("date"),start_date:t(),reminder:Dt}),gn=r({type:i("daterange"),start_date:t(),end_date:t(),reminder:Dt}),bn=r({type:i("datetime"),start_date:t(),start_time:t(),time_zone:a(t()),reminder:wt}),kn=r({type:i("datetimerange"),start_date:t(),start_time:t(),end_date:t(),end_time:t(),time_zone:a(t()),reminder:wt}),At=h("type",[hn,gn,bn,kn]);var Tt=r({id:t(),table:t()});var qt=x([t(),E(),b(),At,O(t()),O(Tt)]);var Nt=r({id:H,is_archived:b(),in_trash:b(),propertiesById:U(t(),a(qt))});var Sn=t(),In=r({code:Sn,message:t(),isRetryable:b()}),Ft=h("status",[r({type:i("queryDataSourceResult"),subscriptionId:t(),status:i("success"),items:O(Nt),hasMore:b()}),r({type:i("queryDataSourceResult"),subscriptionId:t(),status:i("error"),error:In})]);var Ut=r({type:i("themeChanged"),theme:de});var xn=t(),_n=r({code:xn,message:t(),isRetryable:b()}),zt=h("status",[r({type:i("updatePageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("updatePageResult"),requestId:t(),status:i("error"),error:_n})]);var Ht=h("type",[De,Ut,ft,Bt,jt,gt,bt,Ft,dt,St,xt,Et,Pt,zt,_t]);function Gt(){return{code:"no_connect",message:"Sandbox did not send a connect message.",isRetryable:!0}}function Lt(){return{code:"invalid_connect_payload",message:"Sandbox sent an invalid connect message.",isRetryable:!1}}function Ve(e){let{currentBridgeProtocolVersion:o}=e;return{code:"invalid_protocol_version",message:`Sandbox reported an invalid bridge protocol version ${o?`: ${o}`:"."}`,isRetryable:!1}}function Qe(e){let{currentBridgeProtocolVersion:o,minBridgeProtocolVersion:n}=e;return{code:"unsupported_protocol_version",message:`Sandbox bridge protocol version ${o} is not supported. Minimum supported version is ${n}.`,isRetryable:!1}}function $e(){return{code:"context_unavailable",message:"Host page context is unavailable.",isRetryable:!0}}function Vt(){return{code:"initial_state_timeout",message:"Host did not prepare initial state before the timeout.",isRetryable:!0}}function Qt(){return{code:"missing_data_source_binding",message:"A required data source is not mapped.",isRetryable:!1}}function $t(){return{code:"missing_property_binding",message:"A required data source property is not mapped.",isRetryable:!1}}function Xt(){return{code:"invalid_property_binding",message:"A mapped data source property is missing or incompatible.",isRetryable:!1}}function Wt(){return{code:"no_init_result",message:"Sandbox did not acknowledge initialization.",isRetryable:!0}}function Jt(){return{code:"invalid_init_result_payload",message:"Sandbox sent an invalid initialization result.",isRetryable:!1}}function Kt(){return{code:"unknown_error",message:"Unexpected error while initializing custom block.",isRetryable:!1}}function ie(e){throw new Error(`[custom-blocks-host] Unexpected value encountered: ${JSON.stringify(e)}`)}function Xe(e){return Number.isFinite(e)&&Number.isInteger(e)&&e>=1}var Cn=5e3,En=5e3,On=5e3;function Zt(e){let{prepareInit:o,sendInitMessage:n,warn:s,flushPendingHostStateChanges:c,minBridgeProtocolVersion:l,noConnectTimeoutMs:f=Cn,initialStateTimeoutMs:y=En,noInitResultTimeoutMs:m=On,stopHostWithFailure:S,onInitResult:I,onConnectionFailure:j}=e,k="waitingForConnect",G,W,T,B,q=!1,se=!1;function $(){G!==void 0&&(window.clearTimeout(G),G=void 0)}function R(){W!==void 0&&(window.clearTimeout(W),W=void 0)}function N(){T!==void 0&&(window.clearTimeout(T),T=void 0)}function A(g){let{initializationId:v,error:V}=g;switch(k){case"waitingForConnect":case"preparingInit":break;case"waitingForInitResult":case"initialized":case"error":case"stopped":return;default:return ie(k)}k="error",B=v,$(),R(),n({type:"init",initializationId:v,status:"error",error:V}),j?.(V)}async function J(g){if(k==="waitingForConnect"){k="preparingInit",B=g.initializationId,$(),W=window.setTimeout(()=>{if(k!=="preparingInit")return;let v=Vt();s({...v,initializationId:g.initializationId}),A({initializationId:g.initializationId,error:v})},y);try{let v=await o(g);if(k!=="preparingInit")return;if(R(),v.status==="error"){A({initializationId:g.initializationId,error:v.error});return}k="waitingForInitResult";let V={type:"init",initializationId:g.initializationId,status:"success",theme:v.initialState.theme,contrastMode:v.initialState.contrastMode??pt,blockId:v.initialState.blockId,parent:v.initialState.parent,page:v.initialState.page,currentUser:v.initialState.currentUser,manifest:v.initialState.manifest,dataSources:v.initialState.dataSources};n(V),T=window.setTimeout(()=>{if(k!=="waitingForInitResult")return;k="error";let ee=Wt();j?.(ee),s({...ee,initializationId:g.initializationId})},m)}catch(v){if(k!=="preparingInit")return;s({message:"Failed to prepare custom block initialization",error:v}),A({initializationId:g.initializationId,error:Kt()})}}}function Y(g){if(k!=="stopped"&&k==="waitingForConnect"){if(!Xe(g.bridgeProtocolVersion)){let v=Ve({currentBridgeProtocolVersion:g.bridgeProtocolVersion});A({initializationId:g.initializationId,error:v});return}if(g.bridgeProtocolVersion<l){let v=Qe({currentBridgeProtocolVersion:g.bridgeProtocolVersion,minBridgeProtocolVersion:l});A({initializationId:g.initializationId,error:v});return}if(g.status==="error"){A({initializationId:g.initializationId,error:g.error});return}se=!0,J(g)}}function _(g){if(k==="stopped"||k!=="waitingForConnect")return"handled";let{initializationId:v,bridgeProtocolVersion:V}=g;if(v===void 0)return"nack";let ee=g.error;return V!==void 0&&(Xe(V)?V<l&&(ee=Qe({currentBridgeProtocolVersion:V,minBridgeProtocolVersion:l})):ee=Ve({currentBridgeProtocolVersion:void 0})),A({initializationId:v,error:ee}),"handled"}function ue(g){let{initializationId:v,error:V}=g;k!=="waitingForInitResult"||v===void 0||v!==B||($(),N(),k="error",s(V),j?.(V))}function je(){if(k!=="stopped"){if(q){S({code:"iframe_reloaded",message:"The iframe reloaded. Create a new host and iframe to reconnect.",isRetryable:!0});return}q=!0,$(),k==="waitingForConnect"&&(G=window.setTimeout(()=>{if(k!=="waitingForConnect")return;k="error";let g=Gt();s(g),j?.(g)},f))}}function he(g){if(k!=="waitingForInitResult"||g.initializationId!==B){s({message:"Ignored stale or unexpected initResult",payload:g});return}N(),k=g.status==="success"?"initialized":"error",g.status==="success"?c():j?.(g.error),I?.(g)}function ae(){k="stopped",$(),R(),N()}return{get status(){return k},get hasConnectedSandbox(){return se},handleConnect:Y,handleInitResult:he,handleInvalidConnect:_,handleInvalidInitResult:ue,onIframeLoad:je,stop:ae}}function Yt(e,o){return o>=5||!(e.type==="init"&&e.status==="success"||e.type==="dataSourcesChanged")?e:{...e,dataSources:{bindings:Object.fromEntries(Object.entries(e.dataSources.bindings).map(([s,c])=>[s,{...c,collectionSchema:{...c.collectionSchema,propertiesById:{...c.collectionSchema?.propertiesById,...at}}}]))}}}var er=r({theme:de,contrastMode:a(me),blockId:re,parent:ne,page:ye,manifest:pe,dataSources:r({bindings:le}),currentUser:oe});function tr(e){switch(e.type){case"connect":case"init":case"initResult":return!0;default:return!1}}var rr=r({code:t(),message:t(),isRetryable:b()});var nr={type:i("connect"),initializationId:t(),bridgeProtocolVersion:E(),sdkVersion:t()},or=h("status",[r({status:i("success"),manifest:a(pe),...nr}),r({status:i("error"),error:rr,...nr})]);var Pn=h("type",[r({type:i("start")}),r({type:i("end")}),r({type:i("before"),blockId:re}),r({type:i("after"),blockId:re})]),jn=h("type",[r({type:i("page_id"),page_id:H}),r({type:i("data_source_id"),data_source_id:Z})]),ir=r({type:i("createPage"),requestId:t(),parent:jn,properties:_e,position:a(Pn)});var Bn=t(),Mn=r({code:Bn,message:t(),isRetryable:b()}),sr=h("status",[r({type:i("initResult"),initializationId:t(),status:i("success"),initialHeight:a(z(E(),be(),Se(0)))}),r({type:i("initResult"),initializationId:t(),status:i("error"),error:Mn})]);var ur=r({type:i("invalidHostMessage"),reason:t()});var Pe=x([p({is_empty:i(!0)}),p({is_not_empty:i(!0)})]),Oe=x([t(),O(t())]),ar=p({object:w(["user","group"]),id:z(t(),ke(1))}),Rn=x([p({contains:ar}),p({does_not_contain:ar}),Pe]),cr=p({object:i("user"),id:z(t(),ke(1),Me(2e3))}),Dn=x([p({contains:cr}),p({does_not_contain:cr}),p({is_empty:i(!0)}),p({is_not_empty:i(!0)})]),Ce=x([p({equals:t()}),p({does_not_equal:t()}),p({contains:t()}),p({does_not_contain:t()}),p({starts_with:t()}),p({ends_with:t()}),Pe]),wn=x([p({equals:E()}),p({does_not_equal:E()}),p({greater_than:E()}),p({less_than:E()}),p({greater_than_or_equal_to:E()}),p({less_than_or_equal_to:E()}),Pe]),An=x([p({equals:b()}),p({does_not_equal:b()})]),mr=x([p({equals:Oe}),p({does_not_equal:Oe}),Pe]),lr=w(["To-do","In progress","Complete","Current","Future"]),pr=x([lr,z(O(lr),ke(1),Me(5))]),Tn=x([p({group_equals:pr}),p({group_does_not_equal:pr})]),qn=x([mr,Tn]),Nn=x([p({contains:Oe}),p({contains_all:Oe}),p({does_not_contain:Oe}),Pe]),Q=w(["start_date","end_date"]),Fn=w(["today","tomorrow","yesterday","one_week_ago","one_week_from_now","one_month_ago","one_month_from_now"]),Ee=x([Fn,t()]),Un=x([p({target:a(Q),equals:Ee}),p({target:a(Q),before:Ee}),p({target:a(Q),after:Ee}),p({target:a(Q),on_or_before:Ee}),p({target:a(Q),on_or_after:Ee}),p({target:a(Q),this_week:p({})}),p({target:a(Q),past_week:p({})}),p({target:a(Q),past_month:p({})}),p({target:a(Q),past_year:p({})}),p({target:a(Q),next_week:p({})}),p({target:a(Q),next_month:p({})}),p({target:a(Q),next_year:p({})}),p({target:a(Q),is_empty:i(!0)}),p({target:a(Q),is_not_empty:i(!0)})]),fr=x([p({propertyId:t(),created_by:Dn}),p({propertyId:t(),title:Ce}),p({propertyId:t(),rich_text:Ce}),p({propertyId:t(),url:Ce}),p({propertyId:t(),email:Ce}),p({propertyId:t(),phone_number:Ce}),p({propertyId:t(),number:wn}),p({propertyId:t(),checkbox:An}),p({propertyId:t(),select:mr}),p({propertyId:t(),multi_select:Nn}),p({propertyId:t(),status:qn}),p({propertyId:t(),date:Un}),p({propertyId:t(),people:Rn})]),zn=x([fr,p({and:O(fr)})]),We=10,Hn=p({propertyId:t(),direction:w(["ascending","descending"])}),yr=r({type:i("queryDataSource"),subscriptionId:t(),dataSourceId:Z,limit:E(),filter:a(zn),sorts:a(O(Hn))});var vr=r({type:i("resize"),height:z(E(),be(),Se(0))});var dr=r({type:i("unsubscribeDataSourceQuery"),subscriptionId:t()});var hr=r({type:i("updatePage"),requestId:t(),pageId:H,properties:a(_e),icon:a(He),cover:a(Ge),archived:a(b())});var gr=h("type",[or,sr,yr,dr,ir,kt,It,Ct,Ot,hr,vr,ur]);function br(e){if(typeof e=="object"&&e!==null&&"type"in e&&typeof e.type=="string")return e.type}function kr(e){let o=br(e);return o==="invalidHostMessage"||o==="invalidSandboxMessage"?{incomingType:o}:{incomingType:o,nack:{type:"invalidSandboxMessage",reason:Gn(o)}}}function Gn(e){return e!==void 0?`Unsupported sandbox message of type "${e}"`:"Unsupported sandbox message (no `type` field or non-object payload)"}var Sr=r({initializationId:t()}),Ln=r({bridgeProtocolVersion:x([E(),Ne()])});function Ir(e){let{iframe:o,sandboxOrigin:n,getInitStatus:s,emit:c,sendNack:l,onInvalidConnect:f,onInvalidInitResult:y,onConnect:m,onInitResult:S,onQueryDataSource:I,onUnsubscribeDataSourceQuery:j,onCreatePage:k,onGetPage:G,onOpenPage:W,onGetUser:T,onListUsers:B,onUpdatePage:q,onResize:se}=e;function $(R,N){c("warn",{message:"Ignored unsupported sandbox message",payload:R,issues:N});let A=kr(R);if(A.incomingType==="connect"){let J=xe(Sr,R),Y=xe(Ln,R);if(f({initializationId:J.success?J.output.initializationId:void 0,error:Lt(),bridgeProtocolVersion:Y.success?Y.output.bridgeProtocolVersion:void 0})==="handled")return}if(A.incomingType==="initResult"){let J=xe(Sr,R);y({initializationId:J.success?J.output.initializationId:void 0,error:Jt()})}A.nack!==void 0&&s()!=="stopped"&&l(A.nack)}return function(N){let A=N.source===o.contentWindow,J=N.origin===n;if(!A||!J)return;let Y=xe(gr,N.data);if(!Y.success){$(N.data,Y.issues);return}let _=Y.output;if(!tr(_)&&s()!=="initialized"){c("warn",{message:`Ignored ${_.type} before initialization completed`,payload:_});return}switch(c("in",_),_.type){case"connect":m(_);return;case"initResult":S(_);return;case"queryDataSource":I(_);return;case"unsubscribeDataSourceQuery":j(_);return;case"createPage":k(_);return;case"openPage":W(_);return;case"getPage":G(_);return;case"getUser":T(_);return;case"listUsers":B(_);return;case"updatePage":q(_);return;case"resize":se(_);return;case"invalidHostMessage":return;default:ie(_)}}}var we=class{constructor(o){this.onUnsubscribe=o}onUnsubscribe;bySubscriptionId=new Map;subscribe(o){this.unsubscribe(o.subscriptionId);let n={_tag:"QuerySubscriptionToken"};return this.bySubscriptionId.set(o.subscriptionId,{message:o,token:n,isRefreshing:!0,shouldRefreshAgain:!1}),n}isCurrent(o,n){return this.bySubscriptionId.get(o)?.token===n}unsubscribe(o){this.bySubscriptionId.delete(o)&&this.onUnsubscribe(o)}refresh(o){let n=[],s=!1;for(let c of this.bySubscriptionId.values())if(c.message.dataSourceId===o){if(s=!0,c.isRefreshing){c.shouldRefreshAgain=!0;continue}c.isRefreshing=!0,n.push({message:c.message,token:c.token})}return s?n:void 0}finish(o,n){let s=this.bySubscriptionId.get(o);if(s?.token===n&&(s.isRefreshing=!1,!!s.shouldRefreshAgain))return s.shouldRefreshAgain=!1,s.isRefreshing=!0,{message:s.message,token:s.token}}unsubscribeAll(){for(let o of this.bySubscriptionId.keys())this.unsubscribe(o)}};function xr(e,o){if(e===void 0)return;let n="and"in e?e.and:[e];for(let s of n){let c=Vn(s,o);if(c!==void 0)return c}}function Vn(e,o){if(!Object.hasOwn(o.propertiesById,e.propertyId))return{code:"invalid_data_source_query_filter",message:`Data source query filter property ID "${e.propertyId}" is not defined in the bound data source schema.`,isRetryable:!1};let n=o.propertiesById[e.propertyId],s=Object.keys(e).find(y=>y!=="propertyId");if(s!==n.type)return{code:"invalid_data_source_query_filter",message:`Data source query filter branch "${s}" does not match property type "${n.type}".`,isRetryable:!1};if("status"in e&&n.type==="status"){let y=e.status;if("group_equals"in y||"group_does_not_equal"in y){let m="group_equals"in y?y.group_equals:y.group_does_not_equal,I=(Array.isArray(m)?m:[m]).find(j=>!n.groups.some(k=>k.name===j));return I===void 0?void 0:{code:"invalid_data_source_query_filter",message:`Unknown status group "${I}".`,isRetryable:!1}}}let c=Qn(e);if(c===void 0||n.type!==c.propertyType)return;let l=new Set(n.options.map(y=>y.name)),f=$n(c.operator).find(y=>!l.has(y));if(f!==void 0)return{code:"invalid_data_source_query_filter",message:`Data source query filter option "${f}" is not defined for property "${e.propertyId}".`,isRetryable:!1}}function Qn(e){if("select"in e)return{propertyType:"select",operator:e.select};if("multi_select"in e)return{propertyType:"multi_select",operator:e.multi_select};if("status"in e){let o=e.status;return"group_equals"in o||"group_does_not_equal"in o?void 0:{propertyType:"status",operator:o}}}function $n(e){let o;if("equals"in e)o=e.equals;else if("does_not_equal"in e)o=e.does_not_equal;else if("contains"in e)o=e.contains;else if("contains_all"in e)o=e.contains_all;else if("does_not_contain"in e)o=e.does_not_contain;else return"is_empty"in e||"is_not_empty"in e?[]:ie(e);return Array.isArray(o)?o:[o]}var Xn=new Set(ut);function _r(e,o){if(e===void 0)return;if(e.length>We)return{code:"invalid_data_source_query_sort",message:`Data source query sorts may contain at most ${We} entries.`,isRetryable:!1};let n=new Set;for(let s of e){if(n.has(s.propertyId))return{code:"invalid_data_source_query_sort",message:`Data source query sorts cannot contain duplicate property ID "${s.propertyId}".`,isRetryable:!1};if(n.add(s.propertyId),!Object.hasOwn(o.propertiesById,s.propertyId))return{code:"invalid_data_source_query_sort",message:`Data source query sort property ID "${s.propertyId}" is not defined in the bound data source schema.`,isRetryable:!1};let c=o.propertiesById[s.propertyId];if(!Xn.has(c.type))return{code:"invalid_data_source_query_sort",message:`Data source query sorts do not yet support property type "${c.type}".`,isRetryable:!1}}}var Er=5;function Jn(e){let{iframe:o,getInitialState:n,handlers:s,onManifest:c,onInitialized:l,onConnectionFailure:f,onLog:y,onQueryUnsubscribed:m,sandboxOrigin:S,minBridgeProtocolVersion:I,noConnectTimeoutMs:j,initialStateTimeoutMs:k,noInitResultTimeoutMs:G}=e,W=Math.max(I??3,3),T={},B=!1,q,se,$=5,R=new we(u=>{m?.(u)});function N(u,C){y?.(u,C)}function A(u){let C=v.status;switch(C){case"waitingForConnect":case"preparingInit":case"waitingForInitResult":case"initialized":case"error":break;case"stopped":return;default:return ie(C)}let D=Yt(u,$);N("out",D),o.contentWindow?.postMessage(D,S)}function J(u){A(fe(De,u))}function Y(u){A(u)}function _(u){let C=v.status;switch(C){case"initialized":A(fe(Ht,u));return;case"waitingForConnect":case"preparingInit":case"waitingForInitResult":case"error":case"stopped":return;default:ie(C)}}async function ue(u,C){if(C===void 0)return;let D=await C(u);_({type:`${u.type}Result`,requestId:u.requestId,...D})}function je(u){let C=u.response.status==="error"?{type:"queryDataSourceResult",subscriptionId:u.subscriptionId,status:"error",error:u.response.error}:{type:"queryDataSourceResult",subscriptionId:u.subscriptionId,status:"success",items:u.response.items,hasMore:u.response.hasMore};_(C)}async function he(u,C=R.subscribe(u)){try{let D=Kn(se,u.dataSourceId),ce=Zn(u,D);if(ce!==void 0){R.isCurrent(u.subscriptionId,C)&&(R.unsubscribe(u.subscriptionId),je({subscriptionId:u.subscriptionId,response:{status:"error",error:ce}}));return}let Ae=await s.queryDataSource(u);if(!R.isCurrent(u.subscriptionId,C))return;Ae.status==="error"&&!Ae.error.isRetryable&&R.unsubscribe(u.subscriptionId),je({subscriptionId:u.subscriptionId,response:Ae})}finally{let D=R.finish(u.subscriptionId,C);D!==void 0&&he(D.message,D.token)}}function ae(u){v.status==="stopped"||v.status==="error"||(Object.assign(T,u),g())}function g(){if(v.status!=="initialized")return;let u=T;T={},u.theme!==void 0&&_({type:"themeChanged",theme:u.theme}),u.contrastMode!==void 0&&_({type:"contrastModeChanged",contrastMode:u.contrastMode}),u.parent!==void 0&&_({type:"parentChanged",parent:u.parent}),u.page!==void 0&&_({type:"pageChanged",page:u.page}),u.dataSources!==void 0&&_({type:"dataSourcesChanged",dataSources:u.dataSources}),u.currentUser!==void 0&&_({type:"currentUserChanged",currentUser:u.currentUser})}let v=Zt({async prepareInit(u){$=u.bridgeProtocolVersion;let C=await n(u);return v.status!=="preparingInit"?C:V(C)},sendInitMessage:J,warn:u=>N("warn",u),flushPendingHostStateChanges:g,minBridgeProtocolVersion:W,noConnectTimeoutMs:j,initialStateTimeoutMs:k,noInitResultTimeoutMs:G,stopHostWithFailure:Ke,onInitResult(u){u.status==="success"&&q!==void 0&&l?.({manifest:q,initialHeight:u.initialHeight})},onConnectionFailure:f});function V(u){if(u.status==="error")return u;q=fe(pe,u.initialState.manifest),c?.(q);let C={...u.initialState,...T};T={};let D={...fe(rt(er,["manifest"]),C),manifest:q};if($<Er&&D.page.type==="unavailable")return{status:"error",error:$e()};let ce=Or(D.manifest,D.dataSources);return ce!==void 0?{status:"error",error:ce}:(se=D.dataSources,B=!0,{status:"success",initialState:D})}let ee=Ir({iframe:o,sandboxOrigin:S,getInitStatus:()=>v.status,emit:N,sendNack:Y,onInvalidConnect:v.handleInvalidConnect,onInvalidInitResult:v.handleInvalidInitResult,onConnect:v.handleConnect,onInitResult:v.handleInitResult,onQueryDataSource:he,onUnsubscribeDataSourceQuery:u=>R.unsubscribe(u.subscriptionId),onCreatePage:u=>ue(u,s.createPage),onGetPage:u=>ue(u,s.getPage),onOpenPage:u=>ue(u,s.openPage),onGetUser:u=>ue(u,s.getUser),onListUsers:u=>ue(u,s.listUsers),onUpdatePage:u=>ue(u,s.updatePage),onResize:u=>s.resize?.(u)});window.addEventListener("message",ee),o.addEventListener("load",v.onIframeLoad);function Je(){window.removeEventListener("message",ee),o.removeEventListener("load",v.onIframeLoad),v.stop(),R.unsubscribeAll()}function Ke(u){Je(),N("warn",u),f?.(u)}return{stop:Je,setTheme(u){ae({theme:u})},setContrastMode(u){ae({contrastMode:u})},setParent(u){ae({parent:u})},setPage(u){if(u.type==="unavailable"&&$<Er&&(v.status==="preparingInit"&&B||v.status==="waitingForInitResult"||v.status==="initialized")){Ke($e());return}ae({page:u})},setCurrentUser(u){ae({currentUser:u})},setDataSources(u){let C={bindings:fe(le,u.bindings)};if(v.hasConnectedSandbox&&q!==void 0&&Or(q,C)!==void 0){N("warn",{message:"Ignored invalid data source bindings update",payload:C});return}se=C,ae({dataSources:C})},refreshQuery({dataSourceId:u}){if(v.status!=="initialized")return;let C=fe(Z,u),D=R.refresh(C);if(D===void 0){N("warn",`No active query exists for data source "${u}"`);return}for(let ce of D)he(ce.message,ce.token)}}}function Kn(e,o){return Object.values(e?.bindings??{}).find(n=>n.collectionPointer?.id===o)?.collectionSchema}function Or(e,o){for(let[n,s]of Object.entries(e.dataSources)){let c=o.bindings[n];if(c?.collectionPointer===void 0||c.collectionSchema===void 0)return Qt();for(let[l,f]of Object.entries(s.properties??{})){let y=c.propertyIdsByKey?.[l];if(y===void 0)return $t();if(c.collectionSchema.propertiesById[y]?.type!==f.type)return Xt()}}}function Zn(e,o){return o===void 0?e.filter===void 0&&(e.sorts?.length??0)===0?void 0:{code:"data_source_schema_unavailable",message:"You cannot query this data source with filters or sorts because its schema is unavailable.",isRetryable:!1}:xr(e.filter,o)??_r(e.sorts,o)}export{Jn as createCustomBlockHost,Pr as getAutoBoundPropertyIdsByKey};
1
+ function jr(e){let{manifestProperties:o,propertySchemasById:n}=e,s=[];for(let[c,l]of Object.entries(o)){let f=Br({propertyKey:c,manifestProperty:l,propertySchemasById:n});f!==void 0&&s.push([c,f])}return Object.fromEntries(s)}function Br(e){let{propertyKey:o,manifestProperty:n,propertySchemasById:s}=e,c=Ze(n.name),l=Object.entries(s).filter(([f,y])=>y.type===n.type&&(f===o||Ze(y.name)===c));return l.length===1?l[0][0]:void 0}function Ze(e){return e.trim().toLowerCase()}var Be,Mr={lang:void 0,message:void 0,abortEarly:void 0,abortPipeEarly:void 0};function Te(e){return!e&&!Be?Mr:{lang:e?.lang??Be?.lang,message:e?.message,abortEarly:e?.abortEarly??Be?.abortEarly,abortPipeEarly:e?.abortPipeEarly??Be?.abortPipeEarly}}var Rr;function Dr(e){return Rr?.get(e)}var wr;function Ar(e){return wr?.get(e)}var Tr;function qr(e,o){return Tr?.get(e)?.get(o)}function ge(e){let o=typeof e;return o==="string"?`"${e}"`:o==="number"||o==="bigint"||o==="boolean"?`${e}`:o==="object"||o==="function"?(e&&Object.getPrototypeOf(e)?.constructor?.name)??"null":o}function M(e,o,n,s,c){let l=c&&"input"in c?c.input:n.value,f=c?.expected??e.expects??null,y=c?.received??ge(l),m={kind:e.kind,type:e.type,input:l,expected:f,received:y,message:`Invalid ${o}: ${f?`Expected ${f} but r`:"R"}eceived ${y}`,requirement:e.requirement,path:c?.path,issues:c?.issues,lang:s.lang,abortEarly:s.abortEarly,abortPipeEarly:s.abortPipeEarly},S=e.kind==="schema",I=c?.message??e.message??qr(e.reference,m.lang)??(S?Ar(m.lang):null)??s.message??Dr(m.lang);I!==void 0&&(m.message=typeof I=="function"?I(m):I),S&&(n.typed=!1),n.issues?n.issues.push(m):n.issues=[m]}var Ye=new WeakMap;function F(e){let o=Ye.get(e);return o||(o={version:1,vendor:"valibot",validate(n){return e["~run"]({value:n},Te())}},Ye.set(e,o)),o}function Nr(e,o){return Object.prototype.hasOwnProperty.call(e,o)&&o!=="__proto__"&&o!=="prototype"&&o!=="constructor"}function qe(e,o){let n=[...new Set(e)];return n.length>1?`(${n.join(` ${o} `)})`:n[0]??"never"}var Fr=class extends Error{constructor(e){super(e[0].message),this.name="ValiError",this.issues=e}};function te(e){return{kind:"transformation",type:"brand",reference:te,async:!1,name:e,"~run"(o){return o}}}function be(e){return{kind:"validation",type:"finite",reference:be,async:!1,expects:null,requirement:Number.isFinite,message:e,"~run"(o,n){return o.typed&&!this.requirement(o.value)&&M(this,"finite",o,n),o}}}function Me(e,o){return{kind:"validation",type:"max_length",reference:Me,async:!1,expects:`<=${e}`,requirement:e,message:o,"~run"(n,s){return n.typed&&n.value.length>this.requirement&&M(this,"length",n,s,{received:`${n.value.length}`}),n}}}function ke(e,o){return{kind:"validation",type:"min_length",reference:ke,async:!1,expects:`>=${e}`,requirement:e,message:o,"~run"(n,s){return n.typed&&n.value.length<this.requirement&&M(this,"length",n,s,{received:`${n.value.length}`}),n}}}function Se(e,o){return{kind:"validation",type:"min_value",reference:Se,async:!1,expects:`>=${e instanceof Date?e.toJSON():ge(e)}`,requirement:e,message:o,"~run"(n,s){return n.typed&&!(n.value>=this.requirement)&&M(this,"value",n,s,{received:n.value instanceof Date?n.value.toJSON():ge(n.value)}),n}}}var Ur={abortEarly:!0};function tt(e,o,n){return typeof e.fallback=="function"?e.fallback(o,n):e.fallback}function Re(e,o,n){return typeof e.default=="function"?e.default(o,n):e.default}function O(e,o){return{kind:"schema",type:"array",reference:O,expects:"Array",async:!1,item:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(Array.isArray(c)){n.typed=!0,n.value=[];for(let l=0;l<c.length;l++){let f=c[l],y=this.item["~run"]({value:f},s);if(y.issues){let m={type:"array",origin:"value",input:c,key:l,value:f};for(let S of y.issues)S.path?S.path.unshift(m):S.path=[m],n.issues?.push(S);if(n.issues||(n.issues=y.issues),s.abortEarly){n.typed=!1;break}}y.typed||(n.typed=!1),n.value.push(y.value)}}else M(this,"type",n,s);return n}}}function b(e){return{kind:"schema",type:"boolean",reference:b,expects:"boolean",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="boolean"?o.typed=!0:M(this,"type",o,n),o}}}function i(e,o){return{kind:"schema",type:"literal",reference:i,expects:ge(e),async:!1,literal:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===this.literal?n.typed=!0:M(this,"type",n,s),n}}}function Ne(e){return{kind:"schema",type:"nan",reference:Ne,expects:"NaN",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return Number.isNaN(o.value)?o.typed=!0:M(this,"type",o,n),o}}}function K(e,o){return{kind:"schema",type:"nullable",reference:K,expects:`(${e.expects} | null)`,async:!1,wrapped:e,default:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===null&&(this.default!==void 0&&(n.value=Re(this,n,s)),n.value===null)?(n.typed=!0,n):this.wrapped["~run"](n,s)}}}function E(e){return{kind:"schema",type:"number",reference:E,expects:"number",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="number"&&!isNaN(o.value)?o.typed=!0:M(this,"type",o,n),o}}}function r(e,o){return{kind:"schema",type:"object",reference:r,expects:"Object",async:!1,entries:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(c&&typeof c=="object"){n.typed=!0,n.value={};for(let l in this.entries){let f=this.entries[l];if(l in c||(f.type==="exact_optional"||f.type==="optional"||f.type==="nullish")&&f.default!==void 0){let y=l in c?c[l]:Re(f),m=f["~run"]({value:y},s);if(m.issues){let S={type:"object",origin:"value",input:c,key:l,value:y};for(let I of m.issues)I.path?I.path.unshift(S):I.path=[S],n.issues?.push(I);if(n.issues||(n.issues=m.issues),s.abortEarly){n.typed=!1;break}}m.typed||(n.typed=!1),n.value[l]=m.value}else if(f.fallback!==void 0)n.value[l]=tt(f);else if(f.type!=="exact_optional"&&f.type!=="optional"&&f.type!=="nullish"&&(M(this,"key",n,s,{input:void 0,expected:`"${l}"`,path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]}),s.abortEarly))break}}else M(this,"type",n,s);return n}}}function a(e,o){return{kind:"schema",type:"optional",reference:a,expects:`(${e.expects} | undefined)`,async:!1,wrapped:e,default:o,get"~standard"(){return F(this)},"~run"(n,s){return n.value===void 0&&(this.default!==void 0&&(n.value=Re(this,n,s)),n.value===void 0)?(n.typed=!0,n):this.wrapped["~run"](n,s)}}}function D(e,o){return{kind:"schema",type:"picklist",reference:D,expects:qe(e.map(ge),"|"),async:!1,options:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){return this.options.includes(n.value)?n.typed=!0:M(this,"type",n,s),n}}}function U(e,o,n){return{kind:"schema",type:"record",reference:U,expects:"Object",async:!1,key:e,value:o,message:n,get"~standard"(){return F(this)},"~run"(s,c){let l=s.value;if(l&&typeof l=="object"){s.typed=!0,s.value={};for(let f in l)if(Nr(l,f)){let y=l[f],m=this.key["~run"]({value:f},c);if(m.issues){let I={type:"object",origin:"key",input:l,key:f,value:y};for(let j of m.issues)j.path=[I],s.issues?.push(j);if(s.issues||(s.issues=m.issues),c.abortEarly){s.typed=!1;break}}let S=this.value["~run"]({value:y},c);if(S.issues){let I={type:"object",origin:"value",input:l,key:f,value:y};for(let j of S.issues)j.path?j.path.unshift(I):j.path=[I],s.issues?.push(j);if(s.issues||(s.issues=S.issues),c.abortEarly){s.typed=!1;break}}(!m.typed||!S.typed)&&(s.typed=!1),m.typed&&(s.value[m.value]=S.value)}}else M(this,"type",s,c);return s}}}function p(e,o){return{kind:"schema",type:"strict_object",reference:p,expects:"Object",async:!1,entries:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c=n.value;if(c&&typeof c=="object"){n.typed=!0,n.value={};for(let l in this.entries){let f=this.entries[l];if(l in c||(f.type==="exact_optional"||f.type==="optional"||f.type==="nullish")&&f.default!==void 0){let y=l in c?c[l]:Re(f),m=f["~run"]({value:y},s);if(m.issues){let S={type:"object",origin:"value",input:c,key:l,value:y};for(let I of m.issues)I.path?I.path.unshift(S):I.path=[S],n.issues?.push(I);if(n.issues||(n.issues=m.issues),s.abortEarly){n.typed=!1;break}}m.typed||(n.typed=!1),n.value[l]=m.value}else if(f.fallback!==void 0)n.value[l]=tt(f);else if(f.type!=="exact_optional"&&f.type!=="optional"&&f.type!=="nullish"&&(M(this,"key",n,s,{input:void 0,expected:`"${l}"`,path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]}),s.abortEarly))break}if(!n.issues||!s.abortEarly){for(let l in c)if(!(l in this.entries)){M(this,"key",n,s,{input:l,expected:"never",path:[{type:"object",origin:"key",input:c,key:l,value:c[l]}]});break}}}else M(this,"type",n,s);return n}}}function t(e){return{kind:"schema",type:"string",reference:t,expects:"string",async:!1,message:e,get"~standard"(){return F(this)},"~run"(o,n){return typeof o.value=="string"?o.typed=!0:M(this,"type",o,n),o}}}function et(e){let o;if(e)for(let n of e)if(o)for(let s of n.issues)o.push(s);else o=n.issues;return o}function x(e,o){return{kind:"schema",type:"union",reference:x,expects:qe(e.map(n=>n.expects),"|"),async:!1,options:e,message:o,get"~standard"(){return F(this)},"~run"(n,s){let c,l,f;for(let y of this.options){let m=y["~run"]({value:n.value},s);if(m.typed)if(m.issues)l?l.push(m):l=[m];else{c=m;break}else f?f.push(m):f=[m]}if(c)return c;if(l){if(l.length===1)return l[0];M(this,"type",n,s,{issues:et(l)}),n.typed=!0}else{if(f?.length===1)return f[0];M(this,"type",n,s,{issues:et(f)})}return n}}}function Ie(){return{kind:"schema",type:"unknown",reference:Ie,expects:"unknown",async:!1,get"~standard"(){return F(this)},"~run"(e){return e.typed=!0,e}}}function h(e,o,n){return{kind:"schema",type:"variant",reference:h,expects:"Object",async:!1,key:e,options:o,message:n,get"~standard"(){return F(this)},"~run"(s,c){let l=s.value;if(l&&typeof l=="object"){let f,y=0,m=this.key,S=[],I=(j,k)=>{for(let G of j.options){if(G.type==="variant")I(G,new Set(k).add(G.key));else{let W=!0,T=0;for(let B of k){let q=G.entries[B];if(B in l?q["~run"]({typed:!1,value:l[B]},Ur).issues:q.type!=="exact_optional"&&q.type!=="optional"&&q.type!=="nullish"){W=!1,m!==B&&(y<T||y===T&&B in l&&!(m in l))&&(y=T,m=B,S=[]),m===B&&S.push(G.entries[B].expects);break}T++}if(W){let B=G["~run"]({value:l},c);(!f||!f.typed&&B.typed)&&(f=B)}}if(f&&!f.issues)break}};if(I(this,new Set([this.key])),f)return f;M(this,"type",s,c,{input:l[m],expected:qe(S,"|"),path:[{type:"object",origin:"value",input:l,key:m,value:l[m]}]})}else M(this,"type",s,c);return s}}}function rt(e,o){let n={...e.entries};for(let s of o)delete n[s];return{...e,entries:n,get"~standard"(){return F(this)}}}function fe(e,o,n){let s=e["~run"]({value:o},Te(n));if(s.issues)throw new Fr(s.issues);return s.value}function z(...e){return{...e[0],pipe:e,get"~standard"(){return F(this)},"~run"(o,n){for(let s of e)if(s.kind!=="metadata"){if(o.issues&&(s.kind==="schema"||s.kind==="transformation")){o.typed=!1;break}(!o.issues||!n.abortEarly&&!n.abortPipeEarly)&&(o=s["~run"](o,n))}return o}}}function xe(e,o,n){let s=e["~run"]({value:o},Te(n));return{typed:s.typed,success:!s.issues,output:s.value,issues:s.issues}}var re=z(t(),te("NotionBlockId")),Z=z(t(),te("NotionDataSourceId")),H=z(t(),te("NotionPageId")),nt=z(t(),te("NotionAgentId")),ot=z(t(),te("NotionSpaceId"));var it=D(["default","gray","brown","orange","yellow","green","blue","purple","pink","red","gray_background","brown_background","orange_background","yellow_background","green_background","blue_background","purple_background","pink_background","red_background","default_background"]),Fe=r({id:t(),name:t(),color:a(it),description:a(t())}),zr=r({id:t(),name:t(),color:a(it),option_ids:O(t())}),Hr=r({synced_property_id:t(),synced_property_name:t()}),P=r({name:t(),description:a(t())}),Gr=["title","rich_text","number","checkbox","url","email","phone_number","select","multi_select","status","date","people","files","unique_id","relation","place","formula","rollup","button","verification","last_visited_time","location","created_time","last_edited_time","created_by","last_edited_by"],st=D(Gr),ut=["title","rich_text","number","checkbox","url","email","phone_number","date","created_time","last_edited_time","people","created_by"],Ue=h("type",[r({...P.entries,type:i("title")}),r({...P.entries,type:i("rich_text")}),r({...P.entries,type:i("number")}),r({...P.entries,type:i("checkbox")}),r({...P.entries,type:i("url")}),r({...P.entries,type:i("email")}),r({...P.entries,type:i("phone_number")}),r({...P.entries,type:i("select"),options:O(Fe)}),r({...P.entries,type:i("multi_select"),options:O(Fe)}),r({...P.entries,type:i("status"),options:O(Fe),groups:O(zr)}),r({...P.entries,type:i("date")}),r({...P.entries,type:i("people")}),r({...P.entries,type:i("files")}),r({...P.entries,type:i("unique_id")}),r({...P.entries,type:i("relation"),data_source_id:a(t()),dual_property:a(Hr)}),r({...P.entries,type:i("place")}),r({...P.entries,type:i("formula")}),r({...P.entries,type:i("rollup")}),r({...P.entries,type:i("button")}),r({...P.entries,type:i("verification")}),r({...P.entries,type:i("last_visited_time")}),r({...P.entries,type:i("location")}),r({...P.entries,type:i("created_time")}),r({...P.entries,type:i("last_edited_time")}),r({...P.entries,type:i("created_by")}),r({...P.entries,type:i("last_edited_by")})]);var at={created_time:{type:"created_time",name:"Created time"},last_edited_time:{type:"last_edited_time",name:"Last edited time"},created_by:{type:"created_by",name:"Created by"},last_edited_by:{type:"last_edited_by",name:"Last edited by"}};var ct=r({id:Z,table:t(),spaceId:a(ot)}),lt=r({id:a(Z),propertiesById:U(t(),Ue)}),so=r({key:t(),collectionPointer:a(ct),collectionSchema:a(lt),propertyIdsByKey:U(t(),a(t())),propertySchemasById:U(t(),Ue)}),Lr=r({collectionPointer:a(ct),collectionSchema:a(lt),propertyIdsByKey:a(U(t(),a(t())))}),le=U(t(),Lr);var Vr=h("type",[r({type:i("emoji"),emoji:t()}),r({type:i("external"),url:t()})]),Qr=r({name:t(),description:a(t()),type:st}),$r=r({name:t(),description:a(t()),icon:a(Vr),properties:a(U(t(),Qr),{})}),pe=r({version:i(1),dataSources:U(t(),$r)});var me=D(["standard","high"]),pt="standard";var ft=r({type:i("contrastModeChanged"),contrastMode:me});var ne=h("type",[r({type:i("page_id"),page_id:H}),r({type:i("data_source_id"),data_source_id:Z}),r({type:i("workspace"),workspace:i(!0)}),r({type:i("block_id"),block_id:re}),r({type:i("agent_id"),agent_id:nt}),r({type:i("unavailable")})]);var ye=h("type",[r({type:i("unavailable")}),r({type:i("page"),id:H,parent:ne})]),Xr=r({type:i("emoji"),emoji:t()}),Wr=r({type:i("custom_emoji"),custom_emoji:r({id:t(),name:a(t()),url:a(t())})}),yt=r({type:i("external"),external:r({url:t()})}),vt=r({type:i("file"),file:r({url:t(),expiry_time:a(t())})}),He=h("type",[Xr,Wr,yt,vt]),Ge=h("type",[yt,vt]),X=K(t()),mt=U(t(),Ie()),ze=x([r({id:t(),name:a(t()),color:a(t()),description:a(X)}),r({name:t(),id:a(t()),color:a(t()),description:a(X)})]),Jr=r({start:t(),end:a(X),time_zone:a(X)}),Kr=x([r({object:a(i("user")),id:t()}),r({object:i("group"),id:t(),name:a(X)})]),Zr=r({id:t()}),Yr=x([r({type:i("external"),name:t(),external:r({url:t()})}),r({type:i("file"),name:t(),file:r({url:t(),expiry_time:a(t())})})]),en=r({lat:E(),lon:E(),name:a(X),address:a(X),aws_place_id:a(X),google_place_id:a(X)}),L={id:t()},tn=h("type",[r({...L,type:i("title"),title:O(mt)}),r({...L,type:i("rich_text"),rich_text:O(mt)}),r({...L,type:i("number"),number:K(E())}),r({...L,type:i("url"),url:X}),r({...L,type:i("email"),email:X}),r({...L,type:i("phone_number"),phone_number:X}),r({...L,type:i("checkbox"),checkbox:b()}),r({...L,type:i("select"),select:K(ze)}),r({...L,type:i("status"),status:K(ze)}),r({...L,type:i("multi_select"),multi_select:O(ze)}),r({...L,type:i("date"),date:K(Jr)}),r({...L,type:i("people"),people:O(Kr)}),r({...L,type:i("relation"),has_more:a(b()),relation:O(Zr)}),r({...L,type:i("files"),files:O(Yr)}),r({...L,type:i("place"),place:K(en)})]),_e=U(t(),tn),ve=r({object:i("page"),id:H,parent:ne,properties:_e,created_time:a(t()),last_edited_time:a(t()),icon:a(He),cover:a(Ge),url:a(t()),public_url:a(t()),is_archived:b(),in_trash:b()});var rn=t(),nn=r({code:rn,message:t(),isRetryable:b()}),dt=h("status",[r({type:i("createPageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("createPageResult"),requestId:t(),status:i("error"),error:nn})]);var Le=z(t(),te("NotionUserId")),oe=r({object:i("user"),id:Le,name:a(t()),avatar_url:K(t()),type:i("person"),person:r({email:t()})}),ht=r({object:i("list"),results:O(oe),next_cursor:K(t()),has_more:b(),type:i("user"),user:U(t(),Ie())});var gt=r({type:i("currentUserChanged"),currentUser:oe});var bt=r({type:i("dataSourcesChanged"),dataSources:r({bindings:le})});var on=t(),sn=r({code:on,message:t(),isRetryable:b()}),kt=r({type:i("getPage"),requestId:t(),pageId:H}),St=h("status",[r({type:i("getPageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("getPageResult"),requestId:t(),status:i("error"),error:sn})]);var un=t(),an=r({code:un,message:t(),isRetryable:b()}),It=r({type:i("getUser"),requestId:t(),userId:Le}),xt=h("status",[r({type:i("getUserResult"),requestId:t(),status:i("success"),user:oe}),r({type:i("getUserResult"),requestId:t(),status:i("error"),error:an})]);var de=D(["light","dark"]);var cn=t(),ln=r({code:cn,message:t(),isRetryable:b()});var De=h("status",[r({type:i("init"),initializationId:t(),status:i("success"),theme:de,contrastMode:me,blockId:re,parent:ne,page:ye,manifest:pe,dataSources:r({bindings:le}),currentUser:oe}),r({type:i("init"),initializationId:t(),status:i("error"),error:ln})]);var _t=r({type:i("invalidSandboxMessage"),reason:t()});var pn=t(),fn=r({code:pn,message:t(),isRetryable:b()}),Ct=r({type:i("listUsers"),requestId:t(),startCursor:a(t()),pageSize:a(E())}),Et=h("status",[r({type:i("listUsersResult"),requestId:t(),status:i("success"),list:ht}),r({type:i("listUsersResult"),requestId:t(),status:i("error"),error:fn})]);var mn=D(["side_peek","center_peek"]),yn=t(),vn=r({code:yn,message:t(),isRetryable:b()}),Ot=r({type:i("openPage"),requestId:t(),pageId:H,mode:mn}),Pt=h("status",[r({type:i("openPageResult"),requestId:t(),status:i("success"),pageId:H}),r({type:i("openPageResult"),requestId:t(),status:i("error"),error:vn})]);var jt=r({type:i("pageChanged"),page:ye});var Bt=r({type:i("parentChanged"),parent:ne});var Mt=r({unit:D(["year","month","week","day"]),value:E(),time:t(),defaultTimeZone:a(t())}),dn=r({unit:D(["hour","minute"]),value:E()}),Rt=r({unit:i("none")}),hn=x([Mt,dn]),Dt=a(x([Mt,Rt])),wt=a(x([hn,Rt])),gn=r({type:i("date"),start_date:t(),reminder:Dt}),bn=r({type:i("daterange"),start_date:t(),end_date:t(),reminder:Dt}),kn=r({type:i("datetime"),start_date:t(),start_time:t(),time_zone:a(t()),reminder:wt}),Sn=r({type:i("datetimerange"),start_date:t(),start_time:t(),end_date:t(),end_time:t(),time_zone:a(t()),reminder:wt}),At=h("type",[gn,bn,kn,Sn]);var Tt=r({id:t(),table:t()});var qt=x([t(),E(),b(),At,O(t()),O(Tt)]);var Nt=r({id:H,is_archived:b(),in_trash:b(),propertiesById:U(t(),a(qt))});var In=t(),xn=r({code:In,message:t(),isRetryable:b()}),Ft=h("status",[r({type:i("queryDataSourceResult"),subscriptionId:t(),status:i("success"),items:O(Nt),hasMore:b()}),r({type:i("queryDataSourceResult"),subscriptionId:t(),status:i("error"),error:xn})]);var Ut=r({type:i("themeChanged"),theme:de});var _n=t(),Cn=r({code:_n,message:t(),isRetryable:b()}),zt=h("status",[r({type:i("updatePageResult"),requestId:t(),status:i("success"),page:ve}),r({type:i("updatePageResult"),requestId:t(),status:i("error"),error:Cn})]);var Ht=h("type",[De,Ut,ft,Bt,jt,gt,bt,Ft,dt,St,xt,Et,Pt,zt,_t]);function Gt(){return{code:"no_connect",message:"Sandbox did not send a connect message.",isRetryable:!0}}function Lt(){return{code:"invalid_connect_payload",message:"Sandbox sent an invalid connect message.",isRetryable:!1}}function Ve(e){let{currentBridgeProtocolVersion:o}=e;return{code:"invalid_protocol_version",message:`Sandbox reported an invalid bridge protocol version ${o?`: ${o}`:"."}`,isRetryable:!1}}function Qe(e){let{currentBridgeProtocolVersion:o,minBridgeProtocolVersion:n}=e;return{code:"unsupported_protocol_version",message:`Sandbox bridge protocol version ${o} is not supported. Minimum supported version is ${n}.`,isRetryable:!1}}function $e(){return{code:"context_unavailable",message:"Host page context is unavailable.",isRetryable:!0}}function Vt(){return{code:"initial_state_timeout",message:"Host did not prepare initial state before the timeout.",isRetryable:!0}}function Qt(){return{code:"missing_data_source_binding",message:"A required data source is not mapped.",isRetryable:!1}}function $t(){return{code:"missing_property_binding",message:"A required data source property is not mapped.",isRetryable:!1}}function Xt(){return{code:"invalid_property_binding",message:"A mapped data source property is missing or incompatible.",isRetryable:!1}}function Wt(){return{code:"no_init_result",message:"Sandbox did not acknowledge initialization.",isRetryable:!0}}function Jt(){return{code:"invalid_init_result_payload",message:"Sandbox sent an invalid initialization result.",isRetryable:!1}}function Kt(){return{code:"unknown_error",message:"Unexpected error while initializing custom block.",isRetryable:!1}}function ie(e){throw new Error(`[custom-blocks-host] Unexpected value encountered: ${JSON.stringify(e)}`)}function Xe(e){return Number.isFinite(e)&&Number.isInteger(e)&&e>=1}var En=5e3,On=5e3,Pn=5e3;function Zt(e){let{prepareInit:o,sendInitMessage:n,warn:s,flushPendingHostStateChanges:c,minBridgeProtocolVersion:l,noConnectTimeoutMs:f=En,initialStateTimeoutMs:y=On,noInitResultTimeoutMs:m=Pn,stopHostWithFailure:S,onInitResult:I,onConnectionFailure:j}=e,k="waitingForConnect",G,W,T,B,q=!1,se=!1;function $(){G!==void 0&&(window.clearTimeout(G),G=void 0)}function R(){W!==void 0&&(window.clearTimeout(W),W=void 0)}function N(){T!==void 0&&(window.clearTimeout(T),T=void 0)}function A(g){let{initializationId:v,error:V}=g;switch(k){case"waitingForConnect":case"preparingInit":break;case"waitingForInitResult":case"initialized":case"error":case"stopped":return;default:return ie(k)}k="error",B=v,$(),R(),n({type:"init",initializationId:v,status:"error",error:V}),j?.(V)}async function J(g){if(k==="waitingForConnect"){k="preparingInit",B=g.initializationId,$(),W=window.setTimeout(()=>{if(k!=="preparingInit")return;let v=Vt();s({...v,initializationId:g.initializationId}),A({initializationId:g.initializationId,error:v})},y);try{let v=await o(g);if(k!=="preparingInit")return;if(R(),v.status==="error"){A({initializationId:g.initializationId,error:v.error});return}k="waitingForInitResult";let V={type:"init",initializationId:g.initializationId,status:"success",theme:v.initialState.theme,contrastMode:v.initialState.contrastMode??pt,blockId:v.initialState.blockId,parent:v.initialState.parent,page:v.initialState.page,currentUser:v.initialState.currentUser,manifest:v.initialState.manifest,dataSources:v.initialState.dataSources};n(V),T=window.setTimeout(()=>{if(k!=="waitingForInitResult")return;k="error";let ee=Wt();j?.(ee),s({...ee,initializationId:g.initializationId})},m)}catch(v){if(k!=="preparingInit")return;s({message:"Failed to prepare custom block initialization",error:v}),A({initializationId:g.initializationId,error:Kt()})}}}function Y(g){if(k!=="stopped"&&k==="waitingForConnect"){if(!Xe(g.bridgeProtocolVersion)){let v=Ve({currentBridgeProtocolVersion:g.bridgeProtocolVersion});A({initializationId:g.initializationId,error:v});return}if(g.bridgeProtocolVersion<l){let v=Qe({currentBridgeProtocolVersion:g.bridgeProtocolVersion,minBridgeProtocolVersion:l});A({initializationId:g.initializationId,error:v});return}if(g.status==="error"){A({initializationId:g.initializationId,error:g.error});return}se=!0,J(g)}}function _(g){if(k==="stopped"||k!=="waitingForConnect")return"handled";let{initializationId:v,bridgeProtocolVersion:V}=g;if(v===void 0)return"nack";let ee=g.error;return V!==void 0&&(Xe(V)?V<l&&(ee=Qe({currentBridgeProtocolVersion:V,minBridgeProtocolVersion:l})):ee=Ve({currentBridgeProtocolVersion:void 0})),A({initializationId:v,error:ee}),"handled"}function ue(g){let{initializationId:v,error:V}=g;k!=="waitingForInitResult"||v===void 0||v!==B||($(),N(),k="error",s(V),j?.(V))}function je(){if(k!=="stopped"){if(q){S({code:"iframe_reloaded",message:"The iframe reloaded. Create a new host and iframe to reconnect.",isRetryable:!0});return}q=!0,$(),k==="waitingForConnect"&&(G=window.setTimeout(()=>{if(k!=="waitingForConnect")return;k="error";let g=Gt();s(g),j?.(g)},f))}}function he(g){if(k!=="waitingForInitResult"||g.initializationId!==B){s({message:"Ignored stale or unexpected initResult",payload:g});return}N(),k=g.status==="success"?"initialized":"error",g.status==="success"?c():j?.(g.error),I?.(g)}function ae(){k="stopped",$(),R(),N()}return{get status(){return k},get hasConnectedSandbox(){return se},handleConnect:Y,handleInitResult:he,handleInvalidConnect:_,handleInvalidInitResult:ue,onIframeLoad:je,stop:ae}}function Yt(e,o){return o>=5||!(e.type==="init"&&e.status==="success"||e.type==="dataSourcesChanged")?e:{...e,dataSources:{bindings:Object.fromEntries(Object.entries(e.dataSources.bindings).map(([s,c])=>[s,{...c,collectionSchema:{...c.collectionSchema,propertiesById:{...c.collectionSchema?.propertiesById,...at}}}]))}}}var er=r({theme:de,contrastMode:a(me),blockId:re,parent:ne,page:ye,manifest:pe,dataSources:r({bindings:le}),currentUser:oe});function tr(e){switch(e.type){case"connect":case"init":case"initResult":return!0;default:return!1}}var rr=r({code:t(),message:t(),isRetryable:b()});var nr={type:i("connect"),initializationId:t(),bridgeProtocolVersion:E(),sdkVersion:t()},or=h("status",[r({status:i("success"),manifest:a(pe),...nr}),r({status:i("error"),error:rr,...nr})]);var jn=h("type",[r({type:i("start")}),r({type:i("end")}),r({type:i("before"),blockId:re}),r({type:i("after"),blockId:re})]),Bn=h("type",[r({type:i("page_id"),page_id:H}),r({type:i("data_source_id"),data_source_id:Z})]),ir=r({type:i("createPage"),requestId:t(),parent:Bn,properties:_e,position:a(jn)});var Mn=t(),Rn=r({code:Mn,message:t(),isRetryable:b()}),sr=h("status",[r({type:i("initResult"),initializationId:t(),status:i("success"),initialHeight:a(z(E(),be(),Se(0)))}),r({type:i("initResult"),initializationId:t(),status:i("error"),error:Rn})]);var ur=r({type:i("invalidHostMessage"),reason:t()});var ar=D(["ascending","descending"]);var Pe=x([p({is_empty:i(!0)}),p({is_not_empty:i(!0)})]),Oe=x([t(),O(t())]),cr=p({object:D(["user","group"]),id:z(t(),ke(1))}),Dn=x([p({contains:cr}),p({does_not_contain:cr}),Pe]),lr=p({object:i("user"),id:z(t(),ke(1),Me(2e3))}),wn=x([p({contains:lr}),p({does_not_contain:lr}),p({is_empty:i(!0)}),p({is_not_empty:i(!0)})]),Ce=x([p({equals:t()}),p({does_not_equal:t()}),p({contains:t()}),p({does_not_contain:t()}),p({starts_with:t()}),p({ends_with:t()}),Pe]),An=x([p({equals:E()}),p({does_not_equal:E()}),p({greater_than:E()}),p({less_than:E()}),p({greater_than_or_equal_to:E()}),p({less_than_or_equal_to:E()}),Pe]),Tn=x([p({equals:b()}),p({does_not_equal:b()})]),yr=x([p({equals:Oe}),p({does_not_equal:Oe}),Pe]),pr=D(["To-do","In progress","Complete","Current","Future"]),fr=x([pr,z(O(pr),ke(1),Me(5))]),qn=x([p({group_equals:fr}),p({group_does_not_equal:fr})]),Nn=x([yr,qn]),Fn=x([p({contains:Oe}),p({contains_all:Oe}),p({does_not_contain:Oe}),Pe]),Q=D(["start_date","end_date"]),Un=D(["today","tomorrow","yesterday","one_week_ago","one_week_from_now","one_month_ago","one_month_from_now"]),Ee=x([Un,t()]),zn=x([p({target:a(Q),equals:Ee}),p({target:a(Q),before:Ee}),p({target:a(Q),after:Ee}),p({target:a(Q),on_or_before:Ee}),p({target:a(Q),on_or_after:Ee}),p({target:a(Q),this_week:p({})}),p({target:a(Q),past_week:p({})}),p({target:a(Q),past_month:p({})}),p({target:a(Q),past_year:p({})}),p({target:a(Q),next_week:p({})}),p({target:a(Q),next_month:p({})}),p({target:a(Q),next_year:p({})}),p({target:a(Q),is_empty:i(!0)}),p({target:a(Q),is_not_empty:i(!0)})]),mr=x([p({propertyId:t(),created_by:wn}),p({propertyId:t(),title:Ce}),p({propertyId:t(),rich_text:Ce}),p({propertyId:t(),url:Ce}),p({propertyId:t(),email:Ce}),p({propertyId:t(),phone_number:Ce}),p({propertyId:t(),number:An}),p({propertyId:t(),checkbox:Tn}),p({propertyId:t(),select:yr}),p({propertyId:t(),multi_select:Fn}),p({propertyId:t(),status:Nn}),p({propertyId:t(),date:zn}),p({propertyId:t(),people:Dn})]),Hn=x([mr,p({and:O(mr)})]),We=10,Gn=p({propertyId:t(),direction:ar}),vr=r({type:i("queryDataSource"),subscriptionId:t(),dataSourceId:Z,limit:E(),filter:a(Hn),sorts:a(O(Gn))});var dr=r({type:i("resize"),height:z(E(),be(),Se(0))});var hr=r({type:i("unsubscribeDataSourceQuery"),subscriptionId:t()});var gr=r({type:i("updatePage"),requestId:t(),pageId:H,properties:a(_e),icon:a(He),cover:a(Ge),archived:a(b())});var br=h("type",[or,sr,vr,hr,ir,kt,It,Ct,Ot,gr,dr,ur]);function kr(e){if(typeof e=="object"&&e!==null&&"type"in e&&typeof e.type=="string")return e.type}function Sr(e){let o=kr(e);return o==="invalidHostMessage"||o==="invalidSandboxMessage"?{incomingType:o}:{incomingType:o,nack:{type:"invalidSandboxMessage",reason:Ln(o)}}}function Ln(e){return e!==void 0?`Unsupported sandbox message of type "${e}"`:"Unsupported sandbox message (no `type` field or non-object payload)"}var Ir=r({initializationId:t()}),Vn=r({bridgeProtocolVersion:x([E(),Ne()])});function xr(e){let{iframe:o,sandboxOrigin:n,getInitStatus:s,emit:c,sendNack:l,onInvalidConnect:f,onInvalidInitResult:y,onConnect:m,onInitResult:S,onQueryDataSource:I,onUnsubscribeDataSourceQuery:j,onCreatePage:k,onGetPage:G,onOpenPage:W,onGetUser:T,onListUsers:B,onUpdatePage:q,onResize:se}=e;function $(R,N){c("warn",{message:"Ignored unsupported sandbox message",payload:R,issues:N});let A=Sr(R);if(A.incomingType==="connect"){let J=xe(Ir,R),Y=xe(Vn,R);if(f({initializationId:J.success?J.output.initializationId:void 0,error:Lt(),bridgeProtocolVersion:Y.success?Y.output.bridgeProtocolVersion:void 0})==="handled")return}if(A.incomingType==="initResult"){let J=xe(Ir,R);y({initializationId:J.success?J.output.initializationId:void 0,error:Jt()})}A.nack!==void 0&&s()!=="stopped"&&l(A.nack)}return function(N){let A=N.source===o.contentWindow,J=N.origin===n;if(!A||!J)return;let Y=xe(br,N.data);if(!Y.success){$(N.data,Y.issues);return}let _=Y.output;if(!tr(_)&&s()!=="initialized"){c("warn",{message:`Ignored ${_.type} before initialization completed`,payload:_});return}switch(c("in",_),_.type){case"connect":m(_);return;case"initResult":S(_);return;case"queryDataSource":I(_);return;case"unsubscribeDataSourceQuery":j(_);return;case"createPage":k(_);return;case"openPage":W(_);return;case"getPage":G(_);return;case"getUser":T(_);return;case"listUsers":B(_);return;case"updatePage":q(_);return;case"resize":se(_);return;case"invalidHostMessage":return;default:ie(_)}}}var we=class{constructor(o){this.onUnsubscribe=o}onUnsubscribe;bySubscriptionId=new Map;subscribe(o){this.unsubscribe(o.subscriptionId);let n={_tag:"QuerySubscriptionToken"};return this.bySubscriptionId.set(o.subscriptionId,{message:o,token:n,isRefreshing:!0,shouldRefreshAgain:!1}),n}isCurrent(o,n){return this.bySubscriptionId.get(o)?.token===n}unsubscribe(o){this.bySubscriptionId.delete(o)&&this.onUnsubscribe(o)}refresh(o){let n=[],s=!1;for(let c of this.bySubscriptionId.values())if(c.message.dataSourceId===o){if(s=!0,c.isRefreshing){c.shouldRefreshAgain=!0;continue}c.isRefreshing=!0,n.push({message:c.message,token:c.token})}return s?n:void 0}finish(o,n){let s=this.bySubscriptionId.get(o);if(s?.token===n&&(s.isRefreshing=!1,!!s.shouldRefreshAgain))return s.shouldRefreshAgain=!1,s.isRefreshing=!0,{message:s.message,token:s.token}}unsubscribeAll(){for(let o of this.bySubscriptionId.keys())this.unsubscribe(o)}};function _r(e,o){if(e===void 0)return;let n="and"in e?e.and:[e];for(let s of n){let c=Qn(s,o);if(c!==void 0)return c}}function Qn(e,o){if(!Object.hasOwn(o.propertiesById,e.propertyId))return{code:"invalid_data_source_query_filter",message:`Data source query filter property ID "${e.propertyId}" is not defined in the bound data source schema.`,isRetryable:!1};let n=o.propertiesById[e.propertyId],s=Object.keys(e).find(y=>y!=="propertyId");if(s!==n.type)return{code:"invalid_data_source_query_filter",message:`Data source query filter branch "${s}" does not match property type "${n.type}".`,isRetryable:!1};if("status"in e&&n.type==="status"){let y=e.status;if("group_equals"in y||"group_does_not_equal"in y){let m="group_equals"in y?y.group_equals:y.group_does_not_equal,I=(Array.isArray(m)?m:[m]).find(j=>!n.groups.some(k=>k.name===j));return I===void 0?void 0:{code:"invalid_data_source_query_filter",message:`Unknown status group "${I}".`,isRetryable:!1}}}let c=$n(e);if(c===void 0||n.type!==c.propertyType)return;let l=new Set(n.options.map(y=>y.name)),f=Xn(c.operator).find(y=>!l.has(y));if(f!==void 0)return{code:"invalid_data_source_query_filter",message:`Data source query filter option "${f}" is not defined for property "${e.propertyId}".`,isRetryable:!1}}function $n(e){if("select"in e)return{propertyType:"select",operator:e.select};if("multi_select"in e)return{propertyType:"multi_select",operator:e.multi_select};if("status"in e){let o=e.status;return"group_equals"in o||"group_does_not_equal"in o?void 0:{propertyType:"status",operator:o}}}function Xn(e){let o;if("equals"in e)o=e.equals;else if("does_not_equal"in e)o=e.does_not_equal;else if("contains"in e)o=e.contains;else if("contains_all"in e)o=e.contains_all;else if("does_not_contain"in e)o=e.does_not_contain;else return"is_empty"in e||"is_not_empty"in e?[]:ie(e);return Array.isArray(o)?o:[o]}var Wn=new Set(ut);function Cr(e,o){if(e===void 0)return;if(e.length>We)return{code:"invalid_data_source_query_sort",message:`Data source query sorts may contain at most ${We} entries.`,isRetryable:!1};let n=new Set;for(let s of e){if(n.has(s.propertyId))return{code:"invalid_data_source_query_sort",message:`Data source query sorts cannot contain duplicate property ID "${s.propertyId}".`,isRetryable:!1};if(n.add(s.propertyId),!Object.hasOwn(o.propertiesById,s.propertyId))return{code:"invalid_data_source_query_sort",message:`Data source query sort property ID "${s.propertyId}" is not defined in the bound data source schema.`,isRetryable:!1};let c=o.propertiesById[s.propertyId];if(!Wn.has(c.type))return{code:"invalid_data_source_query_sort",message:`Data source query sorts do not yet support property type "${c.type}".`,isRetryable:!1}}}var Or=5;function Kn(e){let{iframe:o,getInitialState:n,handlers:s,onManifest:c,onInitialized:l,onConnectionFailure:f,onLog:y,onQueryUnsubscribed:m,sandboxOrigin:S,minBridgeProtocolVersion:I,noConnectTimeoutMs:j,initialStateTimeoutMs:k,noInitResultTimeoutMs:G}=e,W=Math.max(I??3,3),T={},B=!1,q,se,$=5,R=new we(u=>{m?.(u)});function N(u,C){y?.(u,C)}function A(u){let C=v.status;switch(C){case"waitingForConnect":case"preparingInit":case"waitingForInitResult":case"initialized":case"error":break;case"stopped":return;default:return ie(C)}let w=Yt(u,$);N("out",w),o.contentWindow?.postMessage(w,S)}function J(u){A(fe(De,u))}function Y(u){A(u)}function _(u){let C=v.status;switch(C){case"initialized":A(fe(Ht,u));return;case"waitingForConnect":case"preparingInit":case"waitingForInitResult":case"error":case"stopped":return;default:ie(C)}}async function ue(u,C){if(C===void 0)return;let w=await C(u);_({type:`${u.type}Result`,requestId:u.requestId,...w})}function je(u){let C=u.response.status==="error"?{type:"queryDataSourceResult",subscriptionId:u.subscriptionId,status:"error",error:u.response.error}:{type:"queryDataSourceResult",subscriptionId:u.subscriptionId,status:"success",items:u.response.items,hasMore:u.response.hasMore};_(C)}async function he(u,C=R.subscribe(u)){try{let w=Zn(se,u.dataSourceId),ce=Yn(u,w);if(ce!==void 0){R.isCurrent(u.subscriptionId,C)&&(R.unsubscribe(u.subscriptionId),je({subscriptionId:u.subscriptionId,response:{status:"error",error:ce}}));return}let Ae=await s.queryDataSource(u);if(!R.isCurrent(u.subscriptionId,C))return;Ae.status==="error"&&!Ae.error.isRetryable&&R.unsubscribe(u.subscriptionId),je({subscriptionId:u.subscriptionId,response:Ae})}finally{let w=R.finish(u.subscriptionId,C);w!==void 0&&he(w.message,w.token)}}function ae(u){v.status==="stopped"||v.status==="error"||(Object.assign(T,u),g())}function g(){if(v.status!=="initialized")return;let u=T;T={},u.theme!==void 0&&_({type:"themeChanged",theme:u.theme}),u.contrastMode!==void 0&&_({type:"contrastModeChanged",contrastMode:u.contrastMode}),u.parent!==void 0&&_({type:"parentChanged",parent:u.parent}),u.page!==void 0&&_({type:"pageChanged",page:u.page}),u.dataSources!==void 0&&_({type:"dataSourcesChanged",dataSources:u.dataSources}),u.currentUser!==void 0&&_({type:"currentUserChanged",currentUser:u.currentUser})}let v=Zt({async prepareInit(u){$=u.bridgeProtocolVersion;let C=await n(u);return v.status!=="preparingInit"?C:V(C)},sendInitMessage:J,warn:u=>N("warn",u),flushPendingHostStateChanges:g,minBridgeProtocolVersion:W,noConnectTimeoutMs:j,initialStateTimeoutMs:k,noInitResultTimeoutMs:G,stopHostWithFailure:Ke,onInitResult(u){u.status==="success"&&q!==void 0&&l?.({manifest:q,initialHeight:u.initialHeight})},onConnectionFailure:f});function V(u){if(u.status==="error")return u;q=fe(pe,u.initialState.manifest),c?.(q);let C={...u.initialState,...T};T={};let w={...fe(rt(er,["manifest"]),C),manifest:q};if($<Or&&w.page.type==="unavailable")return{status:"error",error:$e()};let ce=Pr(w.manifest,w.dataSources);return ce!==void 0?{status:"error",error:ce}:(se=w.dataSources,B=!0,{status:"success",initialState:w})}let ee=xr({iframe:o,sandboxOrigin:S,getInitStatus:()=>v.status,emit:N,sendNack:Y,onInvalidConnect:v.handleInvalidConnect,onInvalidInitResult:v.handleInvalidInitResult,onConnect:v.handleConnect,onInitResult:v.handleInitResult,onQueryDataSource:he,onUnsubscribeDataSourceQuery:u=>R.unsubscribe(u.subscriptionId),onCreatePage:u=>ue(u,s.createPage),onGetPage:u=>ue(u,s.getPage),onOpenPage:u=>ue(u,s.openPage),onGetUser:u=>ue(u,s.getUser),onListUsers:u=>ue(u,s.listUsers),onUpdatePage:u=>ue(u,s.updatePage),onResize:u=>s.resize?.(u)});window.addEventListener("message",ee),o.addEventListener("load",v.onIframeLoad);function Je(){window.removeEventListener("message",ee),o.removeEventListener("load",v.onIframeLoad),v.stop(),R.unsubscribeAll()}function Ke(u){Je(),N("warn",u),f?.(u)}return{stop:Je,setTheme(u){ae({theme:u})},setContrastMode(u){ae({contrastMode:u})},setParent(u){ae({parent:u})},setPage(u){if(u.type==="unavailable"&&$<Or&&(v.status==="preparingInit"&&B||v.status==="waitingForInitResult"||v.status==="initialized")){Ke($e());return}ae({page:u})},setCurrentUser(u){ae({currentUser:u})},setDataSources(u){let C={bindings:fe(le,u.bindings)};if(v.hasConnectedSandbox&&q!==void 0&&Pr(q,C)!==void 0){N("warn",{message:"Ignored invalid data source bindings update",payload:C});return}se=C,ae({dataSources:C})},refreshQuery({dataSourceId:u}){if(v.status!=="initialized")return;let C=fe(Z,u),w=R.refresh(C);if(w===void 0){N("warn",`No active query exists for data source "${u}"`);return}for(let ce of w)he(ce.message,ce.token)}}}function Zn(e,o){return Object.values(e?.bindings??{}).find(n=>n.collectionPointer?.id===o)?.collectionSchema}function Pr(e,o){for(let[n,s]of Object.entries(e.dataSources)){let c=o.bindings[n];if(c?.collectionPointer===void 0||c.collectionSchema===void 0)return Qt();for(let[l,f]of Object.entries(s.properties??{})){let y=c.propertyIdsByKey?.[l];if(y===void 0)return $t();if(c.collectionSchema.propertiesById[y]?.type!==f.type)return Xt()}}}function Yn(e,o){return o===void 0?e.filter===void 0&&(e.sorts?.length??0)===0?void 0:{code:"data_source_schema_unavailable",message:"You cannot query this data source with filters or sorts because its schema is unavailable.",isRetryable:!1}:_r(e.filter,o)??Cr(e.sorts,o)}export{Kn as createCustomBlockHost,jr as getAutoBoundPropertyIdsByKey};
@@ -48,7 +48,7 @@ export type NotionPropertyType = v.InferOutput<typeof notionPropertyTypeSchema>;
48
48
  * Keep this list narrower than {@link NOTION_PROPERTY_TYPES} when a property
49
49
  * type is exposed but its sort value is not yet represented by every host.
50
50
  */
51
- export declare const CUSTOM_BLOCK_DATA_SOURCE_SORTABLE_PROPERTY_TYPES: readonly ["title", "rich_text", "number", "checkbox", "url", "email", "phone_number", "date", "created_time", "last_edited_time"];
51
+ export declare const CUSTOM_BLOCK_DATA_SOURCE_SORTABLE_PROPERTY_TYPES: readonly ["title", "rich_text", "number", "checkbox", "url", "email", "phone_number", "date", "created_time", "last_edited_time", "people", "created_by"];
52
52
  export type CustomBlockDataSourceSortablePropertyType = (typeof CUSTOM_BLOCK_DATA_SOURCE_SORTABLE_PROPERTY_TYPES)[number];
53
53
  /**
54
54
  * Per-property schema as exposed by the host over the custom-block bridge.
@@ -100,6 +100,8 @@ export const CUSTOM_BLOCK_DATA_SOURCE_SORTABLE_PROPERTY_TYPES = [
100
100
  "date",
101
101
  "created_time",
102
102
  "last_edited_time",
103
+ "people",
104
+ "created_by",
103
105
  ];
104
106
  /**
105
107
  * Per-property schema as exposed by the host over the custom-block bridge.
@@ -0,0 +1,3 @@
1
+ import * as v from "valibot";
2
+ export declare const notionSortDirectionSchema: v.PicklistSchema<["ascending", "descending"], undefined>;
3
+ export type NotionSortDirection = v.InferOutput<typeof notionSortDirectionSchema>;
@@ -0,0 +1,2 @@
1
+ import * as v from "valibot";
2
+ export const notionSortDirectionSchema = v.picklist(["ascending", "descending"]);
@@ -13,6 +13,7 @@ export * from "./dataSources/dateValue.js";
13
13
  export * from "./dataSources/errors.js";
14
14
  export * from "./dataSources/propertySchema.js";
15
15
  export * from "./dataSources/recordPointer.js";
16
+ export * from "./dataSources/sortDirection.js";
16
17
  export * from "./errors.js";
17
18
  export * from "./ids.js";
18
19
  export * from "./manifest.js";
@@ -13,6 +13,7 @@ export * from "./dataSources/dateValue.js";
13
13
  export * from "./dataSources/errors.js";
14
14
  export * from "./dataSources/propertySchema.js";
15
15
  export * from "./dataSources/recordPointer.js";
16
+ export * from "./dataSources/sortDirection.js";
16
17
  export * from "./errors.js";
17
18
  export * from "./ids.js";
18
19
  export * from "./manifest.js";
@@ -1,4 +1,5 @@
1
1
  import * as v from "valibot";
2
+ import { notionSortDirectionSchema } from "../dataSources/sortDirection.js";
2
3
  import { notionDataSourceIdSchema } from "../ids.js";
3
4
  const emptyOperatorSchema = v.union([
4
5
  v.strictObject({ is_empty: v.literal(true) }),
@@ -218,7 +219,7 @@ export const resolvedCustomBlockDataSourceFilterSchema = v.union([
218
219
  export const CUSTOM_BLOCK_DATA_SOURCE_QUERY_MAX_SORTS = 10;
219
220
  export const resolvedCustomBlockDataSourceSortSchema = v.strictObject({
220
221
  propertyId: v.string(),
221
- direction: v.picklist(["ascending", "descending"]),
222
+ direction: notionSortDirectionSchema,
222
223
  });
223
224
  /**
224
225
  * Message sent by the sandbox to ask the host for the current rows in a resolved
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@notionhq/custom-blocks-host",
3
- "version": "0.2.12",
3
+ "version": "0.2.13",
4
4
  "description": "Reusable host runtime for Notion custom blocks.",
5
5
  "license": "MIT",
6
6
  "type": "module",