rmapi-js 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/rmapi-js.cjs.min.js +4 -4
- package/bundle/rmapi-js.esm.min.js +4 -4
- package/bundle/rmapi-js.iife.min.js +4 -4
- package/dist/index.d.ts +28 -13
- package/dist/index.js +18 -38
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var ct=Object.create;var H=Object.defineProperty;var pt=Object.getOwnPropertyDescriptor;var yt=Object.getOwnPropertyNames;var gt=Object.getPrototypeOf,mt=Object.prototype.hasOwnProperty;var d=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ht=(e,t)=>{for(var r in t)H(e,r,{get:t[r],enumerable:!0})},Pe=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of yt(t))!mt.call(e,n)&&n!==r&&H(e,n,{get:()=>t[n],enumerable:!(i=pt(t,n))||i.enumerable});return e};var Te=(e,t,r)=>(r=e!=null?ct(gt(e)):{},Pe(t||!e||!e.__esModule?H(r,"default",{value:e,enumerable:!0}):r,e)),vt=e=>Pe(H({},"__esModule",{value:!0}),e);var ue=d(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.default=xt;var bt=_t(require("crypto"));function _t(e){return e&&e.__esModule?e:{default:e}}var z=new Uint8Array(256),j=z.length;function xt(){return j>z.length-16&&(bt.default.randomFillSync(z),j=0),z.slice(j,j+=16)}});var Ee=d(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.default=void 0;var wt=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;J.default=wt});var B=d(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.default=void 0;var Pt=Tt(Ee());function Tt(e){return e&&e.__esModule?e:{default:e}}function Et(e){return typeof e=="string"&&Pt.default.test(e)}var Ot=Et;V.default=Ot});var N=d(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.default=void 0;var kt=At(B());function At(e){return e&&e.__esModule?e:{default:e}}var y=[];for(let e=0;e<256;++e)y.push((e+256).toString(16).substr(1));function St(e,t=0){let r=(y[e[t+0]]+y[e[t+1]]+y[e[t+2]]+y[e[t+3]]+"-"+y[e[t+4]]+y[e[t+5]]+"-"+y[e[t+6]]+y[e[t+7]]+"-"+y[e[t+8]]+y[e[t+9]]+"-"+y[e[t+10]]+y[e[t+11]]+y[e[t+12]]+y[e[t+13]]+y[e[t+14]]+y[e[t+15]]).toLowerCase();if(!(0,kt.default)(r))throw TypeError("Stringified UUID is invalid");return r}var Mt=St;G.default=Mt});var Ae=d(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.default=void 0;var Rt=ke(ue()),Ft=ke(N());function ke(e){return e&&e.__esModule?e:{default:e}}var Oe,le,de=0,ce=0;function qt(e,t,r){let i=t&&r||0,n=t||new Array(16);e=e||{};let s=e.node||Oe,o=e.clockseq!==void 0?e.clockseq:le;if(s==null||o==null){let l=e.random||(e.rng||Rt.default)();s==null&&(s=Oe=[l[0]|1,l[1],l[2],l[3],l[4],l[5]]),o==null&&(o=le=(l[6]<<8|l[7])&16383)}let a=e.msecs!==void 0?e.msecs:Date.now(),f=e.nsecs!==void 0?e.nsecs:ce+1,c=a-de+(f-ce)/1e4;if(c<0&&e.clockseq===void 0&&(o=o+1&16383),(c<0||a>de)&&e.nsecs===void 0&&(f=0),f>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");de=a,ce=f,le=o,a+=122192928e5;let p=((a&268435455)*1e4+f)%4294967296;n[i++]=p>>>24&255,n[i++]=p>>>16&255,n[i++]=p>>>8&255,n[i++]=p&255;let b=a/4294967296*1e4&268435455;n[i++]=b>>>8&255,n[i++]=b&255,n[i++]=b>>>24&15|16,n[i++]=b>>>16&255,n[i++]=o>>>8|128,n[i++]=o&255;for(let l=0;l<6;++l)n[i+l]=s[l];return t||(0,Ft.default)(n)}var It=qt;Y.default=It});var pe=d(Z=>{"use strict";Object.defineProperty(Z,"__esModule",{value:!0});Z.default=void 0;var Dt=Ut(B());function Ut(e){return e&&e.__esModule?e:{default:e}}function Lt(e){if(!(0,Dt.default)(e))throw TypeError("Invalid UUID");let t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var Bt=Lt;Z.default=Bt});var ye=d(O=>{"use strict";Object.defineProperty(O,"__esModule",{value:!0});O.default=Ht;O.URL=O.DNS=void 0;var Nt=Se(N()),Ct=Se(pe());function Se(e){return e&&e.__esModule?e:{default:e}}function $t(e){e=unescape(encodeURIComponent(e));let t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}var Me="6ba7b810-9dad-11d1-80b4-00c04fd430c8";O.DNS=Me;var Re="6ba7b811-9dad-11d1-80b4-00c04fd430c8";O.URL=Re;function Ht(e,t,r){function i(n,s,o,a){if(typeof n=="string"&&(n=$t(n)),typeof s=="string"&&(s=(0,Ct.default)(s)),s.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let f=new Uint8Array(16+n.length);if(f.set(s),f.set(n,s.length),f=r(f),f[6]=f[6]&15|t,f[8]=f[8]&63|128,o){a=a||0;for(let c=0;c<16;++c)o[a+c]=f[c];return o}return(0,Nt.default)(f)}try{i.name=e}catch{}return i.DNS=Me,i.URL=Re,i}});var Fe=d(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.default=void 0;var jt=zt(require("crypto"));function zt(e){return e&&e.__esModule?e:{default:e}}function Jt(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),jt.default.createHash("md5").update(e).digest()}var Vt=Jt;W.default=Vt});var Ie=d(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.default=void 0;var Gt=qe(ye()),Yt=qe(Fe());function qe(e){return e&&e.__esModule?e:{default:e}}var Zt=(0,Gt.default)("v3",48,Yt.default),Wt=Zt;K.default=Wt});var Ue=d(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.default=void 0;var Kt=De(ue()),Qt=De(N());function De(e){return e&&e.__esModule?e:{default:e}}function Xt(e,t,r){e=e||{};let i=e.random||(e.rng||Kt.default)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(let n=0;n<16;++n)t[r+n]=i[n];return t}return(0,Qt.default)(i)}var er=Xt;Q.default=er});var Le=d(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.default=void 0;var tr=rr(require("crypto"));function rr(e){return e&&e.__esModule?e:{default:e}}function nr(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),tr.default.createHash("sha1").update(e).digest()}var ir=nr;X.default=ir});var Ne=d(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.default=void 0;var sr=Be(ye()),or=Be(Le());function Be(e){return e&&e.__esModule?e:{default:e}}var ar=(0,sr.default)("v5",80,or.default),fr=ar;ee.default=fr});var Ce=d(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.default=void 0;var ur="00000000-0000-0000-0000-000000000000";te.default=ur});var $e=d(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.default=void 0;var lr=dr(B());function dr(e){return e&&e.__esModule?e:{default:e}}function cr(e){if(!(0,lr.default)(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}var pr=cr;re.default=pr});var He=d(x=>{"use strict";Object.defineProperty(x,"__esModule",{value:!0});Object.defineProperty(x,"v1",{enumerable:!0,get:function(){return yr.default}});Object.defineProperty(x,"v3",{enumerable:!0,get:function(){return gr.default}});Object.defineProperty(x,"v4",{enumerable:!0,get:function(){return mr.default}});Object.defineProperty(x,"v5",{enumerable:!0,get:function(){return hr.default}});Object.defineProperty(x,"NIL",{enumerable:!0,get:function(){return vr.default}});Object.defineProperty(x,"version",{enumerable:!0,get:function(){return br.default}});Object.defineProperty(x,"validate",{enumerable:!0,get:function(){return _r.default}});Object.defineProperty(x,"stringify",{enumerable:!0,get:function(){return xr.default}});Object.defineProperty(x,"parse",{enumerable:!0,get:function(){return wr.default}});var yr=P(Ae()),gr=P(Ie()),mr=P(Ue()),hr=P(Ne()),vr=P(Ce()),br=P($e()),_r=P(B()),xr=P(N()),wr=P(pe());function P(e){return e&&e.__esModule?e:{default:e}}});var ve=d(u=>{"use strict";var Je=u&&u.__rest||function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]]);return r};Object.defineProperty(u,"__esModule",{value:!0});u.isSchema=u.isValidSchema=u.isDiscriminatorForm=u.isValuesForm=u.isPropertiesForm=u.isElementsForm=u.isEnumForm=u.isTypeForm=u.isRefForm=u.isEmptyForm=void 0;function Pr(e){let{definitions:t,nullable:r,metadata:i}=e,n=Je(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}u.isEmptyForm=Pr;function Ve(e){return"ref"in e}u.isRefForm=Ve;function Tr(e){return"type"in e}u.isTypeForm=Tr;function Ge(e){return"enum"in e}u.isEnumForm=Ge;function Ye(e){return"elements"in e}u.isElementsForm=Ye;function he(e){return"properties"in e||"optionalProperties"in e}u.isPropertiesForm=he;function Ze(e){return"values"in e}u.isValuesForm=Ze;function We(e){return"discriminator"in e}u.isDiscriminatorForm=We;function k(e,t){if(t===void 0&&(t=e),e.definitions!==void 0){if(t!==e)return!1;for(let r of Object.values(e.definitions))if(!k(r,t))return!1}if(Ve(e)&&!(e.ref in(t.definitions||{}))||Ge(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(Ye(e))return k(e.elements,t);if(he(e)){for(let r of Object.values(e.properties||{}))if(!k(r,t))return!1;for(let r of Object.values(e.optionalProperties||{}))if(!k(r,t))return!1;for(let r of Object.keys(e.properties||{}))if(r in(e.optionalProperties||{}))return!1}if(Ze(e))return k(e.values,t);if(We(e)){for(let r of Object.values(e.mapping))if(!k(r,t)||!he(r)||r.nullable||e.discriminator in(r.properties||{})||e.discriminator in(r.optionalProperties||{}))return!1}return!0}u.isValidSchema=k;var Er=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],Or=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function A(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let t=e,{definitions:r=void 0,nullable:i=void 0,metadata:n=void 0,ref:s=void 0,type:o=void 0,enum:a=void 0,elements:f=void 0,properties:c=void 0,optionalProperties:p=void 0,additionalProperties:b=void 0,values:l=void 0,discriminator:I=void 0,mapping:_=void 0}=t,se=Je(t,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),D=[s!==void 0,o!==void 0,a!==void 0,f!==void 0,c!==void 0,p!==void 0,b!==void 0,l!==void 0,I!==void 0,_!==void 0],L=!1;for(let v of Er)L=L||v.every((oe,ae)=>oe===D[ae]);if(!L)return!1;if(r!==void 0){if(typeof r!="object"||Array.isArray(r)||r===null)return!1;for(let v of Object.values(r))if(!A(v))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||s!==void 0&&typeof s!="string"||o!==void 0&&(typeof o!="string"||!Or.includes(o))||a!==void 0&&(!Array.isArray(a)||!a.every(v=>typeof v=="string"))||f!==void 0&&!A(f))return!1;if(c!==void 0){if(typeof c!="object"||Array.isArray(c)||c===null)return!1;for(let v of Object.values(c))if(!A(v))return!1}if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let v of Object.values(p))if(!A(v))return!1}if(b!==void 0&&typeof b!="boolean"||l!==void 0&&!A(l)||I!==void 0&&typeof I!="string")return!1;if(_!==void 0){if(typeof _!="object"||Array.isArray(_)||_===null)return!1;for(let v of Object.values(_))if(!A(v))return!1}return Object.keys(se).length===0}u.isSchema=A});var Ke=d(be=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});var kr=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function Ar(e){let t=e.match(kr);if(t===null)return!1;let r=parseInt(t[1],10),i=parseInt(t[2],10),n=parseInt(t[3],10),s=parseInt(t[4],10),o=parseInt(t[5],10),a=parseInt(t[6],10);return!(i>12||n>Sr(r,i)||s>23||o>59||a>60)}be.default=Ar;function Sr(e,t){return t===2?Mr(e)?29:28:Rr[t]}function Mr(e){return e%4===0&&(e%100!==0||e%400===0)}var Rr=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Qe=d(T=>{"use strict";var Fr=T&&T.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(T,"__esModule",{value:!0});T.validate=T.MaxDepthExceededError=void 0;var qr=Fr(Ke()),S=ve(),ne=class extends Error{};T.MaxDepthExceededError=ne;var ie=class extends Error{};function Ir(e,t,r){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:r||{maxDepth:0,maxErrors:0}};try{F(i,e,t)}catch(n){if(!(n instanceof ie))throw n}return i.errors}T.validate=Ir;function F(e,t,r,i){if(!(t.nullable&&r===null)){if(S.isRefForm(t)){if(e.schemaTokens.length===e.config.maxDepth)throw new ne;e.schemaTokens.push(["definitions",t.ref]),F(e,e.root.definitions[t.ref],r),e.schemaTokens.pop()}else if(S.isTypeForm(t)){switch(g(e,"type"),t.type){case"boolean":typeof r!="boolean"&&m(e);break;case"float32":case"float64":typeof r!="number"&&m(e);break;case"int8":U(e,r,-128,127);break;case"uint8":U(e,r,0,255);break;case"int16":U(e,r,-32768,32767);break;case"uint16":U(e,r,0,65535);break;case"int32":U(e,r,-2147483648,2147483647);break;case"uint32":U(e,r,0,4294967295);break;case"string":typeof r!="string"&&m(e);break;case"timestamp":typeof r!="string"?m(e):qr.default(r)||m(e);break}h(e)}else if(S.isEnumForm(t))g(e,"enum"),(typeof r!="string"||!t.enum.includes(r))&&m(e),h(e);else if(S.isElementsForm(t)){if(g(e,"elements"),Array.isArray(r))for(let[n,s]of r.entries())M(e,n.toString()),F(e,t.elements,s),R(e);else m(e);h(e)}else if(S.isPropertiesForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r)){if(t.properties!==void 0){g(e,"properties");for(let[n,s]of Object.entries(t.properties))g(e,n),r.hasOwnProperty(n)?(M(e,n),F(e,s,r[n]),R(e)):m(e),h(e);h(e)}if(t.optionalProperties!==void 0){g(e,"optionalProperties");for(let[n,s]of Object.entries(t.optionalProperties))g(e,n),r.hasOwnProperty(n)&&(M(e,n),F(e,s,r[n]),R(e)),h(e);h(e)}if(t.additionalProperties!==!0)for(let n of Object.keys(r)){let s=t.properties&&n in t.properties,o=t.optionalProperties&&n in t.optionalProperties;!s&&!o&&n!==i&&(M(e,n),m(e),R(e))}}else t.properties!==void 0?g(e,"properties"):g(e,"optionalProperties"),m(e),h(e);else if(S.isValuesForm(t)){if(g(e,"values"),typeof r=="object"&&r!==null&&!Array.isArray(r))for(let[n,s]of Object.entries(r))M(e,n),F(e,t.values,s),R(e);else m(e);h(e)}else if(S.isDiscriminatorForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r))if(r.hasOwnProperty(t.discriminator)){let n=r[t.discriminator];typeof n=="string"?n in t.mapping?(g(e,"mapping"),g(e,n),F(e,t.mapping[n],r,t.discriminator),h(e),h(e)):(g(e,"mapping"),M(e,t.discriminator),m(e),R(e),h(e)):(g(e,"discriminator"),M(e,t.discriminator),m(e),R(e),h(e))}else g(e,"discriminator"),m(e),h(e);else g(e,"discriminator"),m(e),h(e)}}function U(e,t,r,i){(typeof t!="number"||!Number.isInteger(t)||t<r||t>i)&&m(e)}function M(e,t){e.instanceTokens.push(t)}function R(e){e.instanceTokens.pop()}function g(e,t){e.schemaTokens[e.schemaTokens.length-1].push(t)}function h(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function m(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new ie}});var et=d(E=>{"use strict";var Dr=E&&E.__createBinding||(Object.create?function(e,t,r,i){i===void 0&&(i=r),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,i){i===void 0&&(i=r),e[i]=t[r]}),Xe=E&&E.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&Dr(t,e,r)};Object.defineProperty(E,"__esModule",{value:!0});Xe(ve(),E);Xe(Qe(),E)});var Vr={};ht(Vr,{GenerationError:()=>C,ResponseError:()=>q,builtinFontNames:()=>Nr,builtinLineHeights:()=>ut,builtinMargins:()=>ft,builtinTextScales:()=>at,builtinTools:()=>Br,register:()=>Hr,remarkable:()=>Jr});module.exports=vt(Vr);var w=Te(He(),1),ln=w.default.v1,dn=w.default.v3,ge=w.default.v4,cn=w.default.v5,pn=w.default.NIL,yn=w.default.version,gn=w.default.validate,mn=w.default.stringify,hn=w.default.parse;function me(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,"0")).join("")}function je(e){return new Uint8Array((e.match(/../g)??[]).map(t=>parseInt(t,16)))}function ze(e){let t=0;for(let n of e)t+=n.length;let r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}var tt=Te(et());function _e(e,t){if((0,tt.validate)(e,t).length)throw new Error(`couldn't validate schema: ${JSON.stringify(t)} didn't match schema ${JSON.stringify(e)}`)}var rt="3",ot="https://webapp-production-dot-remarkable-production.appspot.com",Ur="https://rm-blob-storage-prod.appspot.com",nt="x-goog-generation",Lr="x-goog-if-generation-match",Br=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],Nr=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],at={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},ft={sm:50,md:125,rr:180,lg:200},ut={df:-1,md:100,lg:150,xl:200},Cr={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},it={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},st={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},$r={discriminator:"type",mapping:{CollectionType:{properties:it,optionalProperties:st},DocumentType:{properties:it,optionalProperties:{...st,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},q=class extends Error{constructor(r,i,n){super(n);this.status=r,this.statusText=i}},C=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function Hr(e,{deviceDesc:t="desktop-linux",uuid:r=ge(),authUrl:i=ot,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let s=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:t,deviceID:r})});if(s.ok)return await s.text();throw new q(s.status,s.statusText,"couldn't register api")}function jr({hash:e,type:t,documentId:r,subfiles:i,size:n}){return`${e}:${t}:${r}:${i}:${n}
|
|
2
|
-
`}function
|
|
3
|
-
`);if(i!==
|
|
4
|
-
${
|
|
1
|
+
var lt=Object.create;var N=Object.defineProperty;var dt=Object.getOwnPropertyDescriptor;var ct=Object.getOwnPropertyNames;var pt=Object.getPrototypeOf,gt=Object.prototype.hasOwnProperty;var d=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yt=(e,t)=>{for(var r in t)N(e,r,{get:t[r],enumerable:!0})},be=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ct(t))!gt.call(e,n)&&n!==r&&N(e,n,{get:()=>t[n],enumerable:!(i=dt(t,n))||i.enumerable});return e};var xe=(e,t,r)=>(r=e!=null?lt(pt(e)):{},be(t||!e||!e.__esModule?N(r,"default",{value:e,enumerable:!0}):r,e)),mt=e=>be(N({},"__esModule",{value:!0}),e);var ae=d(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.default=bt;var ht=vt(require("crypto"));function vt(e){return e&&e.__esModule?e:{default:e}}var $=new Uint8Array(256),C=$.length;function bt(){return C>$.length-16&&(ht.default.randomFillSync($),C=0),$.slice(C,C+=16)}});var _e=d(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.default=void 0;var xt=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;H.default=xt});var B=d(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.default=void 0;var _t=Pt(_e());function Pt(e){return e&&e.__esModule?e:{default:e}}function wt(e){return typeof e=="string"&&_t.default.test(e)}var Tt=wt;j.default=Tt});var L=d(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.default=void 0;var Ot=Et(B());function Et(e){return e&&e.__esModule?e:{default:e}}var g=[];for(let e=0;e<256;++e)g.push((e+256).toString(16).substr(1));function kt(e,t=0){let r=(g[e[t+0]]+g[e[t+1]]+g[e[t+2]]+g[e[t+3]]+"-"+g[e[t+4]]+g[e[t+5]]+"-"+g[e[t+6]]+g[e[t+7]]+"-"+g[e[t+8]]+g[e[t+9]]+"-"+g[e[t+10]]+g[e[t+11]]+g[e[t+12]]+g[e[t+13]]+g[e[t+14]]+g[e[t+15]]).toLowerCase();if(!(0,Ot.default)(r))throw TypeError("Stringified UUID is invalid");return r}var At=kt;J.default=At});var Te=d(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.default=void 0;var St=we(ae()),Mt=we(L());function we(e){return e&&e.__esModule?e:{default:e}}var Pe,oe,fe=0,ue=0;function Rt(e,t,r){let i=t&&r||0,n=t||new Array(16);e=e||{};let s=e.node||Pe,a=e.clockseq!==void 0?e.clockseq:oe;if(s==null||a==null){let l=e.random||(e.rng||St.default)();s==null&&(s=Pe=[l[0]|1,l[1],l[2],l[3],l[4],l[5]]),a==null&&(a=oe=(l[6]<<8|l[7])&16383)}let o=e.msecs!==void 0?e.msecs:Date.now(),f=e.nsecs!==void 0?e.nsecs:ue+1,c=o-fe+(f-ue)/1e4;if(c<0&&e.clockseq===void 0&&(a=a+1&16383),(c<0||o>fe)&&e.nsecs===void 0&&(f=0),f>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");fe=o,ue=f,oe=a,o+=122192928e5;let p=((o&268435455)*1e4+f)%4294967296;n[i++]=p>>>24&255,n[i++]=p>>>16&255,n[i++]=p>>>8&255,n[i++]=p&255;let v=o/4294967296*1e4&268435455;n[i++]=v>>>8&255,n[i++]=v&255,n[i++]=v>>>24&15|16,n[i++]=v>>>16&255,n[i++]=a>>>8|128,n[i++]=a&255;for(let l=0;l<6;++l)n[i+l]=s[l];return t||(0,Mt.default)(n)}var Ft=Rt;z.default=Ft});var le=d(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.default=void 0;var qt=It(B());function It(e){return e&&e.__esModule?e:{default:e}}function Dt(e){if(!(0,qt.default)(e))throw TypeError("Invalid UUID");let t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var Ut=Dt;V.default=Ut});var de=d(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.default=Ct;E.URL=E.DNS=void 0;var Bt=Oe(L()),Lt=Oe(le());function Oe(e){return e&&e.__esModule?e:{default:e}}function Nt(e){e=unescape(encodeURIComponent(e));let t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}var Ee="6ba7b810-9dad-11d1-80b4-00c04fd430c8";E.DNS=Ee;var ke="6ba7b811-9dad-11d1-80b4-00c04fd430c8";E.URL=ke;function Ct(e,t,r){function i(n,s,a,o){if(typeof n=="string"&&(n=Nt(n)),typeof s=="string"&&(s=(0,Lt.default)(s)),s.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let f=new Uint8Array(16+n.length);if(f.set(s),f.set(n,s.length),f=r(f),f[6]=f[6]&15|t,f[8]=f[8]&63|128,a){o=o||0;for(let c=0;c<16;++c)a[o+c]=f[c];return a}return(0,Bt.default)(f)}try{i.name=e}catch{}return i.DNS=Ee,i.URL=ke,i}});var Ae=d(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.default=void 0;var $t=Ht(require("crypto"));function Ht(e){return e&&e.__esModule?e:{default:e}}function jt(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),$t.default.createHash("md5").update(e).digest()}var Jt=jt;G.default=Jt});var Me=d(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.default=void 0;var zt=Se(de()),Vt=Se(Ae());function Se(e){return e&&e.__esModule?e:{default:e}}var Gt=(0,zt.default)("v3",48,Vt.default),Yt=Gt;Y.default=Yt});var Fe=d(Z=>{"use strict";Object.defineProperty(Z,"__esModule",{value:!0});Z.default=void 0;var Zt=Re(ae()),Wt=Re(L());function Re(e){return e&&e.__esModule?e:{default:e}}function Kt(e,t,r){e=e||{};let i=e.random||(e.rng||Zt.default)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(let n=0;n<16;++n)t[r+n]=i[n];return t}return(0,Wt.default)(i)}var Qt=Kt;Z.default=Qt});var qe=d(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.default=void 0;var Xt=er(require("crypto"));function er(e){return e&&e.__esModule?e:{default:e}}function tr(e){return Array.isArray(e)?e=Buffer.from(e):typeof e=="string"&&(e=Buffer.from(e,"utf8")),Xt.default.createHash("sha1").update(e).digest()}var rr=tr;W.default=rr});var De=d(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.default=void 0;var nr=Ie(de()),ir=Ie(qe());function Ie(e){return e&&e.__esModule?e:{default:e}}var sr=(0,nr.default)("v5",80,ir.default),ar=sr;K.default=ar});var Ue=d(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.default=void 0;var or="00000000-0000-0000-0000-000000000000";Q.default=or});var Be=d(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.default=void 0;var fr=ur(B());function ur(e){return e&&e.__esModule?e:{default:e}}function lr(e){if(!(0,fr.default)(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}var dr=lr;X.default=dr});var Le=d(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});Object.defineProperty(_,"v1",{enumerable:!0,get:function(){return cr.default}});Object.defineProperty(_,"v3",{enumerable:!0,get:function(){return pr.default}});Object.defineProperty(_,"v4",{enumerable:!0,get:function(){return gr.default}});Object.defineProperty(_,"v5",{enumerable:!0,get:function(){return yr.default}});Object.defineProperty(_,"NIL",{enumerable:!0,get:function(){return mr.default}});Object.defineProperty(_,"version",{enumerable:!0,get:function(){return hr.default}});Object.defineProperty(_,"validate",{enumerable:!0,get:function(){return vr.default}});Object.defineProperty(_,"stringify",{enumerable:!0,get:function(){return br.default}});Object.defineProperty(_,"parse",{enumerable:!0,get:function(){return xr.default}});var cr=w(Te()),pr=w(Me()),gr=w(Fe()),yr=w(De()),mr=w(Ue()),hr=w(Be()),vr=w(B()),br=w(L()),xr=w(le());function w(e){return e&&e.__esModule?e:{default:e}}});var ye=d(u=>{"use strict";var $e=u&&u.__rest||function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]]);return r};Object.defineProperty(u,"__esModule",{value:!0});u.isSchema=u.isValidSchema=u.isDiscriminatorForm=u.isValuesForm=u.isPropertiesForm=u.isElementsForm=u.isEnumForm=u.isTypeForm=u.isRefForm=u.isEmptyForm=void 0;function _r(e){let{definitions:t,nullable:r,metadata:i}=e,n=$e(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}u.isEmptyForm=_r;function He(e){return"ref"in e}u.isRefForm=He;function Pr(e){return"type"in e}u.isTypeForm=Pr;function je(e){return"enum"in e}u.isEnumForm=je;function Je(e){return"elements"in e}u.isElementsForm=Je;function ge(e){return"properties"in e||"optionalProperties"in e}u.isPropertiesForm=ge;function ze(e){return"values"in e}u.isValuesForm=ze;function Ve(e){return"discriminator"in e}u.isDiscriminatorForm=Ve;function k(e,t){if(t===void 0&&(t=e),e.definitions!==void 0){if(t!==e)return!1;for(let r of Object.values(e.definitions))if(!k(r,t))return!1}if(He(e)&&!(e.ref in(t.definitions||{}))||je(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(Je(e))return k(e.elements,t);if(ge(e)){for(let r of Object.values(e.properties||{}))if(!k(r,t))return!1;for(let r of Object.values(e.optionalProperties||{}))if(!k(r,t))return!1;for(let r of Object.keys(e.properties||{}))if(r in(e.optionalProperties||{}))return!1}if(ze(e))return k(e.values,t);if(Ve(e)){for(let r of Object.values(e.mapping))if(!k(r,t)||!ge(r)||r.nullable||e.discriminator in(r.properties||{})||e.discriminator in(r.optionalProperties||{}))return!1}return!0}u.isValidSchema=k;var wr=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],Tr=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function A(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let t=e,{definitions:r=void 0,nullable:i=void 0,metadata:n=void 0,ref:s=void 0,type:a=void 0,enum:o=void 0,elements:f=void 0,properties:c=void 0,optionalProperties:p=void 0,additionalProperties:v=void 0,values:l=void 0,discriminator:D=void 0,mapping:b=void 0}=t,ne=$e(t,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),ie=[s!==void 0,a!==void 0,o!==void 0,f!==void 0,c!==void 0,p!==void 0,v!==void 0,l!==void 0,D!==void 0,b!==void 0],U=!1;for(let x of wr)U=U||x.every((ft,ut)=>ft===ie[ut]);if(!U)return!1;if(r!==void 0){if(typeof r!="object"||Array.isArray(r)||r===null)return!1;for(let x of Object.values(r))if(!A(x))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||s!==void 0&&typeof s!="string"||a!==void 0&&(typeof a!="string"||!Tr.includes(a))||o!==void 0&&(!Array.isArray(o)||!o.every(x=>typeof x=="string"))||f!==void 0&&!A(f))return!1;if(c!==void 0){if(typeof c!="object"||Array.isArray(c)||c===null)return!1;for(let x of Object.values(c))if(!A(x))return!1}if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let x of Object.values(p))if(!A(x))return!1}if(v!==void 0&&typeof v!="boolean"||l!==void 0&&!A(l)||D!==void 0&&typeof D!="string")return!1;if(b!==void 0){if(typeof b!="object"||Array.isArray(b)||b===null)return!1;for(let x of Object.values(b))if(!A(x))return!1}return Object.keys(ne).length===0}u.isSchema=A});var Ge=d(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});var Or=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function Er(e){let t=e.match(Or);if(t===null)return!1;let r=parseInt(t[1],10),i=parseInt(t[2],10),n=parseInt(t[3],10),s=parseInt(t[4],10),a=parseInt(t[5],10),o=parseInt(t[6],10);return!(i>12||n>kr(r,i)||s>23||a>59||o>60)}me.default=Er;function kr(e,t){return t===2?Ar(e)?29:28:Sr[t]}function Ar(e){return e%4===0&&(e%100!==0||e%400===0)}var Sr=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Ye=d(T=>{"use strict";var Mr=T&&T.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(T,"__esModule",{value:!0});T.validate=T.MaxDepthExceededError=void 0;var Rr=Mr(Ge()),S=ye(),ee=class extends Error{};T.MaxDepthExceededError=ee;var te=class extends Error{};function Fr(e,t,r){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:r||{maxDepth:0,maxErrors:0}};try{F(i,e,t)}catch(n){if(!(n instanceof te))throw n}return i.errors}T.validate=Fr;function F(e,t,r,i){if(!(t.nullable&&r===null)){if(S.isRefForm(t)){if(e.schemaTokens.length===e.config.maxDepth)throw new ee;e.schemaTokens.push(["definitions",t.ref]),F(e,e.root.definitions[t.ref],r),e.schemaTokens.pop()}else if(S.isTypeForm(t)){switch(y(e,"type"),t.type){case"boolean":typeof r!="boolean"&&m(e);break;case"float32":case"float64":typeof r!="number"&&m(e);break;case"int8":I(e,r,-128,127);break;case"uint8":I(e,r,0,255);break;case"int16":I(e,r,-32768,32767);break;case"uint16":I(e,r,0,65535);break;case"int32":I(e,r,-2147483648,2147483647);break;case"uint32":I(e,r,0,4294967295);break;case"string":typeof r!="string"&&m(e);break;case"timestamp":typeof r!="string"?m(e):Rr.default(r)||m(e);break}h(e)}else if(S.isEnumForm(t))y(e,"enum"),(typeof r!="string"||!t.enum.includes(r))&&m(e),h(e);else if(S.isElementsForm(t)){if(y(e,"elements"),Array.isArray(r))for(let[n,s]of r.entries())M(e,n.toString()),F(e,t.elements,s),R(e);else m(e);h(e)}else if(S.isPropertiesForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r)){if(t.properties!==void 0){y(e,"properties");for(let[n,s]of Object.entries(t.properties))y(e,n),r.hasOwnProperty(n)?(M(e,n),F(e,s,r[n]),R(e)):m(e),h(e);h(e)}if(t.optionalProperties!==void 0){y(e,"optionalProperties");for(let[n,s]of Object.entries(t.optionalProperties))y(e,n),r.hasOwnProperty(n)&&(M(e,n),F(e,s,r[n]),R(e)),h(e);h(e)}if(t.additionalProperties!==!0)for(let n of Object.keys(r)){let s=t.properties&&n in t.properties,a=t.optionalProperties&&n in t.optionalProperties;!s&&!a&&n!==i&&(M(e,n),m(e),R(e))}}else t.properties!==void 0?y(e,"properties"):y(e,"optionalProperties"),m(e),h(e);else if(S.isValuesForm(t)){if(y(e,"values"),typeof r=="object"&&r!==null&&!Array.isArray(r))for(let[n,s]of Object.entries(r))M(e,n),F(e,t.values,s),R(e);else m(e);h(e)}else if(S.isDiscriminatorForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r))if(r.hasOwnProperty(t.discriminator)){let n=r[t.discriminator];typeof n=="string"?n in t.mapping?(y(e,"mapping"),y(e,n),F(e,t.mapping[n],r,t.discriminator),h(e),h(e)):(y(e,"mapping"),M(e,t.discriminator),m(e),R(e),h(e)):(y(e,"discriminator"),M(e,t.discriminator),m(e),R(e),h(e))}else y(e,"discriminator"),m(e),h(e);else y(e,"discriminator"),m(e),h(e)}}function I(e,t,r,i){(typeof t!="number"||!Number.isInteger(t)||t<r||t>i)&&m(e)}function M(e,t){e.instanceTokens.push(t)}function R(e){e.instanceTokens.pop()}function y(e,t){e.schemaTokens[e.schemaTokens.length-1].push(t)}function h(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function m(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new te}});var We=d(O=>{"use strict";var qr=O&&O.__createBinding||(Object.create?function(e,t,r,i){i===void 0&&(i=r),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,i){i===void 0&&(i=r),e[i]=t[r]}),Ze=O&&O.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&qr(t,e,r)};Object.defineProperty(O,"__esModule",{value:!0});Ze(ye(),O);Ze(Ye(),O)});var Hr={};yt(Hr,{GenerationError:()=>re,ResponseError:()=>q,builtinFontNames:()=>Br,builtinLineHeights:()=>st,builtinMargins:()=>it,builtinTextScales:()=>nt,builtinTools:()=>Ur,formatEntry:()=>at,parseEntry:()=>ot,register:()=>Cr,remarkable:()=>$r});module.exports=mt(Hr);var P=xe(Le(),1),an=P.default.v1,on=P.default.v3,ce=P.default.v4,fn=P.default.v5,un=P.default.NIL,ln=P.default.version,dn=P.default.validate,cn=P.default.stringify,pn=P.default.parse;function pe(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,"0")).join("")}function Ne(e){return new Uint8Array((e.match(/../g)??[]).map(t=>parseInt(t,16)))}function Ce(e){let t=0;for(let n of e)t+=n.length;let r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}var Ke=xe(We());function he(e,t){if((0,Ke.validate)(e,t).length)throw new Error(`couldn't validate schema: ${JSON.stringify(t)} didn't match schema ${JSON.stringify(e)}`)}var Qe="3",rt="https://webapp-production-dot-remarkable-production.appspot.com",Ir="https://rm-blob-storage-prod.appspot.com",Xe="x-goog-generation",Dr="x-goog-if-generation-match",Ur=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],Br=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],nt={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},it={sm:50,md:125,rr:180,lg:200},st={df:-1,md:100,lg:150,xl:200},Lr={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},et={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},tt={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},Nr={discriminator:"type",mapping:{CollectionType:{properties:et,optionalProperties:tt},DocumentType:{properties:et,optionalProperties:{...tt,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},q=class extends Error{constructor(r,i,n){super(n);this.status=r,this.statusText=i}},re=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function Cr(e,{deviceDesc:t="desktop-linux",uuid:r=ce(),authUrl:i=rt,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let s=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:t,deviceID:r})});if(s.ok)return await s.text();throw new q(s.status,s.statusText,"couldn't register api")}function at({hash:e,type:t,documentId:r,subfiles:i,size:n}){return`${e}:${t}:${r}:${i}:${n}
|
|
2
|
+
`}function ot(e){let[t,r,i,n,s]=e.split(":");if(t===void 0||r===void 0||i===void 0||n===void 0||s===void 0)throw new Error(`entries line didn't contain five fields: '${e}'`);if(r==="80000000")return{hash:t,type:r,documentId:i,subfiles:parseInt(n),size:BigInt(s)};if(r==="0"){if(n!=="0")throw new Error(`file type entry had nonzero number of subfiles: ${n}`);return{hash:t,type:r,documentId:i,subfiles:0,size:BigInt(s)}}else throw new Error(`entries line contained invalid type: ${r}`)}var ve=class{constructor(t,r,i,n,s){this.userToken=t;this.fetch=r;this.cache=i;this.subtle=n;this.blobUrl=s}async authedFetch(t,r,i="POST"){let n=await this.fetch(t,{method:i,headers:{Authorization:`Bearer ${this.userToken}`},body:r&&JSON.stringify(r)});if(n.ok)return n;throw new q(n.status,n.statusText,"failed reMarkable request")}async signedFetch({url:t,method:r},i,n){let s=await this.fetch(t,{method:r,body:i,headers:n});if(s.ok)return s;{let a=await s.text();throw new q(s.status,s.statusText,a)}}async getUrl(t,r){let i=r===void 0?"downloads":"uploads",n=r==null?void 0:`${r}`,a=await(await this.authedFetch(`${this.blobUrl}/api/v1/signed-urls/${i}`,{http_method:n===void 0?"GET":"PUT",relative_path:t,generation:n})).text(),o=JSON.parse(a);return he(Lr,o),o}async syncComplete(){await this.authedFetch(`${this.blobUrl}/api/v1/sync-complete`)}async getRootHash(){let t=await this.getUrl("root"),r=await this.signedFetch(t),i=r.headers.get(Xe);if(!i)throw new Error("no generation header in root hash");return[await r.text(),BigInt(i)]}async putRootHash(t,r){let i=await this.getUrl("root",r),n;try{n=await this.signedFetch(i,t,{[Dr]:`${r}`})}catch(a){throw a instanceof q&&a.status===412?new re:a}let s=n.headers.get(Xe);if(!s)throw new Error("no generation header in root hash");return BigInt(s)}async getBuffer(t){let r=await this.getUrl(t);return await(await this.signedFetch(r)).arrayBuffer()}async getText(t){let r=this.cache&&await this.cache.get(t);if(r)return r;{let i=await this.getUrl(t),s=await(await this.signedFetch(i)).text();return this.cache&&await this.cache.set(t,s),s}}async getMetadata(t){let r=await this.getText(t),i=JSON.parse(r);return he(Nr,i),i}async getEntries(t){let r=await this.getText(t),[i,...n]=r.slice(0,-1).split(`
|
|
3
|
+
`);if(i!==Qe)throw new Error(`got unexpected schema version: ${i}`);return n.map(ot)}async putHash(t,r){let i=await this.getUrl(t,null);await this.signedFetch(i,r)}async putEntries(t,r){let i=new TextEncoder;r.sort((p,v)=>p.documentId.localeCompare(v.documentId));let n=Ce(r.map(p=>Ne(p.hash))),s=await this.subtle.digest("SHA-256",n),a=pe(s),o=r.map(at).join(""),f=`${Qe}
|
|
4
|
+
${o}`,c=i.encode(f);return await this.putHash(a,c),this.cache&&await this.cache.set(a,f),{hash:a,type:"80000000",documentId:t,subfiles:r.length,size:0n}}async putBuffer(t,r){let i=await this.subtle.digest("SHA-256",r),n=pe(i);return await this.putHash(n,r),{hash:n,type:"0",documentId:t,subfiles:0,size:BigInt(r.length)}}async putText(t,r){let i=new TextEncoder,n=await this.putBuffer(t,i.encode(r));return this.cache&&await this.cache.set(n.hash,r),n}async putEpub(t,r,{parent:i="",margins:n=125,orientation:s,textAlignment:a,textScale:o=1,lineHeight:f=-1,fontName:c="",cover:p="visited",lastTool:v}={}){let l=ce(),D=`${new Date().valueOf()}`,b=[];b.push(this.putBuffer(`${l}.epub`,r));let ne={type:"DocumentType",visibleName:t,version:0,parent:i,synced:!0,lastModified:D};b.push(this.putText(`${l}.metadata`,JSON.stringify(ne)));let ie={dummyDocument:!1,extraMetadata:{LastTool:v},fileType:"epub",pageCount:0,lastOpenedPage:0,lineHeight:typeof f=="string"?st[f]:f,margins:typeof n=="string"?it[n]:n,textScale:typeof o=="string"?nt[o]:o,pages:[],coverPageNumber:p==="first"?0:-1,formatVersion:1,orientation:s,textAlignment:a,fontName:c};b.push(this.putText(`${l}.content`,JSON.stringify(ie)));let U=await Promise.all(b);return await this.putEntries(l,U)}};async function $r(e,{fetch:t=globalThis.fetch,cache:r,subtle:i=globalThis.crypto?.subtle,authUrl:n=rt,blobUrl:s=Ir}={}){let a=await t(`${n}/token/json/2/user/new`,{method:"POST",headers:{Authorization:`Bearer ${e}`}});if(!a.ok)throw new Error(`couldn't fetch auth token: ${a.statusText}`);let o=await a.text();return new ve(o,t,r,i,s)}0&&(module.exports={GenerationError,ResponseError,builtinFontNames,builtinLineHeights,builtinMargins,builtinTextScales,builtinTools,formatEntry,parseEntry,register,remarkable});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Ce=Object.create;var ue=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var je=Object.getOwnPropertyNames;var De=Object.getPrototypeOf,Ne=Object.prototype.hasOwnProperty;var q=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var $e=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of je(r))!Ne.call(e,n)&&n!==t&&ue(e,n,{get:()=>r[n],enumerable:!(i=Le(r,n))||i.enumerable});return e};var He=(e,r,t)=>(t=e!=null?Ce(De(e)):{},$e(r||!e||!e.__esModule?ue(t,"default",{value:e,enumerable:!0}):t,e));var oe=q(l=>{"use strict";var ye=l&&l.__rest||function(e,r){var t={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.indexOf(i)<0&&(t[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)r.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(t[i[n]]=e[i[n]]);return t};Object.defineProperty(l,"__esModule",{value:!0});l.isSchema=l.isValidSchema=l.isDiscriminatorForm=l.isValuesForm=l.isPropertiesForm=l.isElementsForm=l.isEnumForm=l.isTypeForm=l.isRefForm=l.isEmptyForm=void 0;function rt(e){let{definitions:r,nullable:t,metadata:i}=e,n=ye(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}l.isEmptyForm=rt;function ve(e){return"ref"in e}l.isRefForm=ve;function nt(e){return"type"in e}l.isTypeForm=nt;function be(e){return"enum"in e}l.isEnumForm=be;function xe(e){return"elements"in e}l.isElementsForm=xe;function ie(e){return"properties"in e||"optionalProperties"in e}l.isPropertiesForm=ie;function we(e){return"values"in e}l.isValuesForm=we;function Te(e){return"discriminator"in e}l.isDiscriminatorForm=Te;function C(e,r){if(r===void 0&&(r=e),e.definitions!==void 0){if(r!==e)return!1;for(let t of Object.values(e.definitions))if(!C(t,r))return!1}if(ve(e)&&!(e.ref in(r.definitions||{}))||be(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(xe(e))return C(e.elements,r);if(ie(e)){for(let t of Object.values(e.properties||{}))if(!C(t,r))return!1;for(let t of Object.values(e.optionalProperties||{}))if(!C(t,r))return!1;for(let t of Object.keys(e.properties||{}))if(t in(e.optionalProperties||{}))return!1}if(we(e))return C(e.values,r);if(Te(e)){for(let t of Object.values(e.mapping))if(!C(t,r)||!ie(t)||t.nullable||e.discriminator in(t.properties||{})||e.discriminator in(t.optionalProperties||{}))return!1}return!0}l.isValidSchema=C;var it=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],ot=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function L(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let r=e,{definitions:t=void 0,nullable:i=void 0,metadata:n=void 0,ref:o=void 0,type:s=void 0,enum:f=void 0,elements:a=void 0,properties:d=void 0,optionalProperties:u=void 0,additionalProperties:E=void 0,values:T=void 0,discriminator:P=void 0,mapping:p=void 0}=r,S=ye(r,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),A=[o!==void 0,s!==void 0,f!==void 0,a!==void 0,d!==void 0,u!==void 0,E!==void 0,T!==void 0,P!==void 0,p!==void 0],k=!1;for(let c of it)k=k||c.every((U,O)=>U===A[O]);if(!k)return!1;if(t!==void 0){if(typeof t!="object"||Array.isArray(t)||t===null)return!1;for(let c of Object.values(t))if(!L(c))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||o!==void 0&&typeof o!="string"||s!==void 0&&(typeof s!="string"||!ot.includes(s))||f!==void 0&&(!Array.isArray(f)||!f.every(c=>typeof c=="string"))||a!==void 0&&!L(a))return!1;if(d!==void 0){if(typeof d!="object"||Array.isArray(d)||d===null)return!1;for(let c of Object.values(d))if(!L(c))return!1}if(u!==void 0){if(typeof u!="object"||Array.isArray(u)||u===null)return!1;for(let c of Object.values(u))if(!L(c))return!1}if(E!==void 0&&typeof E!="boolean"||T!==void 0&&!L(T)||P!==void 0&&typeof P!="string")return!1;if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let c of Object.values(p))if(!L(c))return!1}return Object.keys(S).length===0}l.isSchema=L});var Ee=q(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});var st=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function at(e){let r=e.match(st);if(r===null)return!1;let t=parseInt(r[1],10),i=parseInt(r[2],10),n=parseInt(r[3],10),o=parseInt(r[4],10),s=parseInt(r[5],10),f=parseInt(r[6],10);return!(i>12||n>ft(t,i)||o>23||s>59||f>60)}se.default=at;function ft(e,r){return r===2?lt(e)?29:28:ut[r]}function lt(e){return e%4===0&&(e%100!==0||e%400===0)}var ut=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Pe=q(F=>{"use strict";var dt=F&&F.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F,"__esModule",{value:!0});F.validate=F.MaxDepthExceededError=void 0;var pt=dt(Ee()),j=oe(),X=class extends Error{};F.MaxDepthExceededError=X;var Q=class extends Error{};function ct(e,r,t){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:t||{maxDepth:0,maxErrors:0}};try{$(i,e,r)}catch(n){if(!(n instanceof Q))throw n}return i.errors}F.validate=ct;function $(e,r,t,i){if(!(r.nullable&&t===null)){if(j.isRefForm(r)){if(e.schemaTokens.length===e.config.maxDepth)throw new X;e.schemaTokens.push(["definitions",r.ref]),$(e,e.root.definitions[r.ref],t),e.schemaTokens.pop()}else if(j.isTypeForm(r)){switch(b(e,"type"),r.type){case"boolean":typeof t!="boolean"&&x(e);break;case"float32":case"float64":typeof t!="number"&&x(e);break;case"int8":B(e,t,-128,127);break;case"uint8":B(e,t,0,255);break;case"int16":B(e,t,-32768,32767);break;case"uint16":B(e,t,0,65535);break;case"int32":B(e,t,-2147483648,2147483647);break;case"uint32":B(e,t,0,4294967295);break;case"string":typeof t!="string"&&x(e);break;case"timestamp":typeof t!="string"?x(e):pt.default(t)||x(e);break}w(e)}else if(j.isEnumForm(r))b(e,"enum"),(typeof t!="string"||!r.enum.includes(t))&&x(e),w(e);else if(j.isElementsForm(r)){if(b(e,"elements"),Array.isArray(t))for(let[n,o]of t.entries())D(e,n.toString()),$(e,r.elements,o),N(e);else x(e);w(e)}else if(j.isPropertiesForm(r))if(typeof t=="object"&&t!==null&&!Array.isArray(t)){if(r.properties!==void 0){b(e,"properties");for(let[n,o]of Object.entries(r.properties))b(e,n),t.hasOwnProperty(n)?(D(e,n),$(e,o,t[n]),N(e)):x(e),w(e);w(e)}if(r.optionalProperties!==void 0){b(e,"optionalProperties");for(let[n,o]of Object.entries(r.optionalProperties))b(e,n),t.hasOwnProperty(n)&&(D(e,n),$(e,o,t[n]),N(e)),w(e);w(e)}if(r.additionalProperties!==!0)for(let n of Object.keys(t)){let o=r.properties&&n in r.properties,s=r.optionalProperties&&n in r.optionalProperties;!o&&!s&&n!==i&&(D(e,n),x(e),N(e))}}else r.properties!==void 0?b(e,"properties"):b(e,"optionalProperties"),x(e),w(e);else if(j.isValuesForm(r)){if(b(e,"values"),typeof t=="object"&&t!==null&&!Array.isArray(t))for(let[n,o]of Object.entries(t))D(e,n),$(e,r.values,o),N(e);else x(e);w(e)}else if(j.isDiscriminatorForm(r))if(typeof t=="object"&&t!==null&&!Array.isArray(t))if(t.hasOwnProperty(r.discriminator)){let n=t[r.discriminator];typeof n=="string"?n in r.mapping?(b(e,"mapping"),b(e,n),$(e,r.mapping[n],t,r.discriminator),w(e),w(e)):(b(e,"mapping"),D(e,r.discriminator),x(e),N(e),w(e)):(b(e,"discriminator"),D(e,r.discriminator),x(e),N(e),w(e))}else b(e,"discriminator"),x(e),w(e);else b(e,"discriminator"),x(e),w(e)}}function B(e,r,t,i){(typeof r!="number"||!Number.isInteger(r)||r<t||r>i)&&x(e)}function D(e,r){e.instanceTokens.push(r)}function N(e){e.instanceTokens.pop()}function b(e,r){e.schemaTokens[e.schemaTokens.length-1].push(r)}function w(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function x(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new Q}});var ke=q(I=>{"use strict";var mt=I&&I.__createBinding||(Object.create?function(e,r,t,i){i===void 0&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get:function(){return r[t]}})}:function(e,r,t,i){i===void 0&&(i=t),e[i]=r[t]}),Ae=I&&I.__exportStar||function(e,r){for(var t in e)t!=="default"&&!r.hasOwnProperty(t)&&mt(r,e,t)};Object.defineProperty(I,"__esModule",{value:!0});Ae(oe(),I);Ae(Pe(),I)});var J,_e=new Uint8Array(16);function z(){if(!J&&(J=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!J))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return J(_e)}var de=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Be(e){return typeof e=="string"&&de.test(e)}var H=Be;var m=[];for(G=0;G<256;++G)m.push((G+256).toString(16).substr(1));var G;function Ve(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=(m[e[r+0]]+m[e[r+1]]+m[e[r+2]]+m[e[r+3]]+"-"+m[e[r+4]]+m[e[r+5]]+"-"+m[e[r+6]]+m[e[r+7]]+"-"+m[e[r+8]]+m[e[r+9]]+"-"+m[e[r+10]]+m[e[r+11]]+m[e[r+12]]+m[e[r+13]]+m[e[r+14]]+m[e[r+15]]).toLowerCase();if(!H(t))throw TypeError("Stringified UUID is invalid");return t}var _=Ve;function qe(e){if(!H(e))throw TypeError("Invalid UUID");var r,t=new Uint8Array(16);return t[0]=(r=parseInt(e.slice(0,8),16))>>>24,t[1]=r>>>16&255,t[2]=r>>>8&255,t[3]=r&255,t[4]=(r=parseInt(e.slice(9,13),16))>>>8,t[5]=r&255,t[6]=(r=parseInt(e.slice(14,18),16))>>>8,t[7]=r&255,t[8]=(r=parseInt(e.slice(19,23),16))>>>8,t[9]=r&255,t[10]=(r=parseInt(e.slice(24,36),16))/1099511627776&255,t[11]=r/4294967296&255,t[12]=r>>>24&255,t[13]=r>>>16&255,t[14]=r>>>8&255,t[15]=r&255,t}var te=qe;function Je(e){e=unescape(encodeURIComponent(e));for(var r=[],t=0;t<e.length;++t)r.push(e.charCodeAt(t));return r}var ze="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Ge="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Y(e,r,t){function i(n,o,s,f){if(typeof n=="string"&&(n=Je(n)),typeof o=="string"&&(o=te(o)),o.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var a=new Uint8Array(16+n.length);if(a.set(o),a.set(n,o.length),a=t(a),a[6]=a[6]&15|r,a[8]=a[8]&63|128,s){f=f||0;for(var d=0;d<16;++d)s[f+d]=a[d];return s}return _(a)}try{i.name=e}catch{}return i.DNS=ze,i.URL=Ge,i}function Ye(e){if(typeof e=="string"){var r=unescape(encodeURIComponent(e));e=new Uint8Array(r.length);for(var t=0;t<r.length;++t)e[t]=r.charCodeAt(t)}return Ze(Ke(Xe(e),e.length*8))}function Ze(e){for(var r=[],t=e.length*32,i="0123456789abcdef",n=0;n<t;n+=8){var o=e[n>>5]>>>n%32&255,s=parseInt(i.charAt(o>>>4&15)+i.charAt(o&15),16);r.push(s)}return r}function pe(e){return(e+64>>>9<<4)+14+1}function Ke(e,r){e[r>>5]|=128<<r%32,e[pe(r)-1]=r;for(var t=1732584193,i=-271733879,n=-1732584194,o=271733878,s=0;s<e.length;s+=16){var f=t,a=i,d=n,u=o;t=g(t,i,n,o,e[s],7,-680876936),o=g(o,t,i,n,e[s+1],12,-389564586),n=g(n,o,t,i,e[s+2],17,606105819),i=g(i,n,o,t,e[s+3],22,-1044525330),t=g(t,i,n,o,e[s+4],7,-176418897),o=g(o,t,i,n,e[s+5],12,1200080426),n=g(n,o,t,i,e[s+6],17,-1473231341),i=g(i,n,o,t,e[s+7],22,-45705983),t=g(t,i,n,o,e[s+8],7,1770035416),o=g(o,t,i,n,e[s+9],12,-1958414417),n=g(n,o,t,i,e[s+10],17,-42063),i=g(i,n,o,t,e[s+11],22,-1990404162),t=g(t,i,n,o,e[s+12],7,1804603682),o=g(o,t,i,n,e[s+13],12,-40341101),n=g(n,o,t,i,e[s+14],17,-1502002290),i=g(i,n,o,t,e[s+15],22,1236535329),t=h(t,i,n,o,e[s+1],5,-165796510),o=h(o,t,i,n,e[s+6],9,-1069501632),n=h(n,o,t,i,e[s+11],14,643717713),i=h(i,n,o,t,e[s],20,-373897302),t=h(t,i,n,o,e[s+5],5,-701558691),o=h(o,t,i,n,e[s+10],9,38016083),n=h(n,o,t,i,e[s+15],14,-660478335),i=h(i,n,o,t,e[s+4],20,-405537848),t=h(t,i,n,o,e[s+9],5,568446438),o=h(o,t,i,n,e[s+14],9,-1019803690),n=h(n,o,t,i,e[s+3],14,-187363961),i=h(i,n,o,t,e[s+8],20,1163531501),t=h(t,i,n,o,e[s+13],5,-1444681467),o=h(o,t,i,n,e[s+2],9,-51403784),n=h(n,o,t,i,e[s+7],14,1735328473),i=h(i,n,o,t,e[s+12],20,-1926607734),t=y(t,i,n,o,e[s+5],4,-378558),o=y(o,t,i,n,e[s+8],11,-2022574463),n=y(n,o,t,i,e[s+11],16,1839030562),i=y(i,n,o,t,e[s+14],23,-35309556),t=y(t,i,n,o,e[s+1],4,-1530992060),o=y(o,t,i,n,e[s+4],11,1272893353),n=y(n,o,t,i,e[s+7],16,-155497632),i=y(i,n,o,t,e[s+10],23,-1094730640),t=y(t,i,n,o,e[s+13],4,681279174),o=y(o,t,i,n,e[s],11,-358537222),n=y(n,o,t,i,e[s+3],16,-722521979),i=y(i,n,o,t,e[s+6],23,76029189),t=y(t,i,n,o,e[s+9],4,-640364487),o=y(o,t,i,n,e[s+12],11,-421815835),n=y(n,o,t,i,e[s+15],16,530742520),i=y(i,n,o,t,e[s+2],23,-995338651),t=v(t,i,n,o,e[s],6,-198630844),o=v(o,t,i,n,e[s+7],10,1126891415),n=v(n,o,t,i,e[s+14],15,-1416354905),i=v(i,n,o,t,e[s+5],21,-57434055),t=v(t,i,n,o,e[s+12],6,1700485571),o=v(o,t,i,n,e[s+3],10,-1894986606),n=v(n,o,t,i,e[s+10],15,-1051523),i=v(i,n,o,t,e[s+1],21,-2054922799),t=v(t,i,n,o,e[s+8],6,1873313359),o=v(o,t,i,n,e[s+15],10,-30611744),n=v(n,o,t,i,e[s+6],15,-1560198380),i=v(i,n,o,t,e[s+13],21,1309151649),t=v(t,i,n,o,e[s+4],6,-145523070),o=v(o,t,i,n,e[s+11],10,-1120210379),n=v(n,o,t,i,e[s+2],15,718787259),i=v(i,n,o,t,e[s+9],21,-343485551),t=R(t,f),i=R(i,a),n=R(n,d),o=R(o,u)}return[t,i,n,o]}function Xe(e){if(e.length===0)return[];for(var r=e.length*8,t=new Uint32Array(pe(r)),i=0;i<r;i+=8)t[i>>5]|=(e[i/8]&255)<<i%32;return t}function R(e,r){var t=(e&65535)+(r&65535),i=(e>>16)+(r>>16)+(t>>16);return i<<16|t&65535}function Qe(e,r){return e<<r|e>>>32-r}function Z(e,r,t,i,n,o){return R(Qe(R(R(r,e),R(i,o)),n),t)}function g(e,r,t,i,n,o,s){return Z(r&t|~r&i,e,r,n,o,s)}function h(e,r,t,i,n,o,s){return Z(r&i|t&~i,e,r,n,o,s)}function y(e,r,t,i,n,o,s){return Z(r^t^i,e,r,n,o,s)}function v(e,r,t,i,n,o,s){return Z(t^(r|~i),e,r,n,o,s)}var ce=Ye;var Bt=Y("v3",48,ce);function We(e,r,t){e=e||{};var i=e.random||(e.rng||z)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,r){t=t||0;for(var n=0;n<16;++n)r[t+n]=i[n];return r}return _(i)}var K=We;function et(e,r,t,i){switch(e){case 0:return r&t^~r&i;case 1:return r^t^i;case 2:return r&t^r&i^t&i;case 3:return r^t^i}}function re(e,r){return e<<r|e>>>32-r}function tt(e){var r=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var i=unescape(encodeURIComponent(e));e=[];for(var n=0;n<i.length;++n)e.push(i.charCodeAt(n))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var o=e.length/4+2,s=Math.ceil(o/16),f=new Array(s),a=0;a<s;++a){for(var d=new Uint32Array(16),u=0;u<16;++u)d[u]=e[a*64+u*4]<<24|e[a*64+u*4+1]<<16|e[a*64+u*4+2]<<8|e[a*64+u*4+3];f[a]=d}f[s-1][14]=(e.length-1)*8/Math.pow(2,32),f[s-1][14]=Math.floor(f[s-1][14]),f[s-1][15]=(e.length-1)*8&4294967295;for(var E=0;E<s;++E){for(var T=new Uint32Array(80),P=0;P<16;++P)T[P]=f[E][P];for(var p=16;p<80;++p)T[p]=re(T[p-3]^T[p-8]^T[p-14]^T[p-16],1);for(var S=t[0],A=t[1],k=t[2],c=t[3],U=t[4],O=0;O<80;++O){var M=Math.floor(O/20),ee=re(S,5)+et(M,A,k,c)+U+r[M]+T[O]>>>0;U=c,c=k,k=re(A,30)>>>0,A=S,S=ee}t[0]=t[0]+S>>>0,t[1]=t[1]+A>>>0,t[2]=t[2]+k>>>0,t[3]=t[3]+c>>>0,t[4]=t[4]+U>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var me=tt;var Kt=Y("v5",80,me);function ne(e){return[...new Uint8Array(e)].map(r=>r.toString(16).padStart(2,"0")).join("")}function ge(e){return new Uint8Array((e.match(/../g)??[]).map(r=>parseInt(r,16)))}function he(e){let r=0;for(let n of e)r+=n.length;let t=new Uint8Array(r),i=0;for(let n of e)t.set(n,i),i+=n.length;return t}var Se=He(ke());function ae(e,r){if((0,Se.validate)(e,r).length)throw new Error(`couldn't validate schema: ${JSON.stringify(r)} didn't match schema ${JSON.stringify(e)}`)}var Oe="3",Ue="https://webapp-production-dot-remarkable-production.appspot.com",gt="https://rm-blob-storage-prod.appspot.com",Re="x-goog-generation",ht="x-goog-if-generation-match",kr=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],Sr=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],yt={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},vt={sm:50,md:125,rr:180,lg:200},bt={df:-1,md:100,lg:150,xl:200},xt={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},Fe={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},Ie={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},wt={discriminator:"type",mapping:{CollectionType:{properties:Fe,optionalProperties:Ie},DocumentType:{properties:Fe,optionalProperties:{...Ie,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},V=class extends Error{constructor(t,i,n){super(n);this.status=t,this.statusText=i}},W=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function Or(e,{deviceDesc:r="desktop-linux",uuid:t=K(),authUrl:i=Ue,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let o=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:r,deviceID:t})});if(o.ok)return await o.text();throw new V(o.status,o.statusText,"couldn't register api")}function Tt({hash:e,type:r,documentId:t,subfiles:i,size:n}){return`${e}:${r}:${t}:${i}:${n}
|
|
2
|
-
`}function
|
|
3
|
-
`);if(i!==
|
|
4
|
-
${f}`,d=i.encode(a);return await this.putHash(s,d),this.cache&&await this.cache.set(s,a),{hash:s,type:"80000000",documentId:
|
|
1
|
+
var Ue=Object.create;var fe=Object.defineProperty;var Me=Object.getOwnPropertyDescriptor;var Ce=Object.getOwnPropertyNames;var Le=Object.getPrototypeOf,je=Object.prototype.hasOwnProperty;var V=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var De=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Ce(t))!je.call(e,n)&&n!==r&&fe(e,n,{get:()=>t[n],enumerable:!(i=Me(t,n))||i.enumerable});return e};var Ne=(e,t,r)=>(r=e!=null?Ue(Le(e)):{},De(t||!e||!e.__esModule?fe(r,"default",{value:e,enumerable:!0}):r,e));var te=V(l=>{"use strict";var ge=l&&l.__rest||function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]]);return r};Object.defineProperty(l,"__esModule",{value:!0});l.isSchema=l.isValidSchema=l.isDiscriminatorForm=l.isValuesForm=l.isPropertiesForm=l.isElementsForm=l.isEnumForm=l.isTypeForm=l.isRefForm=l.isEmptyForm=void 0;function er(e){let{definitions:t,nullable:r,metadata:i}=e,n=ge(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}l.isEmptyForm=er;function he(e){return"ref"in e}l.isRefForm=he;function rr(e){return"type"in e}l.isTypeForm=rr;function ye(e){return"enum"in e}l.isEnumForm=ye;function ve(e){return"elements"in e}l.isElementsForm=ve;function re(e){return"properties"in e||"optionalProperties"in e}l.isPropertiesForm=re;function be(e){return"values"in e}l.isValuesForm=be;function xe(e){return"discriminator"in e}l.isDiscriminatorForm=xe;function I(e,t){if(t===void 0&&(t=e),e.definitions!==void 0){if(t!==e)return!1;for(let r of Object.values(e.definitions))if(!I(r,t))return!1}if(he(e)&&!(e.ref in(t.definitions||{}))||ye(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(ve(e))return I(e.elements,t);if(re(e)){for(let r of Object.values(e.properties||{}))if(!I(r,t))return!1;for(let r of Object.values(e.optionalProperties||{}))if(!I(r,t))return!1;for(let r of Object.keys(e.properties||{}))if(r in(e.optionalProperties||{}))return!1}if(be(e))return I(e.values,t);if(xe(e)){for(let r of Object.values(e.mapping))if(!I(r,t)||!re(r)||r.nullable||e.discriminator in(r.properties||{})||e.discriminator in(r.optionalProperties||{}))return!1}return!0}l.isValidSchema=I;var tr=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],nr=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function U(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let t=e,{definitions:r=void 0,nullable:i=void 0,metadata:n=void 0,ref:o=void 0,type:s=void 0,enum:f=void 0,elements:a=void 0,properties:d=void 0,optionalProperties:u=void 0,additionalProperties:E=void 0,values:m=void 0,discriminator:P=void 0,mapping:p=void 0}=t,k=ge(t,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),S=[o!==void 0,s!==void 0,f!==void 0,a!==void 0,d!==void 0,u!==void 0,E!==void 0,m!==void 0,P!==void 0,p!==void 0],A=!1;for(let g of tr)A=A||g.every((B,D)=>B===S[D]);if(!A)return!1;if(r!==void 0){if(typeof r!="object"||Array.isArray(r)||r===null)return!1;for(let g of Object.values(r))if(!U(g))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||o!==void 0&&typeof o!="string"||s!==void 0&&(typeof s!="string"||!nr.includes(s))||f!==void 0&&(!Array.isArray(f)||!f.every(g=>typeof g=="string"))||a!==void 0&&!U(a))return!1;if(d!==void 0){if(typeof d!="object"||Array.isArray(d)||d===null)return!1;for(let g of Object.values(d))if(!U(g))return!1}if(u!==void 0){if(typeof u!="object"||Array.isArray(u)||u===null)return!1;for(let g of Object.values(u))if(!U(g))return!1}if(E!==void 0&&typeof E!="boolean"||m!==void 0&&!U(m)||P!==void 0&&typeof P!="string")return!1;if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let g of Object.values(p))if(!U(g))return!1}return Object.keys(k).length===0}l.isSchema=U});var we=V(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});var ir=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function or(e){let t=e.match(ir);if(t===null)return!1;let r=parseInt(t[1],10),i=parseInt(t[2],10),n=parseInt(t[3],10),o=parseInt(t[4],10),s=parseInt(t[5],10),f=parseInt(t[6],10);return!(i>12||n>sr(r,i)||o>23||s>59||f>60)}ne.default=or;function sr(e,t){return t===2?ar(e)?29:28:fr[t]}function ar(e){return e%4===0&&(e%100!==0||e%400===0)}var fr=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Te=V(F=>{"use strict";var lr=F&&F.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F,"__esModule",{value:!0});F.validate=F.MaxDepthExceededError=void 0;var ur=lr(we()),M=te(),K=class extends Error{};F.MaxDepthExceededError=K;var X=class extends Error{};function dr(e,t,r){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:r||{maxDepth:0,maxErrors:0}};try{j(i,e,t)}catch(n){if(!(n instanceof X))throw n}return i.errors}F.validate=dr;function j(e,t,r,i){if(!(t.nullable&&r===null)){if(M.isRefForm(t)){if(e.schemaTokens.length===e.config.maxDepth)throw new K;e.schemaTokens.push(["definitions",t.ref]),j(e,e.root.definitions[t.ref],r),e.schemaTokens.pop()}else if(M.isTypeForm(t)){switch(x(e,"type"),t.type){case"boolean":typeof r!="boolean"&&w(e);break;case"float32":case"float64":typeof r!="number"&&w(e);break;case"int8":H(e,r,-128,127);break;case"uint8":H(e,r,0,255);break;case"int16":H(e,r,-32768,32767);break;case"uint16":H(e,r,0,65535);break;case"int32":H(e,r,-2147483648,2147483647);break;case"uint32":H(e,r,0,4294967295);break;case"string":typeof r!="string"&&w(e);break;case"timestamp":typeof r!="string"?w(e):ur.default(r)||w(e);break}T(e)}else if(M.isEnumForm(t))x(e,"enum"),(typeof r!="string"||!t.enum.includes(r))&&w(e),T(e);else if(M.isElementsForm(t)){if(x(e,"elements"),Array.isArray(r))for(let[n,o]of r.entries())C(e,n.toString()),j(e,t.elements,o),L(e);else w(e);T(e)}else if(M.isPropertiesForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r)){if(t.properties!==void 0){x(e,"properties");for(let[n,o]of Object.entries(t.properties))x(e,n),r.hasOwnProperty(n)?(C(e,n),j(e,o,r[n]),L(e)):w(e),T(e);T(e)}if(t.optionalProperties!==void 0){x(e,"optionalProperties");for(let[n,o]of Object.entries(t.optionalProperties))x(e,n),r.hasOwnProperty(n)&&(C(e,n),j(e,o,r[n]),L(e)),T(e);T(e)}if(t.additionalProperties!==!0)for(let n of Object.keys(r)){let o=t.properties&&n in t.properties,s=t.optionalProperties&&n in t.optionalProperties;!o&&!s&&n!==i&&(C(e,n),w(e),L(e))}}else t.properties!==void 0?x(e,"properties"):x(e,"optionalProperties"),w(e),T(e);else if(M.isValuesForm(t)){if(x(e,"values"),typeof r=="object"&&r!==null&&!Array.isArray(r))for(let[n,o]of Object.entries(r))C(e,n),j(e,t.values,o),L(e);else w(e);T(e)}else if(M.isDiscriminatorForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r))if(r.hasOwnProperty(t.discriminator)){let n=r[t.discriminator];typeof n=="string"?n in t.mapping?(x(e,"mapping"),x(e,n),j(e,t.mapping[n],r,t.discriminator),T(e),T(e)):(x(e,"mapping"),C(e,t.discriminator),w(e),L(e),T(e)):(x(e,"discriminator"),C(e,t.discriminator),w(e),L(e),T(e))}else x(e,"discriminator"),w(e),T(e);else x(e,"discriminator"),w(e),T(e)}}function H(e,t,r,i){(typeof t!="number"||!Number.isInteger(t)||t<r||t>i)&&w(e)}function C(e,t){e.instanceTokens.push(t)}function L(e){e.instanceTokens.pop()}function x(e,t){e.schemaTokens[e.schemaTokens.length-1].push(t)}function T(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function w(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new X}});var Pe=V(R=>{"use strict";var pr=R&&R.__createBinding||(Object.create?function(e,t,r,i){i===void 0&&(i=r),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,i){i===void 0&&(i=r),e[i]=t[r]}),Ee=R&&R.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&pr(t,e,r)};Object.defineProperty(R,"__esModule",{value:!0});Ee(te(),R);Ee(Te(),R)});var q,$e=new Uint8Array(16);function J(){if(!q&&(q=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!q))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return q($e)}var le=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function He(e){return typeof e=="string"&&le.test(e)}var N=He;var c=[];for(z=0;z<256;++z)c.push((z+256).toString(16).substr(1));var z;function _e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=(c[e[t+0]]+c[e[t+1]]+c[e[t+2]]+c[e[t+3]]+"-"+c[e[t+4]]+c[e[t+5]]+"-"+c[e[t+6]]+c[e[t+7]]+"-"+c[e[t+8]]+c[e[t+9]]+"-"+c[e[t+10]]+c[e[t+11]]+c[e[t+12]]+c[e[t+13]]+c[e[t+14]]+c[e[t+15]]).toLowerCase();if(!N(r))throw TypeError("Stringified UUID is invalid");return r}var $=_e;function Be(e){if(!N(e))throw TypeError("Invalid UUID");var t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var Q=Be;function Ve(e){e=unescape(encodeURIComponent(e));for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}var qe="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Je="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function G(e,t,r){function i(n,o,s,f){if(typeof n=="string"&&(n=Ve(n)),typeof o=="string"&&(o=Q(o)),o.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var a=new Uint8Array(16+n.length);if(a.set(o),a.set(n,o.length),a=r(a),a[6]=a[6]&15|t,a[8]=a[8]&63|128,s){f=f||0;for(var d=0;d<16;++d)s[f+d]=a[d];return s}return $(a)}try{i.name=e}catch{}return i.DNS=qe,i.URL=Je,i}function ze(e){if(typeof e=="string"){var t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(var r=0;r<t.length;++r)e[r]=t.charCodeAt(r)}return Ge(Ye(Ze(e),e.length*8))}function Ge(e){for(var t=[],r=e.length*32,i="0123456789abcdef",n=0;n<r;n+=8){var o=e[n>>5]>>>n%32&255,s=parseInt(i.charAt(o>>>4&15)+i.charAt(o&15),16);t.push(s)}return t}function ue(e){return(e+64>>>9<<4)+14+1}function Ye(e,t){e[t>>5]|=128<<t%32,e[ue(t)-1]=t;for(var r=1732584193,i=-271733879,n=-1732584194,o=271733878,s=0;s<e.length;s+=16){var f=r,a=i,d=n,u=o;r=h(r,i,n,o,e[s],7,-680876936),o=h(o,r,i,n,e[s+1],12,-389564586),n=h(n,o,r,i,e[s+2],17,606105819),i=h(i,n,o,r,e[s+3],22,-1044525330),r=h(r,i,n,o,e[s+4],7,-176418897),o=h(o,r,i,n,e[s+5],12,1200080426),n=h(n,o,r,i,e[s+6],17,-1473231341),i=h(i,n,o,r,e[s+7],22,-45705983),r=h(r,i,n,o,e[s+8],7,1770035416),o=h(o,r,i,n,e[s+9],12,-1958414417),n=h(n,o,r,i,e[s+10],17,-42063),i=h(i,n,o,r,e[s+11],22,-1990404162),r=h(r,i,n,o,e[s+12],7,1804603682),o=h(o,r,i,n,e[s+13],12,-40341101),n=h(n,o,r,i,e[s+14],17,-1502002290),i=h(i,n,o,r,e[s+15],22,1236535329),r=y(r,i,n,o,e[s+1],5,-165796510),o=y(o,r,i,n,e[s+6],9,-1069501632),n=y(n,o,r,i,e[s+11],14,643717713),i=y(i,n,o,r,e[s],20,-373897302),r=y(r,i,n,o,e[s+5],5,-701558691),o=y(o,r,i,n,e[s+10],9,38016083),n=y(n,o,r,i,e[s+15],14,-660478335),i=y(i,n,o,r,e[s+4],20,-405537848),r=y(r,i,n,o,e[s+9],5,568446438),o=y(o,r,i,n,e[s+14],9,-1019803690),n=y(n,o,r,i,e[s+3],14,-187363961),i=y(i,n,o,r,e[s+8],20,1163531501),r=y(r,i,n,o,e[s+13],5,-1444681467),o=y(o,r,i,n,e[s+2],9,-51403784),n=y(n,o,r,i,e[s+7],14,1735328473),i=y(i,n,o,r,e[s+12],20,-1926607734),r=v(r,i,n,o,e[s+5],4,-378558),o=v(o,r,i,n,e[s+8],11,-2022574463),n=v(n,o,r,i,e[s+11],16,1839030562),i=v(i,n,o,r,e[s+14],23,-35309556),r=v(r,i,n,o,e[s+1],4,-1530992060),o=v(o,r,i,n,e[s+4],11,1272893353),n=v(n,o,r,i,e[s+7],16,-155497632),i=v(i,n,o,r,e[s+10],23,-1094730640),r=v(r,i,n,o,e[s+13],4,681279174),o=v(o,r,i,n,e[s],11,-358537222),n=v(n,o,r,i,e[s+3],16,-722521979),i=v(i,n,o,r,e[s+6],23,76029189),r=v(r,i,n,o,e[s+9],4,-640364487),o=v(o,r,i,n,e[s+12],11,-421815835),n=v(n,o,r,i,e[s+15],16,530742520),i=v(i,n,o,r,e[s+2],23,-995338651),r=b(r,i,n,o,e[s],6,-198630844),o=b(o,r,i,n,e[s+7],10,1126891415),n=b(n,o,r,i,e[s+14],15,-1416354905),i=b(i,n,o,r,e[s+5],21,-57434055),r=b(r,i,n,o,e[s+12],6,1700485571),o=b(o,r,i,n,e[s+3],10,-1894986606),n=b(n,o,r,i,e[s+10],15,-1051523),i=b(i,n,o,r,e[s+1],21,-2054922799),r=b(r,i,n,o,e[s+8],6,1873313359),o=b(o,r,i,n,e[s+15],10,-30611744),n=b(n,o,r,i,e[s+6],15,-1560198380),i=b(i,n,o,r,e[s+13],21,1309151649),r=b(r,i,n,o,e[s+4],6,-145523070),o=b(o,r,i,n,e[s+11],10,-1120210379),n=b(n,o,r,i,e[s+2],15,718787259),i=b(i,n,o,r,e[s+9],21,-343485551),r=O(r,f),i=O(i,a),n=O(n,d),o=O(o,u)}return[r,i,n,o]}function Ze(e){if(e.length===0)return[];for(var t=e.length*8,r=new Uint32Array(ue(t)),i=0;i<t;i+=8)r[i>>5]|=(e[i/8]&255)<<i%32;return r}function O(e,t){var r=(e&65535)+(t&65535),i=(e>>16)+(t>>16)+(r>>16);return i<<16|r&65535}function Ke(e,t){return e<<t|e>>>32-t}function Y(e,t,r,i,n,o){return O(Ke(O(O(t,e),O(i,o)),n),r)}function h(e,t,r,i,n,o,s){return Y(t&r|~t&i,e,t,n,o,s)}function y(e,t,r,i,n,o,s){return Y(t&i|r&~i,e,t,n,o,s)}function v(e,t,r,i,n,o,s){return Y(t^r^i,e,t,n,o,s)}function b(e,t,r,i,n,o,s){return Y(r^(t|~i),e,t,n,o,s)}var de=ze;var Hr=G("v3",48,de);function Xe(e,t,r){e=e||{};var i=e.random||(e.rng||J)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(var n=0;n<16;++n)t[r+n]=i[n];return t}return $(i)}var Z=Xe;function Qe(e,t,r,i){switch(e){case 0:return t&r^~t&i;case 1:return t^r^i;case 2:return t&r^t&i^r&i;case 3:return t^r^i}}function W(e,t){return e<<t|e>>>32-t}function We(e){var t=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var i=unescape(encodeURIComponent(e));e=[];for(var n=0;n<i.length;++n)e.push(i.charCodeAt(n))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var o=e.length/4+2,s=Math.ceil(o/16),f=new Array(s),a=0;a<s;++a){for(var d=new Uint32Array(16),u=0;u<16;++u)d[u]=e[a*64+u*4]<<24|e[a*64+u*4+1]<<16|e[a*64+u*4+2]<<8|e[a*64+u*4+3];f[a]=d}f[s-1][14]=(e.length-1)*8/Math.pow(2,32),f[s-1][14]=Math.floor(f[s-1][14]),f[s-1][15]=(e.length-1)*8&4294967295;for(var E=0;E<s;++E){for(var m=new Uint32Array(80),P=0;P<16;++P)m[P]=f[E][P];for(var p=16;p<80;++p)m[p]=W(m[p-3]^m[p-8]^m[p-14]^m[p-16],1);for(var k=r[0],S=r[1],A=r[2],g=r[3],B=r[4],D=0;D<80;++D){var ae=Math.floor(D/20),Ie=W(k,5)+Qe(ae,S,A,g)+B+t[ae]+m[D]>>>0;B=g,g=A,A=W(S,30)>>>0,S=k,k=Ie}r[0]=r[0]+k>>>0,r[1]=r[1]+S>>>0,r[2]=r[2]+A>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+B>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}var pe=We;var Yr=G("v5",80,pe);function ee(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,"0")).join("")}function ce(e){return new Uint8Array((e.match(/../g)??[]).map(t=>parseInt(t,16)))}function me(e){let t=0;for(let n of e)t+=n.length;let r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}var Ae=Ne(Pe());function ie(e,t){if((0,Ae.validate)(e,t).length)throw new Error(`couldn't validate schema: ${JSON.stringify(t)} didn't match schema ${JSON.stringify(e)}`)}var ke="3",Re="https://webapp-production-dot-remarkable-production.appspot.com",cr="https://rm-blob-storage-prod.appspot.com",Se="x-goog-generation",mr="x-goog-if-generation-match",Pt=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],At=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],gr={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},hr={sm:50,md:125,rr:180,lg:200},yr={df:-1,md:100,lg:150,xl:200},vr={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},Oe={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},Fe={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},br={discriminator:"type",mapping:{CollectionType:{properties:Oe,optionalProperties:Fe},DocumentType:{properties:Oe,optionalProperties:{...Fe,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},_=class extends Error{constructor(r,i,n){super(n);this.status=r,this.statusText=i}},oe=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function kt(e,{deviceDesc:t="desktop-linux",uuid:r=Z(),authUrl:i=Re,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let o=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:t,deviceID:r})});if(o.ok)return await o.text();throw new _(o.status,o.statusText,"couldn't register api")}function xr({hash:e,type:t,documentId:r,subfiles:i,size:n}){return`${e}:${t}:${r}:${i}:${n}
|
|
2
|
+
`}function wr(e){let[t,r,i,n,o]=e.split(":");if(t===void 0||r===void 0||i===void 0||n===void 0||o===void 0)throw new Error(`entries line didn't contain five fields: '${e}'`);if(r==="80000000")return{hash:t,type:r,documentId:i,subfiles:parseInt(n),size:BigInt(o)};if(r==="0"){if(n!=="0")throw new Error(`file type entry had nonzero number of subfiles: ${n}`);return{hash:t,type:r,documentId:i,subfiles:0,size:BigInt(o)}}else throw new Error(`entries line contained invalid type: ${r}`)}var se=class{constructor(t,r,i,n,o){this.userToken=t;this.fetch=r;this.cache=i;this.subtle=n;this.blobUrl=o}async authedFetch(t,r,i="POST"){let n=await this.fetch(t,{method:i,headers:{Authorization:`Bearer ${this.userToken}`},body:r&&JSON.stringify(r)});if(n.ok)return n;throw new _(n.status,n.statusText,"failed reMarkable request")}async signedFetch({url:t,method:r},i,n){let o=await this.fetch(t,{method:r,body:i,headers:n});if(o.ok)return o;{let s=await o.text();throw new _(o.status,o.statusText,s)}}async getUrl(t,r){let i=r===void 0?"downloads":"uploads",n=r==null?void 0:`${r}`,s=await(await this.authedFetch(`${this.blobUrl}/api/v1/signed-urls/${i}`,{http_method:n===void 0?"GET":"PUT",relative_path:t,generation:n})).text(),f=JSON.parse(s);return ie(vr,f),f}async syncComplete(){await this.authedFetch(`${this.blobUrl}/api/v1/sync-complete`)}async getRootHash(){let t=await this.getUrl("root"),r=await this.signedFetch(t),i=r.headers.get(Se);if(!i)throw new Error("no generation header in root hash");return[await r.text(),BigInt(i)]}async putRootHash(t,r){let i=await this.getUrl("root",r),n;try{n=await this.signedFetch(i,t,{[mr]:`${r}`})}catch(s){throw s instanceof _&&s.status===412?new oe:s}let o=n.headers.get(Se);if(!o)throw new Error("no generation header in root hash");return BigInt(o)}async getBuffer(t){let r=await this.getUrl(t);return await(await this.signedFetch(r)).arrayBuffer()}async getText(t){let r=this.cache&&await this.cache.get(t);if(r)return r;{let i=await this.getUrl(t),o=await(await this.signedFetch(i)).text();return this.cache&&await this.cache.set(t,o),o}}async getMetadata(t){let r=await this.getText(t),i=JSON.parse(r);return ie(br,i),i}async getEntries(t){let r=await this.getText(t),[i,...n]=r.slice(0,-1).split(`
|
|
3
|
+
`);if(i!==ke)throw new Error(`got unexpected schema version: ${i}`);return n.map(wr)}async putHash(t,r){let i=await this.getUrl(t,null);await this.signedFetch(i,r)}async putEntries(t,r){let i=new TextEncoder;r.sort((u,E)=>u.documentId.localeCompare(E.documentId));let n=me(r.map(u=>ce(u.hash))),o=await this.subtle.digest("SHA-256",n),s=ee(o),f=r.map(xr).join(""),a=`${ke}
|
|
4
|
+
${f}`,d=i.encode(a);return await this.putHash(s,d),this.cache&&await this.cache.set(s,a),{hash:s,type:"80000000",documentId:t,subfiles:r.length,size:0n}}async putBuffer(t,r){let i=await this.subtle.digest("SHA-256",r),n=ee(i);return await this.putHash(n,r),{hash:n,type:"0",documentId:t,subfiles:0,size:BigInt(r.length)}}async putText(t,r){let i=new TextEncoder,n=await this.putBuffer(t,i.encode(r));return this.cache&&await this.cache.set(n.hash,r),n}async putEpub(t,r,{parent:i="",margins:n=125,orientation:o,textAlignment:s,textScale:f=1,lineHeight:a=-1,fontName:d="",cover:u="visited",lastTool:E}={}){let m=Z(),P=`${new Date().valueOf()}`,p=[];p.push(this.putBuffer(`${m}.epub`,r));let k={type:"DocumentType",visibleName:t,version:0,parent:i,synced:!0,lastModified:P};p.push(this.putText(`${m}.metadata`,JSON.stringify(k)));let S={dummyDocument:!1,extraMetadata:{LastTool:E},fileType:"epub",pageCount:0,lastOpenedPage:0,lineHeight:typeof a=="string"?yr[a]:a,margins:typeof n=="string"?hr[n]:n,textScale:typeof f=="string"?gr[f]:f,pages:[],coverPageNumber:u==="first"?0:-1,formatVersion:1,orientation:o,textAlignment:s,fontName:d};p.push(this.putText(`${m}.content`,JSON.stringify(S)));let A=await Promise.all(p);return await this.putEntries(m,A)}};async function St(e,{fetch:t=globalThis.fetch,cache:r,subtle:i=globalThis.crypto?.subtle,authUrl:n=Re,blobUrl:o=cr}={}){let s=await t(`${n}/token/json/2/user/new`,{method:"POST",headers:{Authorization:`Bearer ${e}`}});if(!s.ok)throw new Error(`couldn't fetch auth token: ${s.statusText}`);let f=await s.text();return new se(f,t,r,i,o)}export{oe as GenerationError,_ as ResponseError,At as builtinFontNames,yr as builtinLineHeights,hr as builtinMargins,gr as builtinTextScales,Pt as builtinTools,xr as formatEntry,wr as parseEntry,kt as register,St as remarkable};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var rmapi=(()=>{var Ne=Object.create;var J=Object.defineProperty;var $e=Object.getOwnPropertyDescriptor;var He=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Be=Object.prototype.hasOwnProperty;var z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),Ve=(e,r)=>{for(var t in r)J(e,t,{get:r[t],enumerable:!0})},de=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of He(r))!Be.call(e,n)&&n!==t&&J(e,n,{get:()=>r[n],enumerable:!(i=$e(r,n))||i.enumerable});return e};var qe=(e,r,t)=>(t=e!=null?Ne(_e(e)):{},de(r||!e||!e.__esModule?J(t,"default",{value:e,enumerable:!0}):t,e)),Je=e=>de(J({},"__esModule",{value:!0}),e);var se=z(l=>{"use strict";var ve=l&&l.__rest||function(e,r){var t={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.indexOf(i)<0&&(t[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)r.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(t[i[n]]=e[i[n]]);return t};Object.defineProperty(l,"__esModule",{value:!0});l.isSchema=l.isValidSchema=l.isDiscriminatorForm=l.isValuesForm=l.isPropertiesForm=l.isElementsForm=l.isEnumForm=l.isTypeForm=l.isRefForm=l.isEmptyForm=void 0;function at(e){let{definitions:r,nullable:t,metadata:i}=e,n=ve(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}l.isEmptyForm=at;function be(e){return"ref"in e}l.isRefForm=be;function ft(e){return"type"in e}l.isTypeForm=ft;function xe(e){return"enum"in e}l.isEnumForm=xe;function we(e){return"elements"in e}l.isElementsForm=we;function oe(e){return"properties"in e||"optionalProperties"in e}l.isPropertiesForm=oe;function Te(e){return"values"in e}l.isValuesForm=Te;function Ee(e){return"discriminator"in e}l.isDiscriminatorForm=Ee;function C(e,r){if(r===void 0&&(r=e),e.definitions!==void 0){if(r!==e)return!1;for(let t of Object.values(e.definitions))if(!C(t,r))return!1}if(be(e)&&!(e.ref in(r.definitions||{}))||xe(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(we(e))return C(e.elements,r);if(oe(e)){for(let t of Object.values(e.properties||{}))if(!C(t,r))return!1;for(let t of Object.values(e.optionalProperties||{}))if(!C(t,r))return!1;for(let t of Object.keys(e.properties||{}))if(t in(e.optionalProperties||{}))return!1}if(Te(e))return C(e.values,r);if(Ee(e)){for(let t of Object.values(e.mapping))if(!C(t,r)||!oe(t)||t.nullable||e.discriminator in(t.properties||{})||e.discriminator in(t.optionalProperties||{}))return!1}return!0}l.isValidSchema=C;var lt=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],ut=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function L(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let r=e,{definitions:t=void 0,nullable:i=void 0,metadata:n=void 0,ref:o=void 0,type:s=void 0,enum:f=void 0,elements:a=void 0,properties:d=void 0,optionalProperties:u=void 0,additionalProperties:E=void 0,values:T=void 0,discriminator:P=void 0,mapping:p=void 0}=r,S=ve(r,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),A=[o!==void 0,s!==void 0,f!==void 0,a!==void 0,d!==void 0,u!==void 0,E!==void 0,T!==void 0,P!==void 0,p!==void 0],k=!1;for(let c of lt)k=k||c.every((U,O)=>U===A[O]);if(!k)return!1;if(t!==void 0){if(typeof t!="object"||Array.isArray(t)||t===null)return!1;for(let c of Object.values(t))if(!L(c))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||o!==void 0&&typeof o!="string"||s!==void 0&&(typeof s!="string"||!ut.includes(s))||f!==void 0&&(!Array.isArray(f)||!f.every(c=>typeof c=="string"))||a!==void 0&&!L(a))return!1;if(d!==void 0){if(typeof d!="object"||Array.isArray(d)||d===null)return!1;for(let c of Object.values(d))if(!L(c))return!1}if(u!==void 0){if(typeof u!="object"||Array.isArray(u)||u===null)return!1;for(let c of Object.values(u))if(!L(c))return!1}if(E!==void 0&&typeof E!="boolean"||T!==void 0&&!L(T)||P!==void 0&&typeof P!="string")return!1;if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let c of Object.values(p))if(!L(c))return!1}return Object.keys(S).length===0}l.isSchema=L});var Pe=z(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});var dt=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function pt(e){let r=e.match(dt);if(r===null)return!1;let t=parseInt(r[1],10),i=parseInt(r[2],10),n=parseInt(r[3],10),o=parseInt(r[4],10),s=parseInt(r[5],10),f=parseInt(r[6],10);return!(i>12||n>ct(t,i)||o>23||s>59||f>60)}ae.default=pt;function ct(e,r){return r===2?mt(e)?29:28:gt[r]}function mt(e){return e%4===0&&(e%100!==0||e%400===0)}var gt=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Ae=z(F=>{"use strict";var ht=F&&F.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F,"__esModule",{value:!0});F.validate=F.MaxDepthExceededError=void 0;var yt=ht(Pe()),j=se(),W=class extends Error{};F.MaxDepthExceededError=W;var ee=class extends Error{};function vt(e,r,t){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:t||{maxDepth:0,maxErrors:0}};try{$(i,e,r)}catch(n){if(!(n instanceof ee))throw n}return i.errors}F.validate=vt;function $(e,r,t,i){if(!(r.nullable&&t===null)){if(j.isRefForm(r)){if(e.schemaTokens.length===e.config.maxDepth)throw new W;e.schemaTokens.push(["definitions",r.ref]),$(e,e.root.definitions[r.ref],t),e.schemaTokens.pop()}else if(j.isTypeForm(r)){switch(b(e,"type"),r.type){case"boolean":typeof t!="boolean"&&x(e);break;case"float32":case"float64":typeof t!="number"&&x(e);break;case"int8":V(e,t,-128,127);break;case"uint8":V(e,t,0,255);break;case"int16":V(e,t,-32768,32767);break;case"uint16":V(e,t,0,65535);break;case"int32":V(e,t,-2147483648,2147483647);break;case"uint32":V(e,t,0,4294967295);break;case"string":typeof t!="string"&&x(e);break;case"timestamp":typeof t!="string"?x(e):yt.default(t)||x(e);break}w(e)}else if(j.isEnumForm(r))b(e,"enum"),(typeof t!="string"||!r.enum.includes(t))&&x(e),w(e);else if(j.isElementsForm(r)){if(b(e,"elements"),Array.isArray(t))for(let[n,o]of t.entries())D(e,n.toString()),$(e,r.elements,o),N(e);else x(e);w(e)}else if(j.isPropertiesForm(r))if(typeof t=="object"&&t!==null&&!Array.isArray(t)){if(r.properties!==void 0){b(e,"properties");for(let[n,o]of Object.entries(r.properties))b(e,n),t.hasOwnProperty(n)?(D(e,n),$(e,o,t[n]),N(e)):x(e),w(e);w(e)}if(r.optionalProperties!==void 0){b(e,"optionalProperties");for(let[n,o]of Object.entries(r.optionalProperties))b(e,n),t.hasOwnProperty(n)&&(D(e,n),$(e,o,t[n]),N(e)),w(e);w(e)}if(r.additionalProperties!==!0)for(let n of Object.keys(t)){let o=r.properties&&n in r.properties,s=r.optionalProperties&&n in r.optionalProperties;!o&&!s&&n!==i&&(D(e,n),x(e),N(e))}}else r.properties!==void 0?b(e,"properties"):b(e,"optionalProperties"),x(e),w(e);else if(j.isValuesForm(r)){if(b(e,"values"),typeof t=="object"&&t!==null&&!Array.isArray(t))for(let[n,o]of Object.entries(t))D(e,n),$(e,r.values,o),N(e);else x(e);w(e)}else if(j.isDiscriminatorForm(r))if(typeof t=="object"&&t!==null&&!Array.isArray(t))if(t.hasOwnProperty(r.discriminator)){let n=t[r.discriminator];typeof n=="string"?n in r.mapping?(b(e,"mapping"),b(e,n),$(e,r.mapping[n],t,r.discriminator),w(e),w(e)):(b(e,"mapping"),D(e,r.discriminator),x(e),N(e),w(e)):(b(e,"discriminator"),D(e,r.discriminator),x(e),N(e),w(e))}else b(e,"discriminator"),x(e),w(e);else b(e,"discriminator"),x(e),w(e)}}function V(e,r,t,i){(typeof r!="number"||!Number.isInteger(r)||r<t||r>i)&&x(e)}function D(e,r){e.instanceTokens.push(r)}function N(e){e.instanceTokens.pop()}function b(e,r){e.schemaTokens[e.schemaTokens.length-1].push(r)}function w(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function x(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new ee}});var Se=z(I=>{"use strict";var bt=I&&I.__createBinding||(Object.create?function(e,r,t,i){i===void 0&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get:function(){return r[t]}})}:function(e,r,t,i){i===void 0&&(i=t),e[i]=r[t]}),ke=I&&I.__exportStar||function(e,r){for(var t in e)t!=="default"&&!r.hasOwnProperty(t)&&bt(r,e,t)};Object.defineProperty(I,"__esModule",{value:!0});ke(se(),I);ke(Ae(),I)});var Ft={};Ve(Ft,{GenerationError:()=>q,ResponseError:()=>H,builtinFontNames:()=>Et,builtinLineHeights:()=>je,builtinMargins:()=>Le,builtinTextScales:()=>Ce,builtinTools:()=>Tt,register:()=>kt,remarkable:()=>Rt});var G,ze=new Uint8Array(16);function Y(){if(!G&&(G=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!G))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return G(ze)}var pe=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Ge(e){return typeof e=="string"&&pe.test(e)}var _=Ge;var m=[];for(Z=0;Z<256;++Z)m.push((Z+256).toString(16).substr(1));var Z;function Ye(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=(m[e[r+0]]+m[e[r+1]]+m[e[r+2]]+m[e[r+3]]+"-"+m[e[r+4]]+m[e[r+5]]+"-"+m[e[r+6]]+m[e[r+7]]+"-"+m[e[r+8]]+m[e[r+9]]+"-"+m[e[r+10]]+m[e[r+11]]+m[e[r+12]]+m[e[r+13]]+m[e[r+14]]+m[e[r+15]]).toLowerCase();if(!_(t))throw TypeError("Stringified UUID is invalid");return t}var B=Ye;function Ze(e){if(!_(e))throw TypeError("Invalid UUID");var r,t=new Uint8Array(16);return t[0]=(r=parseInt(e.slice(0,8),16))>>>24,t[1]=r>>>16&255,t[2]=r>>>8&255,t[3]=r&255,t[4]=(r=parseInt(e.slice(9,13),16))>>>8,t[5]=r&255,t[6]=(r=parseInt(e.slice(14,18),16))>>>8,t[7]=r&255,t[8]=(r=parseInt(e.slice(19,23),16))>>>8,t[9]=r&255,t[10]=(r=parseInt(e.slice(24,36),16))/1099511627776&255,t[11]=r/4294967296&255,t[12]=r>>>24&255,t[13]=r>>>16&255,t[14]=r>>>8&255,t[15]=r&255,t}var re=Ze;function Ke(e){e=unescape(encodeURIComponent(e));for(var r=[],t=0;t<e.length;++t)r.push(e.charCodeAt(t));return r}var Xe="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Qe="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function K(e,r,t){function i(n,o,s,f){if(typeof n=="string"&&(n=Ke(n)),typeof o=="string"&&(o=re(o)),o.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var a=new Uint8Array(16+n.length);if(a.set(o),a.set(n,o.length),a=t(a),a[6]=a[6]&15|r,a[8]=a[8]&63|128,s){f=f||0;for(var d=0;d<16;++d)s[f+d]=a[d];return s}return B(a)}try{i.name=e}catch{}return i.DNS=Xe,i.URL=Qe,i}function We(e){if(typeof e=="string"){var r=unescape(encodeURIComponent(e));e=new Uint8Array(r.length);for(var t=0;t<r.length;++t)e[t]=r.charCodeAt(t)}return et(tt(rt(e),e.length*8))}function et(e){for(var r=[],t=e.length*32,i="0123456789abcdef",n=0;n<t;n+=8){var o=e[n>>5]>>>n%32&255,s=parseInt(i.charAt(o>>>4&15)+i.charAt(o&15),16);r.push(s)}return r}function ce(e){return(e+64>>>9<<4)+14+1}function tt(e,r){e[r>>5]|=128<<r%32,e[ce(r)-1]=r;for(var t=1732584193,i=-271733879,n=-1732584194,o=271733878,s=0;s<e.length;s+=16){var f=t,a=i,d=n,u=o;t=g(t,i,n,o,e[s],7,-680876936),o=g(o,t,i,n,e[s+1],12,-389564586),n=g(n,o,t,i,e[s+2],17,606105819),i=g(i,n,o,t,e[s+3],22,-1044525330),t=g(t,i,n,o,e[s+4],7,-176418897),o=g(o,t,i,n,e[s+5],12,1200080426),n=g(n,o,t,i,e[s+6],17,-1473231341),i=g(i,n,o,t,e[s+7],22,-45705983),t=g(t,i,n,o,e[s+8],7,1770035416),o=g(o,t,i,n,e[s+9],12,-1958414417),n=g(n,o,t,i,e[s+10],17,-42063),i=g(i,n,o,t,e[s+11],22,-1990404162),t=g(t,i,n,o,e[s+12],7,1804603682),o=g(o,t,i,n,e[s+13],12,-40341101),n=g(n,o,t,i,e[s+14],17,-1502002290),i=g(i,n,o,t,e[s+15],22,1236535329),t=h(t,i,n,o,e[s+1],5,-165796510),o=h(o,t,i,n,e[s+6],9,-1069501632),n=h(n,o,t,i,e[s+11],14,643717713),i=h(i,n,o,t,e[s],20,-373897302),t=h(t,i,n,o,e[s+5],5,-701558691),o=h(o,t,i,n,e[s+10],9,38016083),n=h(n,o,t,i,e[s+15],14,-660478335),i=h(i,n,o,t,e[s+4],20,-405537848),t=h(t,i,n,o,e[s+9],5,568446438),o=h(o,t,i,n,e[s+14],9,-1019803690),n=h(n,o,t,i,e[s+3],14,-187363961),i=h(i,n,o,t,e[s+8],20,1163531501),t=h(t,i,n,o,e[s+13],5,-1444681467),o=h(o,t,i,n,e[s+2],9,-51403784),n=h(n,o,t,i,e[s+7],14,1735328473),i=h(i,n,o,t,e[s+12],20,-1926607734),t=y(t,i,n,o,e[s+5],4,-378558),o=y(o,t,i,n,e[s+8],11,-2022574463),n=y(n,o,t,i,e[s+11],16,1839030562),i=y(i,n,o,t,e[s+14],23,-35309556),t=y(t,i,n,o,e[s+1],4,-1530992060),o=y(o,t,i,n,e[s+4],11,1272893353),n=y(n,o,t,i,e[s+7],16,-155497632),i=y(i,n,o,t,e[s+10],23,-1094730640),t=y(t,i,n,o,e[s+13],4,681279174),o=y(o,t,i,n,e[s],11,-358537222),n=y(n,o,t,i,e[s+3],16,-722521979),i=y(i,n,o,t,e[s+6],23,76029189),t=y(t,i,n,o,e[s+9],4,-640364487),o=y(o,t,i,n,e[s+12],11,-421815835),n=y(n,o,t,i,e[s+15],16,530742520),i=y(i,n,o,t,e[s+2],23,-995338651),t=v(t,i,n,o,e[s],6,-198630844),o=v(o,t,i,n,e[s+7],10,1126891415),n=v(n,o,t,i,e[s+14],15,-1416354905),i=v(i,n,o,t,e[s+5],21,-57434055),t=v(t,i,n,o,e[s+12],6,1700485571),o=v(o,t,i,n,e[s+3],10,-1894986606),n=v(n,o,t,i,e[s+10],15,-1051523),i=v(i,n,o,t,e[s+1],21,-2054922799),t=v(t,i,n,o,e[s+8],6,1873313359),o=v(o,t,i,n,e[s+15],10,-30611744),n=v(n,o,t,i,e[s+6],15,-1560198380),i=v(i,n,o,t,e[s+13],21,1309151649),t=v(t,i,n,o,e[s+4],6,-145523070),o=v(o,t,i,n,e[s+11],10,-1120210379),n=v(n,o,t,i,e[s+2],15,718787259),i=v(i,n,o,t,e[s+9],21,-343485551),t=R(t,f),i=R(i,a),n=R(n,d),o=R(o,u)}return[t,i,n,o]}function rt(e){if(e.length===0)return[];for(var r=e.length*8,t=new Uint32Array(ce(r)),i=0;i<r;i+=8)t[i>>5]|=(e[i/8]&255)<<i%32;return t}function R(e,r){var t=(e&65535)+(r&65535),i=(e>>16)+(r>>16)+(t>>16);return i<<16|t&65535}function nt(e,r){return e<<r|e>>>32-r}function X(e,r,t,i,n,o){return R(nt(R(R(r,e),R(i,o)),n),t)}function g(e,r,t,i,n,o,s){return X(r&t|~r&i,e,r,n,o,s)}function h(e,r,t,i,n,o,s){return X(r&i|t&~i,e,r,n,o,s)}function y(e,r,t,i,n,o,s){return X(r^t^i,e,r,n,o,s)}function v(e,r,t,i,n,o,s){return X(t^(r|~i),e,r,n,o,s)}var me=We;var Zt=K("v3",48,me);function it(e,r,t){e=e||{};var i=e.random||(e.rng||Y)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,r){t=t||0;for(var n=0;n<16;++n)r[t+n]=i[n];return r}return B(i)}var Q=it;function ot(e,r,t,i){switch(e){case 0:return r&t^~r&i;case 1:return r^t^i;case 2:return r&t^r&i^t&i;case 3:return r^t^i}}function ne(e,r){return e<<r|e>>>32-r}function st(e){var r=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var i=unescape(encodeURIComponent(e));e=[];for(var n=0;n<i.length;++n)e.push(i.charCodeAt(n))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var o=e.length/4+2,s=Math.ceil(o/16),f=new Array(s),a=0;a<s;++a){for(var d=new Uint32Array(16),u=0;u<16;++u)d[u]=e[a*64+u*4]<<24|e[a*64+u*4+1]<<16|e[a*64+u*4+2]<<8|e[a*64+u*4+3];f[a]=d}f[s-1][14]=(e.length-1)*8/Math.pow(2,32),f[s-1][14]=Math.floor(f[s-1][14]),f[s-1][15]=(e.length-1)*8&4294967295;for(var E=0;E<s;++E){for(var T=new Uint32Array(80),P=0;P<16;++P)T[P]=f[E][P];for(var p=16;p<80;++p)T[p]=ne(T[p-3]^T[p-8]^T[p-14]^T[p-16],1);for(var S=t[0],A=t[1],k=t[2],c=t[3],U=t[4],O=0;O<80;++O){var M=Math.floor(O/20),te=ne(S,5)+ot(M,A,k,c)+U+r[M]+T[O]>>>0;U=c,c=k,k=ne(A,30)>>>0,A=S,S=te}t[0]=t[0]+S>>>0,t[1]=t[1]+A>>>0,t[2]=t[2]+k>>>0,t[3]=t[3]+c>>>0,t[4]=t[4]+U>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var ge=st;var nr=K("v5",80,ge);function ie(e){return[...new Uint8Array(e)].map(r=>r.toString(16).padStart(2,"0")).join("")}function he(e){return new Uint8Array((e.match(/../g)??[]).map(r=>parseInt(r,16)))}function ye(e){let r=0;for(let n of e)r+=n.length;let t=new Uint8Array(r),i=0;for(let n of e)t.set(n,i),i+=n.length;return t}var Oe=qe(Se());function fe(e,r){if((0,Oe.validate)(e,r).length)throw new Error(`couldn't validate schema: ${JSON.stringify(r)} didn't match schema ${JSON.stringify(e)}`)}var Re="3",Me="https://webapp-production-dot-remarkable-production.appspot.com",xt="https://rm-blob-storage-prod.appspot.com",Fe="x-goog-generation",wt="x-goog-if-generation-match",Tt=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],Et=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],Ce={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},Le={sm:50,md:125,rr:180,lg:200},je={df:-1,md:100,lg:150,xl:200},Pt={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},Ie={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},Ue={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},At={discriminator:"type",mapping:{CollectionType:{properties:Ie,optionalProperties:Ue},DocumentType:{properties:Ie,optionalProperties:{...Ue,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},H=class extends Error{constructor(t,i,n){super(n);this.status=t,this.statusText=i}},q=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function kt(e,{deviceDesc:r="desktop-linux",uuid:t=Q(),authUrl:i=Me,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let o=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:r,deviceID:t})});if(o.ok)return await o.text();throw new H(o.status,o.statusText,"couldn't register api")}function St({hash:e,type:r,documentId:t,subfiles:i,size:n}){return`${e}:${r}:${t}:${i}:${n}
|
|
2
|
-
`}function
|
|
3
|
-
`);if(i!==
|
|
4
|
-
${f}`,d=i.encode(a);return await this.putHash(s,d),this.cache&&await this.cache.set(s,a),{hash:s,type:"80000000",documentId:
|
|
1
|
+
var rmapi=(()=>{var Ne=Object.create;var V=Object.defineProperty;var $e=Object.getOwnPropertyDescriptor;var He=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Be=Object.prototype.hasOwnProperty;var q=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ve=(e,t)=>{for(var r in t)V(e,r,{get:t[r],enumerable:!0})},le=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of He(t))!Be.call(e,n)&&n!==r&&V(e,n,{get:()=>t[n],enumerable:!(i=$e(t,n))||i.enumerable});return e};var qe=(e,t,r)=>(r=e!=null?Ne(_e(e)):{},le(t||!e||!e.__esModule?V(r,"default",{value:e,enumerable:!0}):r,e)),Je=e=>le(V({},"__esModule",{value:!0}),e);var ie=q(l=>{"use strict";var he=l&&l.__rest||function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]]);return r};Object.defineProperty(l,"__esModule",{value:!0});l.isSchema=l.isValidSchema=l.isDiscriminatorForm=l.isValuesForm=l.isPropertiesForm=l.isElementsForm=l.isEnumForm=l.isTypeForm=l.isRefForm=l.isEmptyForm=void 0;function ar(e){let{definitions:t,nullable:r,metadata:i}=e,n=he(e,["definitions","nullable","metadata"]);return Object.keys(n).length===0}l.isEmptyForm=ar;function ye(e){return"ref"in e}l.isRefForm=ye;function fr(e){return"type"in e}l.isTypeForm=fr;function ve(e){return"enum"in e}l.isEnumForm=ve;function be(e){return"elements"in e}l.isElementsForm=be;function ne(e){return"properties"in e||"optionalProperties"in e}l.isPropertiesForm=ne;function xe(e){return"values"in e}l.isValuesForm=xe;function we(e){return"discriminator"in e}l.isDiscriminatorForm=we;function I(e,t){if(t===void 0&&(t=e),e.definitions!==void 0){if(t!==e)return!1;for(let r of Object.values(e.definitions))if(!I(r,t))return!1}if(ye(e)&&!(e.ref in(t.definitions||{}))||ve(e)&&(e.enum.length===0||e.enum.length!==new Set(e.enum).size))return!1;if(be(e))return I(e.elements,t);if(ne(e)){for(let r of Object.values(e.properties||{}))if(!I(r,t))return!1;for(let r of Object.values(e.optionalProperties||{}))if(!I(r,t))return!1;for(let r of Object.keys(e.properties||{}))if(r in(e.optionalProperties||{}))return!1}if(xe(e))return I(e.values,t);if(we(e)){for(let r of Object.values(e.mapping))if(!I(r,t)||!ne(r)||r.nullable||e.discriminator in(r.properties||{})||e.discriminator in(r.optionalProperties||{}))return!1}return!0}l.isValidSchema=I;var lr=[[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!0,!1,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!0,!1,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!0,!1,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!0,!1,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!1,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!1,!1,!1,!1],[!1,!1,!1,!1,!0,!1,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!0,!0,!0,!1,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!0,!1,!1],[!1,!1,!1,!1,!1,!1,!1,!1,!0,!0]],ur=["boolean","float32","float64","int8","uint8","int16","uint16","int32","uint32","string","timestamp"];function U(e){if(typeof e!="object"||Array.isArray(e)||e===null)return!1;let t=e,{definitions:r=void 0,nullable:i=void 0,metadata:n=void 0,ref:o=void 0,type:s=void 0,enum:f=void 0,elements:a=void 0,properties:d=void 0,optionalProperties:u=void 0,additionalProperties:E=void 0,values:m=void 0,discriminator:P=void 0,mapping:p=void 0}=t,k=he(t,["definitions","nullable","metadata","ref","type","enum","elements","properties","optionalProperties","additionalProperties","values","discriminator","mapping"]),S=[o!==void 0,s!==void 0,f!==void 0,a!==void 0,d!==void 0,u!==void 0,E!==void 0,m!==void 0,P!==void 0,p!==void 0],A=!1;for(let g of lr)A=A||g.every((B,N)=>B===S[N]);if(!A)return!1;if(r!==void 0){if(typeof r!="object"||Array.isArray(r)||r===null)return!1;for(let g of Object.values(r))if(!U(g))return!1}if(i!==void 0&&typeof i!="boolean"||n!==void 0&&(typeof n!="object"||Array.isArray(n)||n===null)||o!==void 0&&typeof o!="string"||s!==void 0&&(typeof s!="string"||!ur.includes(s))||f!==void 0&&(!Array.isArray(f)||!f.every(g=>typeof g=="string"))||a!==void 0&&!U(a))return!1;if(d!==void 0){if(typeof d!="object"||Array.isArray(d)||d===null)return!1;for(let g of Object.values(d))if(!U(g))return!1}if(u!==void 0){if(typeof u!="object"||Array.isArray(u)||u===null)return!1;for(let g of Object.values(u))if(!U(g))return!1}if(E!==void 0&&typeof E!="boolean"||m!==void 0&&!U(m)||P!==void 0&&typeof P!="string")return!1;if(p!==void 0){if(typeof p!="object"||Array.isArray(p)||p===null)return!1;for(let g of Object.values(p))if(!U(g))return!1}return Object.keys(k).length===0}l.isSchema=U});var Te=q(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});var dr=/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(\.\d+)?([zZ]|((\+|-)(\d{2}):(\d{2})))$/;function pr(e){let t=e.match(dr);if(t===null)return!1;let r=parseInt(t[1],10),i=parseInt(t[2],10),n=parseInt(t[3],10),o=parseInt(t[4],10),s=parseInt(t[5],10),f=parseInt(t[6],10);return!(i>12||n>cr(r,i)||o>23||s>59||f>60)}oe.default=pr;function cr(e,t){return t===2?mr(e)?29:28:gr[t]}function mr(e){return e%4===0&&(e%100!==0||e%400===0)}var gr=[0,31,0,31,30,31,30,31,31,30,31,30,31]});var Ee=q(F=>{"use strict";var hr=F&&F.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(F,"__esModule",{value:!0});F.validate=F.MaxDepthExceededError=void 0;var yr=hr(Te()),M=ie(),X=class extends Error{};F.MaxDepthExceededError=X;var Q=class extends Error{};function vr(e,t,r){let i={errors:[],instanceTokens:[],schemaTokens:[[]],root:e,config:r||{maxDepth:0,maxErrors:0}};try{j(i,e,t)}catch(n){if(!(n instanceof Q))throw n}return i.errors}F.validate=vr;function j(e,t,r,i){if(!(t.nullable&&r===null)){if(M.isRefForm(t)){if(e.schemaTokens.length===e.config.maxDepth)throw new X;e.schemaTokens.push(["definitions",t.ref]),j(e,e.root.definitions[t.ref],r),e.schemaTokens.pop()}else if(M.isTypeForm(t)){switch(x(e,"type"),t.type){case"boolean":typeof r!="boolean"&&w(e);break;case"float32":case"float64":typeof r!="number"&&w(e);break;case"int8":_(e,r,-128,127);break;case"uint8":_(e,r,0,255);break;case"int16":_(e,r,-32768,32767);break;case"uint16":_(e,r,0,65535);break;case"int32":_(e,r,-2147483648,2147483647);break;case"uint32":_(e,r,0,4294967295);break;case"string":typeof r!="string"&&w(e);break;case"timestamp":typeof r!="string"?w(e):yr.default(r)||w(e);break}T(e)}else if(M.isEnumForm(t))x(e,"enum"),(typeof r!="string"||!t.enum.includes(r))&&w(e),T(e);else if(M.isElementsForm(t)){if(x(e,"elements"),Array.isArray(r))for(let[n,o]of r.entries())C(e,n.toString()),j(e,t.elements,o),L(e);else w(e);T(e)}else if(M.isPropertiesForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r)){if(t.properties!==void 0){x(e,"properties");for(let[n,o]of Object.entries(t.properties))x(e,n),r.hasOwnProperty(n)?(C(e,n),j(e,o,r[n]),L(e)):w(e),T(e);T(e)}if(t.optionalProperties!==void 0){x(e,"optionalProperties");for(let[n,o]of Object.entries(t.optionalProperties))x(e,n),r.hasOwnProperty(n)&&(C(e,n),j(e,o,r[n]),L(e)),T(e);T(e)}if(t.additionalProperties!==!0)for(let n of Object.keys(r)){let o=t.properties&&n in t.properties,s=t.optionalProperties&&n in t.optionalProperties;!o&&!s&&n!==i&&(C(e,n),w(e),L(e))}}else t.properties!==void 0?x(e,"properties"):x(e,"optionalProperties"),w(e),T(e);else if(M.isValuesForm(t)){if(x(e,"values"),typeof r=="object"&&r!==null&&!Array.isArray(r))for(let[n,o]of Object.entries(r))C(e,n),j(e,t.values,o),L(e);else w(e);T(e)}else if(M.isDiscriminatorForm(t))if(typeof r=="object"&&r!==null&&!Array.isArray(r))if(r.hasOwnProperty(t.discriminator)){let n=r[t.discriminator];typeof n=="string"?n in t.mapping?(x(e,"mapping"),x(e,n),j(e,t.mapping[n],r,t.discriminator),T(e),T(e)):(x(e,"mapping"),C(e,t.discriminator),w(e),L(e),T(e)):(x(e,"discriminator"),C(e,t.discriminator),w(e),L(e),T(e))}else x(e,"discriminator"),w(e),T(e);else x(e,"discriminator"),w(e),T(e)}}function _(e,t,r,i){(typeof t!="number"||!Number.isInteger(t)||t<r||t>i)&&w(e)}function C(e,t){e.instanceTokens.push(t)}function L(e){e.instanceTokens.pop()}function x(e,t){e.schemaTokens[e.schemaTokens.length-1].push(t)}function T(e){e.schemaTokens[e.schemaTokens.length-1].pop()}function w(e){if(e.errors.push({instancePath:[...e.instanceTokens],schemaPath:[...e.schemaTokens[e.schemaTokens.length-1]]}),e.errors.length===e.config.maxErrors)throw new Q}});var Ae=q(R=>{"use strict";var br=R&&R.__createBinding||(Object.create?function(e,t,r,i){i===void 0&&(i=r),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,i){i===void 0&&(i=r),e[i]=t[r]}),Pe=R&&R.__exportStar||function(e,t){for(var r in e)r!=="default"&&!t.hasOwnProperty(r)&&br(t,e,r)};Object.defineProperty(R,"__esModule",{value:!0});Pe(ie(),R);Pe(Ee(),R)});var Or={};Ve(Or,{GenerationError:()=>W,ResponseError:()=>D,builtinFontNames:()=>Er,builtinLineHeights:()=>Ce,builtinMargins:()=>Me,builtinTextScales:()=>Ue,builtinTools:()=>Tr,formatEntry:()=>Le,parseEntry:()=>je,register:()=>kr,remarkable:()=>Sr});var J,ze=new Uint8Array(16);function z(){if(!J&&(J=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!J))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return J(ze)}var ue=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Ge(e){return typeof e=="string"&&ue.test(e)}var $=Ge;var c=[];for(G=0;G<256;++G)c.push((G+256).toString(16).substr(1));var G;function Ye(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=(c[e[t+0]]+c[e[t+1]]+c[e[t+2]]+c[e[t+3]]+"-"+c[e[t+4]]+c[e[t+5]]+"-"+c[e[t+6]]+c[e[t+7]]+"-"+c[e[t+8]]+c[e[t+9]]+"-"+c[e[t+10]]+c[e[t+11]]+c[e[t+12]]+c[e[t+13]]+c[e[t+14]]+c[e[t+15]]).toLowerCase();if(!$(r))throw TypeError("Stringified UUID is invalid");return r}var H=Ye;function Ze(e){if(!$(e))throw TypeError("Invalid UUID");var t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var ee=Ze;function Ke(e){e=unescape(encodeURIComponent(e));for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}var Xe="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Qe="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Y(e,t,r){function i(n,o,s,f){if(typeof n=="string"&&(n=Ke(n)),typeof o=="string"&&(o=ee(o)),o.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var a=new Uint8Array(16+n.length);if(a.set(o),a.set(n,o.length),a=r(a),a[6]=a[6]&15|t,a[8]=a[8]&63|128,s){f=f||0;for(var d=0;d<16;++d)s[f+d]=a[d];return s}return H(a)}try{i.name=e}catch{}return i.DNS=Xe,i.URL=Qe,i}function We(e){if(typeof e=="string"){var t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(var r=0;r<t.length;++r)e[r]=t.charCodeAt(r)}return er(rr(tr(e),e.length*8))}function er(e){for(var t=[],r=e.length*32,i="0123456789abcdef",n=0;n<r;n+=8){var o=e[n>>5]>>>n%32&255,s=parseInt(i.charAt(o>>>4&15)+i.charAt(o&15),16);t.push(s)}return t}function de(e){return(e+64>>>9<<4)+14+1}function rr(e,t){e[t>>5]|=128<<t%32,e[de(t)-1]=t;for(var r=1732584193,i=-271733879,n=-1732584194,o=271733878,s=0;s<e.length;s+=16){var f=r,a=i,d=n,u=o;r=h(r,i,n,o,e[s],7,-680876936),o=h(o,r,i,n,e[s+1],12,-389564586),n=h(n,o,r,i,e[s+2],17,606105819),i=h(i,n,o,r,e[s+3],22,-1044525330),r=h(r,i,n,o,e[s+4],7,-176418897),o=h(o,r,i,n,e[s+5],12,1200080426),n=h(n,o,r,i,e[s+6],17,-1473231341),i=h(i,n,o,r,e[s+7],22,-45705983),r=h(r,i,n,o,e[s+8],7,1770035416),o=h(o,r,i,n,e[s+9],12,-1958414417),n=h(n,o,r,i,e[s+10],17,-42063),i=h(i,n,o,r,e[s+11],22,-1990404162),r=h(r,i,n,o,e[s+12],7,1804603682),o=h(o,r,i,n,e[s+13],12,-40341101),n=h(n,o,r,i,e[s+14],17,-1502002290),i=h(i,n,o,r,e[s+15],22,1236535329),r=y(r,i,n,o,e[s+1],5,-165796510),o=y(o,r,i,n,e[s+6],9,-1069501632),n=y(n,o,r,i,e[s+11],14,643717713),i=y(i,n,o,r,e[s],20,-373897302),r=y(r,i,n,o,e[s+5],5,-701558691),o=y(o,r,i,n,e[s+10],9,38016083),n=y(n,o,r,i,e[s+15],14,-660478335),i=y(i,n,o,r,e[s+4],20,-405537848),r=y(r,i,n,o,e[s+9],5,568446438),o=y(o,r,i,n,e[s+14],9,-1019803690),n=y(n,o,r,i,e[s+3],14,-187363961),i=y(i,n,o,r,e[s+8],20,1163531501),r=y(r,i,n,o,e[s+13],5,-1444681467),o=y(o,r,i,n,e[s+2],9,-51403784),n=y(n,o,r,i,e[s+7],14,1735328473),i=y(i,n,o,r,e[s+12],20,-1926607734),r=v(r,i,n,o,e[s+5],4,-378558),o=v(o,r,i,n,e[s+8],11,-2022574463),n=v(n,o,r,i,e[s+11],16,1839030562),i=v(i,n,o,r,e[s+14],23,-35309556),r=v(r,i,n,o,e[s+1],4,-1530992060),o=v(o,r,i,n,e[s+4],11,1272893353),n=v(n,o,r,i,e[s+7],16,-155497632),i=v(i,n,o,r,e[s+10],23,-1094730640),r=v(r,i,n,o,e[s+13],4,681279174),o=v(o,r,i,n,e[s],11,-358537222),n=v(n,o,r,i,e[s+3],16,-722521979),i=v(i,n,o,r,e[s+6],23,76029189),r=v(r,i,n,o,e[s+9],4,-640364487),o=v(o,r,i,n,e[s+12],11,-421815835),n=v(n,o,r,i,e[s+15],16,530742520),i=v(i,n,o,r,e[s+2],23,-995338651),r=b(r,i,n,o,e[s],6,-198630844),o=b(o,r,i,n,e[s+7],10,1126891415),n=b(n,o,r,i,e[s+14],15,-1416354905),i=b(i,n,o,r,e[s+5],21,-57434055),r=b(r,i,n,o,e[s+12],6,1700485571),o=b(o,r,i,n,e[s+3],10,-1894986606),n=b(n,o,r,i,e[s+10],15,-1051523),i=b(i,n,o,r,e[s+1],21,-2054922799),r=b(r,i,n,o,e[s+8],6,1873313359),o=b(o,r,i,n,e[s+15],10,-30611744),n=b(n,o,r,i,e[s+6],15,-1560198380),i=b(i,n,o,r,e[s+13],21,1309151649),r=b(r,i,n,o,e[s+4],6,-145523070),o=b(o,r,i,n,e[s+11],10,-1120210379),n=b(n,o,r,i,e[s+2],15,718787259),i=b(i,n,o,r,e[s+9],21,-343485551),r=O(r,f),i=O(i,a),n=O(n,d),o=O(o,u)}return[r,i,n,o]}function tr(e){if(e.length===0)return[];for(var t=e.length*8,r=new Uint32Array(de(t)),i=0;i<t;i+=8)r[i>>5]|=(e[i/8]&255)<<i%32;return r}function O(e,t){var r=(e&65535)+(t&65535),i=(e>>16)+(t>>16)+(r>>16);return i<<16|r&65535}function nr(e,t){return e<<t|e>>>32-t}function Z(e,t,r,i,n,o){return O(nr(O(O(t,e),O(i,o)),n),r)}function h(e,t,r,i,n,o,s){return Z(t&r|~t&i,e,t,n,o,s)}function y(e,t,r,i,n,o,s){return Z(t&i|r&~i,e,t,n,o,s)}function v(e,t,r,i,n,o,s){return Z(t^r^i,e,t,n,o,s)}function b(e,t,r,i,n,o,s){return Z(r^(t|~i),e,t,n,o,s)}var pe=We;var Gr=Y("v3",48,pe);function ir(e,t,r){e=e||{};var i=e.random||(e.rng||z)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,t){r=r||0;for(var n=0;n<16;++n)t[r+n]=i[n];return t}return H(i)}var K=ir;function or(e,t,r,i){switch(e){case 0:return t&r^~t&i;case 1:return t^r^i;case 2:return t&r^t&i^r&i;case 3:return t^r^i}}function re(e,t){return e<<t|e>>>32-t}function sr(e){var t=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var i=unescape(encodeURIComponent(e));e=[];for(var n=0;n<i.length;++n)e.push(i.charCodeAt(n))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var o=e.length/4+2,s=Math.ceil(o/16),f=new Array(s),a=0;a<s;++a){for(var d=new Uint32Array(16),u=0;u<16;++u)d[u]=e[a*64+u*4]<<24|e[a*64+u*4+1]<<16|e[a*64+u*4+2]<<8|e[a*64+u*4+3];f[a]=d}f[s-1][14]=(e.length-1)*8/Math.pow(2,32),f[s-1][14]=Math.floor(f[s-1][14]),f[s-1][15]=(e.length-1)*8&4294967295;for(var E=0;E<s;++E){for(var m=new Uint32Array(80),P=0;P<16;++P)m[P]=f[E][P];for(var p=16;p<80;++p)m[p]=re(m[p-3]^m[p-8]^m[p-14]^m[p-16],1);for(var k=r[0],S=r[1],A=r[2],g=r[3],B=r[4],N=0;N<80;++N){var fe=Math.floor(N/20),De=re(k,5)+or(fe,S,A,g)+B+t[fe]+m[N]>>>0;B=g,g=A,A=re(S,30)>>>0,S=k,k=De}r[0]=r[0]+k>>>0,r[1]=r[1]+S>>>0,r[2]=r[2]+A>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+B>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}var ce=sr;var rt=Y("v5",80,ce);function te(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,"0")).join("")}function me(e){return new Uint8Array((e.match(/../g)??[]).map(t=>parseInt(t,16)))}function ge(e){let t=0;for(let n of e)t+=n.length;let r=new Uint8Array(t),i=0;for(let n of e)r.set(n,i),i+=n.length;return r}var ke=qe(Ae());function se(e,t){if((0,ke.validate)(e,t).length)throw new Error(`couldn't validate schema: ${JSON.stringify(t)} didn't match schema ${JSON.stringify(e)}`)}var Se="3",Ie="https://webapp-production-dot-remarkable-production.appspot.com",xr="https://rm-blob-storage-prod.appspot.com",Oe="x-goog-generation",wr="x-goog-if-generation-match",Tr=["Ballpoint","Ballpointv2","Brush","Calligraphy","ClearPage","EraseSection","Eraser","Fineliner","Finelinerv2","Highlighter","Highlighterv2","Marker","Markerv2","Paintbrush","Paintbrushv2","Pencilv2","SharpPencil","SharpPencilv2","SolidPen","ZoomTool"],Er=["Maison Neue","EB Garamond","Noto Sans","Noto Serif","Noto Mono","Noto Sans UI"],Ue={xs:.7,sm:.8,md:1,lg:1.2,xl:1.5,xx:2},Me={sm:50,md:125,rr:180,lg:200},Ce={df:-1,md:100,lg:150,xl:200},Pr={properties:{relative_path:{type:"string"},url:{type:"string"},expires:{type:"timestamp"},method:{enum:["POST","GET","PUT","DELETE"]}}},Fe={visibleName:{type:"string"},parent:{type:"string"},lastModified:{type:"string"},version:{type:"int32"},synced:{type:"boolean"}},Re={pinned:{type:"boolean"},modified:{type:"boolean"},deleted:{type:"boolean"},metadatamodified:{type:"boolean"}},Ar={discriminator:"type",mapping:{CollectionType:{properties:Fe,optionalProperties:Re},DocumentType:{properties:Fe,optionalProperties:{...Re,lastOpened:{type:"string"},lastOpenedPage:{type:"int32"}}}}},D=class extends Error{constructor(r,i,n){super(n);this.status=r,this.statusText=i}},W=class extends Error{constructor(){super("Generation preconditions failed. This means the current state is out of date with the cloud and needs to be re-synced.")}};async function kr(e,{deviceDesc:t="desktop-linux",uuid:r=K(),authUrl:i=Ie,fetch:n=globalThis.fetch}={}){if(e.length!==8)throw new Error(`code should be length 8, but was ${e.length}`);let o=await n(`${i}/token/json/2/device/new`,{method:"POST",headers:{Authorization:"Bearer"},body:JSON.stringify({code:e,deviceDesc:t,deviceID:r})});if(o.ok)return await o.text();throw new D(o.status,o.statusText,"couldn't register api")}function Le({hash:e,type:t,documentId:r,subfiles:i,size:n}){return`${e}:${t}:${r}:${i}:${n}
|
|
2
|
+
`}function je(e){let[t,r,i,n,o]=e.split(":");if(t===void 0||r===void 0||i===void 0||n===void 0||o===void 0)throw new Error(`entries line didn't contain five fields: '${e}'`);if(r==="80000000")return{hash:t,type:r,documentId:i,subfiles:parseInt(n),size:BigInt(o)};if(r==="0"){if(n!=="0")throw new Error(`file type entry had nonzero number of subfiles: ${n}`);return{hash:t,type:r,documentId:i,subfiles:0,size:BigInt(o)}}else throw new Error(`entries line contained invalid type: ${r}`)}var ae=class{constructor(t,r,i,n,o){this.userToken=t;this.fetch=r;this.cache=i;this.subtle=n;this.blobUrl=o}async authedFetch(t,r,i="POST"){let n=await this.fetch(t,{method:i,headers:{Authorization:`Bearer ${this.userToken}`},body:r&&JSON.stringify(r)});if(n.ok)return n;throw new D(n.status,n.statusText,"failed reMarkable request")}async signedFetch({url:t,method:r},i,n){let o=await this.fetch(t,{method:r,body:i,headers:n});if(o.ok)return o;{let s=await o.text();throw new D(o.status,o.statusText,s)}}async getUrl(t,r){let i=r===void 0?"downloads":"uploads",n=r==null?void 0:`${r}`,s=await(await this.authedFetch(`${this.blobUrl}/api/v1/signed-urls/${i}`,{http_method:n===void 0?"GET":"PUT",relative_path:t,generation:n})).text(),f=JSON.parse(s);return se(Pr,f),f}async syncComplete(){await this.authedFetch(`${this.blobUrl}/api/v1/sync-complete`)}async getRootHash(){let t=await this.getUrl("root"),r=await this.signedFetch(t),i=r.headers.get(Oe);if(!i)throw new Error("no generation header in root hash");return[await r.text(),BigInt(i)]}async putRootHash(t,r){let i=await this.getUrl("root",r),n;try{n=await this.signedFetch(i,t,{[wr]:`${r}`})}catch(s){throw s instanceof D&&s.status===412?new W:s}let o=n.headers.get(Oe);if(!o)throw new Error("no generation header in root hash");return BigInt(o)}async getBuffer(t){let r=await this.getUrl(t);return await(await this.signedFetch(r)).arrayBuffer()}async getText(t){let r=this.cache&&await this.cache.get(t);if(r)return r;{let i=await this.getUrl(t),o=await(await this.signedFetch(i)).text();return this.cache&&await this.cache.set(t,o),o}}async getMetadata(t){let r=await this.getText(t),i=JSON.parse(r);return se(Ar,i),i}async getEntries(t){let r=await this.getText(t),[i,...n]=r.slice(0,-1).split(`
|
|
3
|
+
`);if(i!==Se)throw new Error(`got unexpected schema version: ${i}`);return n.map(je)}async putHash(t,r){let i=await this.getUrl(t,null);await this.signedFetch(i,r)}async putEntries(t,r){let i=new TextEncoder;r.sort((u,E)=>u.documentId.localeCompare(E.documentId));let n=ge(r.map(u=>me(u.hash))),o=await this.subtle.digest("SHA-256",n),s=te(o),f=r.map(Le).join(""),a=`${Se}
|
|
4
|
+
${f}`,d=i.encode(a);return await this.putHash(s,d),this.cache&&await this.cache.set(s,a),{hash:s,type:"80000000",documentId:t,subfiles:r.length,size:0n}}async putBuffer(t,r){let i=await this.subtle.digest("SHA-256",r),n=te(i);return await this.putHash(n,r),{hash:n,type:"0",documentId:t,subfiles:0,size:BigInt(r.length)}}async putText(t,r){let i=new TextEncoder,n=await this.putBuffer(t,i.encode(r));return this.cache&&await this.cache.set(n.hash,r),n}async putEpub(t,r,{parent:i="",margins:n=125,orientation:o,textAlignment:s,textScale:f=1,lineHeight:a=-1,fontName:d="",cover:u="visited",lastTool:E}={}){let m=K(),P=`${new Date().valueOf()}`,p=[];p.push(this.putBuffer(`${m}.epub`,r));let k={type:"DocumentType",visibleName:t,version:0,parent:i,synced:!0,lastModified:P};p.push(this.putText(`${m}.metadata`,JSON.stringify(k)));let S={dummyDocument:!1,extraMetadata:{LastTool:E},fileType:"epub",pageCount:0,lastOpenedPage:0,lineHeight:typeof a=="string"?Ce[a]:a,margins:typeof n=="string"?Me[n]:n,textScale:typeof f=="string"?Ue[f]:f,pages:[],coverPageNumber:u==="first"?0:-1,formatVersion:1,orientation:o,textAlignment:s,fontName:d};p.push(this.putText(`${m}.content`,JSON.stringify(S)));let A=await Promise.all(p);return await this.putEntries(m,A)}};async function Sr(e,{fetch:t=globalThis.fetch,cache:r,subtle:i=globalThis.crypto?.subtle,authUrl:n=Ie,blobUrl:o=xr}={}){let s=await t(`${n}/token/json/2/user/new`,{method:"POST",headers:{Authorization:`Bearer ${e}`}});if(!s.ok)throw new Error(`couldn't fetch auth token: ${s.statusText}`);let f=await s.text();return new ae(f,t,r,i,o)}return Je(Or);})();
|
package/dist/index.d.ts
CHANGED
|
@@ -54,7 +54,7 @@ export interface CollectionEntry {
|
|
|
54
54
|
/** the number of subfiles */
|
|
55
55
|
subfiles: number;
|
|
56
56
|
/** collections don't have sizes */
|
|
57
|
-
size:
|
|
57
|
+
size: bigint;
|
|
58
58
|
}
|
|
59
59
|
/** a remarkable entry for cloud data */
|
|
60
60
|
export interface FileEntry {
|
|
@@ -277,17 +277,6 @@ export interface PutEpubOptions {
|
|
|
277
277
|
fontName?: string | undefined;
|
|
278
278
|
/** the tool to have enabled by default */
|
|
279
279
|
lastTool?: string;
|
|
280
|
-
/** set to false to disable notifying other clients of the update */
|
|
281
|
-
notify?: boolean | undefined;
|
|
282
|
-
/**
|
|
283
|
-
* set number of retries for publish
|
|
284
|
-
*
|
|
285
|
-
* The final part of uploading involves update the root hash to include the
|
|
286
|
-
* new contents. If several places are attempting to change content this will
|
|
287
|
-
* fail, so setting a positive number of retries here causes it to retry that
|
|
288
|
-
* final step.
|
|
289
|
-
*/
|
|
290
|
-
retries?: number | undefined;
|
|
291
280
|
}
|
|
292
281
|
/**
|
|
293
282
|
* the api for accessing remarkable functions
|
|
@@ -311,6 +300,8 @@ export interface RemarkableApi {
|
|
|
311
300
|
* @param hash - the hash of the new root collection
|
|
312
301
|
* @param generation - the current generation this builds off of
|
|
313
302
|
* @returns the new generation
|
|
303
|
+
* @throws {@link GenerationError} if the current cloud generation didn't
|
|
304
|
+
* match the expected pushed generation.
|
|
314
305
|
*/
|
|
315
306
|
putRootHash(hash: string, generation: bigint): Promise<bigint>;
|
|
316
307
|
/**
|
|
@@ -347,12 +338,36 @@ export interface RemarkableApi {
|
|
|
347
338
|
/**
|
|
348
339
|
* upload an epub
|
|
349
340
|
*
|
|
341
|
+
* @remarks this only uploads the raw data and returns an entry that could be
|
|
342
|
+
* uploaded as part of a larger collection. To make sure devices know about
|
|
343
|
+
* it, you'll still need to update the root hash, and potentially notify
|
|
344
|
+
* other devices.
|
|
345
|
+
*
|
|
346
|
+
* @example
|
|
347
|
+
* This example shows a full process upload. Note that it may fail if other
|
|
348
|
+
* devices are simultaneously syncing content. See {@link putRootHash} for
|
|
349
|
+
* more information.
|
|
350
|
+
*
|
|
351
|
+
* ```ts
|
|
352
|
+
* const entry = await putEpub(...);
|
|
353
|
+
* const [root, gen] = await api.getRootHash();
|
|
354
|
+
* const rootEntries = await api.getEntries(root);
|
|
355
|
+
* rootEntries.push(entry);
|
|
356
|
+
* const { hash } = await api.putEntries("", rootEntries);
|
|
357
|
+
* await api.putRootHash(hash, gen);
|
|
358
|
+
* await api.syncComplete();
|
|
359
|
+
* ```
|
|
360
|
+
*
|
|
350
361
|
* @param visibleName - the name to show for the uploaded epub
|
|
351
362
|
* @param buffer - the epub contents
|
|
352
363
|
* @param opts - extra options you can specify at upload
|
|
353
364
|
*/
|
|
354
|
-
putEpub(visibleName: string, buffer: Uint8Array, opts?: PutEpubOptions): Promise<
|
|
365
|
+
putEpub(visibleName: string, buffer: Uint8Array, opts?: PutEpubOptions): Promise<Entry>;
|
|
355
366
|
}
|
|
367
|
+
/** format an entry */
|
|
368
|
+
export declare function formatEntry({ hash, type, documentId, subfiles, size, }: Entry): string;
|
|
369
|
+
/** parse an entry */
|
|
370
|
+
export declare function parseEntry(line: string): Entry;
|
|
356
371
|
/** options for a remarkable instance */
|
|
357
372
|
export interface RemarkableOptions {
|
|
358
373
|
/**
|
package/dist/index.js
CHANGED
|
@@ -30,7 +30,13 @@
|
|
|
30
30
|
* import { remarkable } from "rmapi-js";
|
|
31
31
|
*
|
|
32
32
|
* const api = await remarkable(...);
|
|
33
|
-
* await api.putEpub("document name", epubBuffer);
|
|
33
|
+
* const entry = await api.putEpub("document name", epubBuffer);
|
|
34
|
+
* const [root, gen] = await api.getRootHash();
|
|
35
|
+
* const rootEntries = await api.getEntries(root);
|
|
36
|
+
* rootEntries.push(entry);
|
|
37
|
+
* const { hash } = await api.putEntries("", rootEntries);
|
|
38
|
+
* await api.putRootHash(hash, gen);
|
|
39
|
+
* await api.syncComplete();
|
|
34
40
|
* ```
|
|
35
41
|
*
|
|
36
42
|
* @packageDocumentation
|
|
@@ -206,11 +212,11 @@ export async function register(code, { deviceDesc = "desktop-linux", uuid = uuid
|
|
|
206
212
|
}
|
|
207
213
|
}
|
|
208
214
|
/** format an entry */
|
|
209
|
-
function formatEntry({ hash, type, documentId, subfiles, size, }) {
|
|
215
|
+
export function formatEntry({ hash, type, documentId, subfiles, size, }) {
|
|
210
216
|
return `${hash}:${type}:${documentId}:${subfiles}:${size}\n`;
|
|
211
217
|
}
|
|
212
218
|
/** parse an entry */
|
|
213
|
-
function parseEntry(line) {
|
|
219
|
+
export function parseEntry(line) {
|
|
214
220
|
const [hash, type, documentId, subfiles, size] = line.split(":");
|
|
215
221
|
if (hash === undefined ||
|
|
216
222
|
type === undefined ||
|
|
@@ -220,18 +226,13 @@ function parseEntry(line) {
|
|
|
220
226
|
throw new Error(`entries line didn't contain five fields: '${line}'`);
|
|
221
227
|
}
|
|
222
228
|
if (type === "80000000") {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
documentId,
|
|
231
|
-
subfiles: parseInt(subfiles),
|
|
232
|
-
size: 0n,
|
|
233
|
-
};
|
|
234
|
-
}
|
|
229
|
+
return {
|
|
230
|
+
hash,
|
|
231
|
+
type,
|
|
232
|
+
documentId,
|
|
233
|
+
subfiles: parseInt(subfiles),
|
|
234
|
+
size: BigInt(size),
|
|
235
|
+
};
|
|
235
236
|
}
|
|
236
237
|
else if (type === "0") {
|
|
237
238
|
if (subfiles !== "0") {
|
|
@@ -443,7 +444,7 @@ class Remarkable {
|
|
|
443
444
|
return entry;
|
|
444
445
|
}
|
|
445
446
|
/** upload an epub */
|
|
446
|
-
async putEpub(visibleName, buffer, { parent = "", margins = 125, orientation, textAlignment, textScale = 1, lineHeight = -1, fontName = "", cover = "visited", lastTool,
|
|
447
|
+
async putEpub(visibleName, buffer, { parent = "", margins = 125, orientation, textAlignment, textScale = 1, lineHeight = -1, fontName = "", cover = "visited", lastTool, } = {}) {
|
|
447
448
|
const documentId = uuid4();
|
|
448
449
|
const lastModified = `${new Date().valueOf()}`;
|
|
449
450
|
const entryPromises = [];
|
|
@@ -487,28 +488,7 @@ class Remarkable {
|
|
|
487
488
|
// before all contents are uploaded, but this also saves us from uploading
|
|
488
489
|
// the contents entry before all have uploaded successfully
|
|
489
490
|
const entries = await Promise.all(entryPromises);
|
|
490
|
-
|
|
491
|
-
// sync root hash
|
|
492
|
-
// if server undergoes update, this will fail, and we'll need to start
|
|
493
|
-
// again, up to `retries`.
|
|
494
|
-
for (;; --retries) {
|
|
495
|
-
try {
|
|
496
|
-
const [root, gen] = await this.getRootHash();
|
|
497
|
-
const rootEntries = await this.getEntries(root);
|
|
498
|
-
rootEntries.push(entry);
|
|
499
|
-
const { hash } = await this.putEntries("", rootEntries);
|
|
500
|
-
await this.putRootHash(hash, gen);
|
|
501
|
-
break;
|
|
502
|
-
}
|
|
503
|
-
catch (ex) {
|
|
504
|
-
if (retries <= 0 || !(ex instanceof GenerationError)) {
|
|
505
|
-
throw ex;
|
|
506
|
-
}
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
if (notify) {
|
|
510
|
-
await this.syncComplete();
|
|
511
|
-
}
|
|
491
|
+
return await this.putEntries(documentId, entries);
|
|
512
492
|
}
|
|
513
493
|
}
|
|
514
494
|
/**
|
package/package.json
CHANGED