@magiclabs.ai/magicbook-client 0.4.1-dev → 0.4.1

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.
@@ -1,4 +1,4 @@
1
- export declare const states: readonly ["new", "ingesting", "submitted", "storyboarding", "storyboarding succeeded", "designing", "designing succeeded", "layouting", "layouting succeeded", "embellishing", "embellishing succeeded", "polishing", "polishing succeeded", "ready", "error"];
1
+ export declare const states: readonly ["new", "ingesting", "submitted", "waiting for storyboard", "storyboarding", "waiting for initialize design", "design initialized", "waiting for design", "designing", "ready", "error"];
2
2
  export declare const occasions: readonly ["baby", "birthday", "default", "everyday", "family", "kids", "life-stories", "portfolio", "school-memories", "seasonal-holidays", "special-celebrations", "sports-and-hobbies", "travel", "wedding", "year-in-review"];
3
3
  export declare const styles: {
4
4
  1005: {
@@ -1459,7 +1459,7 @@ async function C(e) {
1459
1459
  return Promise.reject(t);
1460
1460
  }
1461
1461
  }
1462
- const R = " https://jmpuf4u3tj.execute-api.us-east-1.amazonaws.com/dev", hs = "1000";
1462
+ const R = "https://zrrpg8wwbe.execute-api.us-east-1.amazonaws.com/sfly-sls", hs = "1000";
1463
1463
  async function ms(e, t) {
1464
1464
  return C(
1465
1465
  async () => await He({ url: `${R}/api/v1/images/book/${e}`, payload: t })
@@ -1495,16 +1495,12 @@ const Ls = [
1495
1495
  "new",
1496
1496
  "ingesting",
1497
1497
  "submitted",
1498
+ "waiting for storyboard",
1498
1499
  "storyboarding",
1499
- "storyboarding succeeded",
1500
+ "waiting for initialize design",
1501
+ "design initialized",
1502
+ "waiting for design",
1500
1503
  "designing",
1501
- "designing succeeded",
1502
- "layouting",
1503
- "layouting succeeded",
1504
- "embellishing",
1505
- "embellishing succeeded",
1506
- "polishing",
1507
- "polishing succeeded",
1508
1504
  "ready",
1509
1505
  "error"
1510
1506
  ], bs = [
@@ -1,3 +1,3 @@
1
- (function(g,S){typeof exports=="object"&&typeof module<"u"?S(exports):typeof define=="function"&&define.amd?define(["exports"],S):(g=typeof globalThis<"u"?globalThis:g||self,S(g["magicbook-client"]={}))})(this,function(g){"use strict";var Fs=Object.defineProperty;var Bs=(g,S,N)=>S in g?Fs(g,S,{enumerable:!0,configurable:!0,writable:!0,value:N}):g[S]=N;var h=(g,S,N)=>(Bs(g,typeof S!="symbol"?S+"":S,N),N);function S(e,t,s){const n=t.pop()||"",r=t.reduce((i,o)=>i[o]=i[o]||{},e);r[n]=s}function N(e,t){return Object.keys(t).map(s=>{typeof e[s]=="object"&&typeof t[s]=="object"?N(e[s],t[s]):e[s]=t[s]}),e}function st(e){return e.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()}function nt(e){return Object.keys(e).map(t=>{const s=st(t);s.includes("_")&&(e[s]=e[t],delete e[t])}),e}function rt(e){return e.replace(/([-_][a-z])/g,t=>t.toUpperCase().replace("-","").replace("_",""))}function it(e){return Object.keys(e).map(t=>{const s=rt(t);s!==t&&(e[s]=e[t],delete e[t])}),e}function me(e,t){return function(){return e.apply(t,arguments)}}const{toString:ot}=Object.prototype,{getPrototypeOf:Y}=Object,P=(e=>t=>{const s=ot.call(t);return e[s]||(e[s]=s.slice(8,-1).toLowerCase())})(Object.create(null)),T=e=>(e=e.toLowerCase(),t=>P(t)===e),z=e=>t=>typeof t===e,{isArray:C}=Array,L=z("undefined");function at(e){return e!==null&&!L(e)&&e.constructor!==null&&!L(e.constructor)&&O(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const pe=T("ArrayBuffer");function lt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&pe(e.buffer),t}const ct=z("string"),O=z("function"),ge=z("number"),H=e=>e!==null&&typeof e=="object",ut=e=>e===!0||e===!1,M=e=>{if(P(e)!=="object")return!1;const t=Y(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},ft=T("Date"),dt=T("File"),yt=T("Blob"),ht=T("FileList"),mt=e=>H(e)&&O(e.pipe),pt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||O(e.append)&&((t=P(e))==="formdata"||t==="object"&&O(e.toString)&&e.toString()==="[object FormData]"))},gt=T("URLSearchParams"),bt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function U(e,t,{allOwnKeys:s=!1}={}){if(e===null||typeof e>"u")return;let n,r;if(typeof e!="object"&&(e=[e]),C(e))for(n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else{const i=s?Object.getOwnPropertyNames(e):Object.keys(e),o=i.length;let c;for(n=0;n<o;n++)c=i[n],t.call(null,e[c],c,e)}}function be(e,t){t=t.toLowerCase();const s=Object.keys(e);let n=s.length,r;for(;n-- >0;)if(r=s[n],t===r.toLowerCase())return r;return null}const we=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Ee=e=>!L(e)&&e!==we;function q(){const{caseless:e}=Ee(this)&&this||{},t={},s=(n,r)=>{const i=e&&be(t,r)||r;M(t[i])&&M(n)?t[i]=q(t[i],n):M(n)?t[i]=q({},n):C(n)?t[i]=n.slice():t[i]=n};for(let n=0,r=arguments.length;n<r;n++)arguments[n]&&U(arguments[n],s);return t}const wt=(e,t,s,{allOwnKeys:n}={})=>(U(t,(r,i)=>{s&&O(r)?e[i]=me(r,s):e[i]=r},{allOwnKeys:n}),e),Et=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),St=(e,t,s,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),s&&Object.assign(e.prototype,s)},Ot=(e,t,s,n)=>{let r,i,o;const c={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),i=r.length;i-- >0;)o=r[i],(!n||n(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=s!==!1&&Y(e)}while(e&&(!s||s(e,t))&&e!==Object.prototype);return t},At=(e,t,s)=>{e=String(e),(s===void 0||s>e.length)&&(s=e.length),s-=t.length;const n=e.indexOf(t,s);return n!==-1&&n===s},Tt=e=>{if(!e)return null;if(C(e))return e;let t=e.length;if(!ge(t))return null;const s=new Array(t);for(;t-- >0;)s[t]=e[t];return s},kt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Y(Uint8Array)),vt=(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const i=r.value;t.call(e,i[0],i[1])}},_t=(e,t)=>{let s;const n=[];for(;(s=e.exec(t))!==null;)n.push(s);return n},Nt=T("HTMLFormElement"),xt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(s,n,r){return n.toUpperCase()+r}),Se=(({hasOwnProperty:e})=>(t,s)=>e.call(t,s))(Object.prototype),Ct=T("RegExp"),Oe=(e,t)=>{const s=Object.getOwnPropertyDescriptors(e),n={};U(s,(r,i)=>{t(r,i,e)!==!1&&(n[i]=r)}),Object.defineProperties(e,n)},Rt=e=>{Oe(e,(t,s)=>{if(O(e)&&["arguments","caller","callee"].indexOf(s)!==-1)return!1;const n=e[s];if(O(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+s+"'")})}})},Ft=(e,t)=>{const s={},n=r=>{r.forEach(i=>{s[i]=!0})};return C(e)?n(e):n(String(e).split(t)),s},Bt=()=>{},Dt=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ee="abcdefghijklmnopqrstuvwxyz",Ae="0123456789",Te={DIGIT:Ae,ALPHA:ee,ALPHA_DIGIT:ee+ee.toUpperCase()+Ae},Lt=(e=16,t=Te.ALPHA_DIGIT)=>{let s="";const{length:n}=t;for(;e--;)s+=t[Math.random()*n|0];return s};function Ut(e){return!!(e&&O(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const It=e=>{const t=new Array(10),s=(n,r)=>{if(H(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[r]=n;const i=C(n)?[]:{};return U(n,(o,c)=>{const d=s(o,r+1);!L(d)&&(i[c]=d)}),t[r]=void 0,i}}return n};return s(e,0)},jt=T("AsyncFunction"),a={isArray:C,isArrayBuffer:pe,isBuffer:at,isFormData:pt,isArrayBufferView:lt,isString:ct,isNumber:ge,isBoolean:ut,isObject:H,isPlainObject:M,isUndefined:L,isDate:ft,isFile:dt,isBlob:yt,isRegExp:Ct,isFunction:O,isStream:mt,isURLSearchParams:gt,isTypedArray:kt,isFileList:ht,forEach:U,merge:q,extend:wt,trim:bt,stripBOM:Et,inherits:St,toFlatObject:Ot,kindOf:P,kindOfTest:T,endsWith:At,toArray:Tt,forEachEntry:vt,matchAll:_t,isHTMLForm:Nt,hasOwnProperty:Se,hasOwnProp:Se,reduceDescriptors:Oe,freezeMethods:Rt,toObjectSet:Ft,toCamelCase:xt,noop:Bt,toFiniteNumber:Dt,findKey:be,global:we,isContextDefined:Ee,ALPHABET:Te,generateString:Lt,isSpecCompliantForm:Ut,toJSONObject:It,isAsyncFn:jt,isThenable:e=>e&&(H(e)||O(e))&&O(e.then)&&O(e.catch)};function p(e,t,s,n,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),s&&(this.config=s),n&&(this.request=n),r&&(this.response=r)}a.inherits(p,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const ke=p.prototype,ve={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ve[e]={value:e}}),Object.defineProperties(p,ve),Object.defineProperty(ke,"isAxiosError",{value:!0}),p.from=(e,t,s,n,r,i)=>{const o=Object.create(ke);return a.toFlatObject(e,o,function(d){return d!==Error.prototype},c=>c!=="isAxiosError"),p.call(o,e.message,t,s,n,r),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Pt=null;function te(e){return a.isPlainObject(e)||a.isArray(e)}function _e(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Ne(e,t,s){return e?e.concat(t).map(function(r,i){return r=_e(r),!s&&i?"["+r+"]":r}).join(s?".":""):t}function zt(e){return a.isArray(e)&&!e.some(te)}const Ht=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function $(e,t,s){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,s=a.toFlatObject(s,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!a.isUndefined(_[m])});const n=s.metaTokens,r=s.visitor||u,i=s.dots,o=s.indexes,d=(s.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(r))throw new TypeError("visitor must be a function");function l(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(!d&&a.isBlob(f))throw new p("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function u(f,m,_){let A=f;if(f&&!_&&typeof f=="object"){if(a.endsWith(m,"{}"))m=n?m:m.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&zt(f)||(a.isFileList(f)||a.endsWith(m,"[]"))&&(A=a.toArray(f)))return m=_e(m),A.forEach(function(Z,Rs){!(a.isUndefined(Z)||Z===null)&&t.append(o===!0?Ne([m],Rs,i):o===null?m:m+"[]",l(Z))}),!1}return te(f)?!0:(t.append(Ne(_,m,i),l(f)),!1)}const y=[],E=Object.assign(Ht,{defaultVisitor:u,convertValue:l,isVisitable:te});function b(f,m){if(!a.isUndefined(f)){if(y.indexOf(f)!==-1)throw Error("Circular reference detected in "+m.join("."));y.push(f),a.forEach(f,function(A,D){(!(a.isUndefined(A)||A===null)&&r.call(t,A,a.isString(D)?D.trim():D,m,E))===!0&&b(A,m?m.concat(D):[D])}),y.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return b(e),t}function xe(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function se(e,t){this._pairs=[],e&&$(e,this,t)}const Ce=se.prototype;Ce.append=function(t,s){this._pairs.push([t,s])},Ce.toString=function(t){const s=t?function(n){return t.call(this,n,xe)}:xe;return this._pairs.map(function(r){return s(r[0])+"="+s(r[1])},"").join("&")};function Mt(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Re(e,t,s){if(!t)return e;const n=s&&s.encode||Mt,r=s&&s.serialize;let i;if(r?i=r(t,s):i=a.isURLSearchParams(t)?t.toString():new se(t,s).toString(n),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class $t{constructor(){this.handlers=[]}use(t,s,n){return this.handlers.push({fulfilled:t,rejected:s,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(n){n!==null&&t(n)})}}const Fe=$t,Be={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Jt=typeof URLSearchParams<"u"?URLSearchParams:se,Kt=typeof FormData<"u"?FormData:null,Vt=typeof Blob<"u"?Blob:null,Wt=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),Gt=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),k={isBrowser:!0,classes:{URLSearchParams:Jt,FormData:Kt,Blob:Vt},isStandardBrowserEnv:Wt,isStandardBrowserWebWorkerEnv:Gt,protocols:["http","https","file","blob","url","data"]};function Xt(e,t){return $(e,new k.classes.URLSearchParams,Object.assign({visitor:function(s,n,r,i){return k.isNode&&a.isBuffer(s)?(this.append(n,s.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function Qt(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Zt(e){const t={},s=Object.keys(e);let n;const r=s.length;let i;for(n=0;n<r;n++)i=s[n],t[i]=e[i];return t}function De(e){function t(s,n,r,i){let o=s[i++];const c=Number.isFinite(+o),d=i>=s.length;return o=!o&&a.isArray(r)?r.length:o,d?(a.hasOwnProp(r,o)?r[o]=[r[o],n]:r[o]=n,!c):((!r[o]||!a.isObject(r[o]))&&(r[o]=[]),t(s,n,r[o],i)&&a.isArray(r[o])&&(r[o]=Zt(r[o])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const s={};return a.forEachEntry(e,(n,r)=>{t(Qt(n),r,s,0)}),s}return null}const Yt={"Content-Type":void 0};function qt(e,t,s){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(s||JSON.stringify)(e)}const J={transitional:Be,adapter:["xhr","http"],transformRequest:[function(t,s){const n=s.getContentType()||"",r=n.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return r&&r?JSON.stringify(De(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return s.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Xt(t,this.formSerializer).toString();if((c=a.isFileList(t))||n.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return $(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||r?(s.setContentType("application/json",!1),qt(t)):t}],transformResponse:[function(t){const s=this.transitional||J.transitional,n=s&&s.forcedJSONParsing,r=this.responseType==="json";if(t&&a.isString(t)&&(n&&!this.responseType||r)){const o=!(s&&s.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(c){if(o)throw c.name==="SyntaxError"?p.from(c,p.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:k.classes.FormData,Blob:k.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};a.forEach(["delete","get","head"],function(t){J.headers[t]={}}),a.forEach(["post","put","patch"],function(t){J.headers[t]=a.merge(Yt)});const ne=J,es=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ts=e=>{const t={};let s,n,r;return e&&e.split(`
2
- `).forEach(function(o){r=o.indexOf(":"),s=o.substring(0,r).trim().toLowerCase(),n=o.substring(r+1).trim(),!(!s||t[s]&&es[s])&&(s==="set-cookie"?t[s]?t[s].push(n):t[s]=[n]:t[s]=t[s]?t[s]+", "+n:n)}),t},Le=Symbol("internals");function I(e){return e&&String(e).trim().toLowerCase()}function K(e){return e===!1||e==null?e:a.isArray(e)?e.map(K):String(e)}function ss(e){const t=Object.create(null),s=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=s.exec(e);)t[n[1]]=n[2];return t}const ns=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function re(e,t,s,n,r){if(a.isFunction(n))return n.call(this,t,s);if(r&&(t=s),!!a.isString(t)){if(a.isString(n))return t.indexOf(n)!==-1;if(a.isRegExp(n))return n.test(t)}}function rs(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,s,n)=>s.toUpperCase()+n)}function is(e,t){const s=a.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+s,{value:function(r,i,o){return this[n].call(this,t,r,i,o)},configurable:!0})})}class V{constructor(t){t&&this.set(t)}set(t,s,n){const r=this;function i(c,d,l){const u=I(d);if(!u)throw new Error("header name must be a non-empty string");const y=a.findKey(r,u);(!y||r[y]===void 0||l===!0||l===void 0&&r[y]!==!1)&&(r[y||d]=K(c))}const o=(c,d)=>a.forEach(c,(l,u)=>i(l,u,d));return a.isPlainObject(t)||t instanceof this.constructor?o(t,s):a.isString(t)&&(t=t.trim())&&!ns(t)?o(ts(t),s):t!=null&&i(s,t,n),this}get(t,s){if(t=I(t),t){const n=a.findKey(this,t);if(n){const r=this[n];if(!s)return r;if(s===!0)return ss(r);if(a.isFunction(s))return s.call(this,r,n);if(a.isRegExp(s))return s.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,s){if(t=I(t),t){const n=a.findKey(this,t);return!!(n&&this[n]!==void 0&&(!s||re(this,this[n],n,s)))}return!1}delete(t,s){const n=this;let r=!1;function i(o){if(o=I(o),o){const c=a.findKey(n,o);c&&(!s||re(n,n[c],c,s))&&(delete n[c],r=!0)}}return a.isArray(t)?t.forEach(i):i(t),r}clear(t){const s=Object.keys(this);let n=s.length,r=!1;for(;n--;){const i=s[n];(!t||re(this,this[i],i,t,!0))&&(delete this[i],r=!0)}return r}normalize(t){const s=this,n={};return a.forEach(this,(r,i)=>{const o=a.findKey(n,i);if(o){s[o]=K(r),delete s[i];return}const c=t?rs(i):String(i).trim();c!==i&&delete s[i],s[c]=K(r),n[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const s=Object.create(null);return a.forEach(this,(n,r)=>{n!=null&&n!==!1&&(s[r]=t&&a.isArray(n)?n.join(", "):n)}),s}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,s])=>t+": "+s).join(`
3
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...s){const n=new this(t);return s.forEach(r=>n.set(r)),n}static accessor(t){const n=(this[Le]=this[Le]={accessors:{}}).accessors,r=this.prototype;function i(o){const c=I(o);n[c]||(is(r,o),n[c]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}}V.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.freezeMethods(V.prototype),a.freezeMethods(V);const v=V;function ie(e,t){const s=this||ne,n=t||s,r=v.from(n.headers);let i=n.data;return a.forEach(e,function(c){i=c.call(s,i,r.normalize(),t?t.status:void 0)}),r.normalize(),i}function Ue(e){return!!(e&&e.__CANCEL__)}function j(e,t,s){p.call(this,e??"canceled",p.ERR_CANCELED,t,s),this.name="CanceledError"}a.inherits(j,p,{__CANCEL__:!0});function os(e,t,s){const n=s.config.validateStatus;!s.status||!n||n(s.status)?e(s):t(new p("Request failed with status code "+s.status,[p.ERR_BAD_REQUEST,p.ERR_BAD_RESPONSE][Math.floor(s.status/100)-4],s.config,s.request,s))}const as=k.isStandardBrowserEnv?function(){return{write:function(s,n,r,i,o,c){const d=[];d.push(s+"="+encodeURIComponent(n)),a.isNumber(r)&&d.push("expires="+new Date(r).toGMTString()),a.isString(i)&&d.push("path="+i),a.isString(o)&&d.push("domain="+o),c===!0&&d.push("secure"),document.cookie=d.join("; ")},read:function(s){const n=document.cookie.match(new RegExp("(^|;\\s*)("+s+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(s){this.write(s,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function ls(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function cs(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function Ie(e,t){return e&&!ls(t)?cs(e,t):t}const us=k.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),s=document.createElement("a");let n;function r(i){let o=i;return t&&(s.setAttribute("href",o),o=s.href),s.setAttribute("href",o),{href:s.href,protocol:s.protocol?s.protocol.replace(/:$/,""):"",host:s.host,search:s.search?s.search.replace(/^\?/,""):"",hash:s.hash?s.hash.replace(/^#/,""):"",hostname:s.hostname,port:s.port,pathname:s.pathname.charAt(0)==="/"?s.pathname:"/"+s.pathname}}return n=r(window.location.href),function(o){const c=a.isString(o)?r(o):o;return c.protocol===n.protocol&&c.host===n.host}}():function(){return function(){return!0}}();function fs(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function ds(e,t){e=e||10;const s=new Array(e),n=new Array(e);let r=0,i=0,o;return t=t!==void 0?t:1e3,function(d){const l=Date.now(),u=n[i];o||(o=l),s[r]=d,n[r]=l;let y=i,E=0;for(;y!==r;)E+=s[y++],y=y%e;if(r=(r+1)%e,r===i&&(i=(i+1)%e),l-o<t)return;const b=u&&l-u;return b?Math.round(E*1e3/b):void 0}}function je(e,t){let s=0;const n=ds(50,250);return r=>{const i=r.loaded,o=r.lengthComputable?r.total:void 0,c=i-s,d=n(c),l=i<=o;s=i;const u={loaded:i,total:o,progress:o?i/o:void 0,bytes:c,rate:d||void 0,estimated:d&&o&&l?(o-i)/d:void 0,event:r};u[t?"download":"upload"]=!0,e(u)}}const W={http:Pt,xhr:typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(s,n){let r=e.data;const i=v.from(e.headers).normalize(),o=e.responseType;let c;function d(){e.cancelToken&&e.cancelToken.unsubscribe(c),e.signal&&e.signal.removeEventListener("abort",c)}a.isFormData(r)&&(k.isStandardBrowserEnv||k.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let l=new XMLHttpRequest;if(e.auth){const b=e.auth.username||"",f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(b+":"+f))}const u=Ie(e.baseURL,e.url);l.open(e.method.toUpperCase(),Re(u,e.params,e.paramsSerializer),!0),l.timeout=e.timeout;function y(){if(!l)return;const b=v.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders()),m={data:!o||o==="text"||o==="json"?l.responseText:l.response,status:l.status,statusText:l.statusText,headers:b,config:e,request:l};os(function(A){s(A),d()},function(A){n(A),d()},m),l=null}if("onloadend"in l?l.onloadend=y:l.onreadystatechange=function(){!l||l.readyState!==4||l.status===0&&!(l.responseURL&&l.responseURL.indexOf("file:")===0)||setTimeout(y)},l.onabort=function(){l&&(n(new p("Request aborted",p.ECONNABORTED,e,l)),l=null)},l.onerror=function(){n(new p("Network Error",p.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let f=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const m=e.transitional||Be;e.timeoutErrorMessage&&(f=e.timeoutErrorMessage),n(new p(f,m.clarifyTimeoutError?p.ETIMEDOUT:p.ECONNABORTED,e,l)),l=null},k.isStandardBrowserEnv){const b=(e.withCredentials||us(u))&&e.xsrfCookieName&&as.read(e.xsrfCookieName);b&&i.set(e.xsrfHeaderName,b)}r===void 0&&i.setContentType(null),"setRequestHeader"in l&&a.forEach(i.toJSON(),function(f,m){l.setRequestHeader(m,f)}),a.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),o&&o!=="json"&&(l.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&l.addEventListener("progress",je(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&l.upload&&l.upload.addEventListener("progress",je(e.onUploadProgress)),(e.cancelToken||e.signal)&&(c=b=>{l&&(n(!b||b.type?new j(null,e,l):b),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(c),e.signal&&(e.signal.aborted?c():e.signal.addEventListener("abort",c)));const E=fs(u);if(E&&k.protocols.indexOf(E)===-1){n(new p("Unsupported protocol "+E+":",p.ERR_BAD_REQUEST,e));return}l.send(r||null)})}};a.forEach(W,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const ys={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let s,n;for(let r=0;r<t&&(s=e[r],!(n=a.isString(s)?W[s.toLowerCase()]:s));r++);if(!n)throw n===!1?new p(`Adapter ${s} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(a.hasOwnProp(W,s)?`Adapter '${s}' is not available in the build`:`Unknown adapter '${s}'`);if(!a.isFunction(n))throw new TypeError("adapter is not a function");return n},adapters:W};function oe(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new j(null,e)}function Pe(e){return oe(e),e.headers=v.from(e.headers),e.data=ie.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ys.getAdapter(e.adapter||ne.adapter)(e).then(function(n){return oe(e),n.data=ie.call(e,e.transformResponse,n),n.headers=v.from(n.headers),n},function(n){return Ue(n)||(oe(e),n&&n.response&&(n.response.data=ie.call(e,e.transformResponse,n.response),n.response.headers=v.from(n.response.headers))),Promise.reject(n)})}const ze=e=>e instanceof v?e.toJSON():e;function R(e,t){t=t||{};const s={};function n(l,u,y){return a.isPlainObject(l)&&a.isPlainObject(u)?a.merge.call({caseless:y},l,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function r(l,u,y){if(a.isUndefined(u)){if(!a.isUndefined(l))return n(void 0,l,y)}else return n(l,u,y)}function i(l,u){if(!a.isUndefined(u))return n(void 0,u)}function o(l,u){if(a.isUndefined(u)){if(!a.isUndefined(l))return n(void 0,l)}else return n(void 0,u)}function c(l,u,y){if(y in t)return n(l,u);if(y in e)return n(void 0,l)}const d={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(l,u)=>r(ze(l),ze(u),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(u){const y=d[u]||r,E=y(e[u],t[u],u);a.isUndefined(E)&&y!==c||(s[u]=E)}),s}const He="1.4.0",ae={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{ae[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const Me={};ae.transitional=function(t,s,n){function r(i,o){return"[Axios v"+He+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,c)=>{if(t===!1)throw new p(r(o," has been removed"+(s?" in "+s:"")),p.ERR_DEPRECATED);return s&&!Me[o]&&(Me[o]=!0,console.warn(r(o," has been deprecated since v"+s+" and will be removed in the near future"))),t?t(i,o,c):!0}};function hs(e,t,s){if(typeof e!="object")throw new p("options must be an object",p.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let r=n.length;for(;r-- >0;){const i=n[r],o=t[i];if(o){const c=e[i],d=c===void 0||o(c,i,e);if(d!==!0)throw new p("option "+i+" must be "+d,p.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new p("Unknown option "+i,p.ERR_BAD_OPTION)}}const le={assertOptions:hs,validators:ae},x=le.validators;class G{constructor(t){this.defaults=t,this.interceptors={request:new Fe,response:new Fe}}request(t,s){typeof t=="string"?(s=s||{},s.url=t):s=t||{},s=R(this.defaults,s);const{transitional:n,paramsSerializer:r,headers:i}=s;n!==void 0&&le.assertOptions(n,{silentJSONParsing:x.transitional(x.boolean),forcedJSONParsing:x.transitional(x.boolean),clarifyTimeoutError:x.transitional(x.boolean)},!1),r!=null&&(a.isFunction(r)?s.paramsSerializer={serialize:r}:le.assertOptions(r,{encode:x.function,serialize:x.function},!0)),s.method=(s.method||this.defaults.method||"get").toLowerCase();let o;o=i&&a.merge(i.common,i[s.method]),o&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),s.headers=v.concat(o,i);const c=[];let d=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(s)===!1||(d=d&&m.synchronous,c.unshift(m.fulfilled,m.rejected))});const l=[];this.interceptors.response.forEach(function(m){l.push(m.fulfilled,m.rejected)});let u,y=0,E;if(!d){const f=[Pe.bind(this),void 0];for(f.unshift.apply(f,c),f.push.apply(f,l),E=f.length,u=Promise.resolve(s);y<E;)u=u.then(f[y++],f[y++]);return u}E=c.length;let b=s;for(y=0;y<E;){const f=c[y++],m=c[y++];try{b=f(b)}catch(_){m.call(this,_);break}}try{u=Pe.call(this,b)}catch(f){return Promise.reject(f)}for(y=0,E=l.length;y<E;)u=u.then(l[y++],l[y++]);return u}getUri(t){t=R(this.defaults,t);const s=Ie(t.baseURL,t.url);return Re(s,t.params,t.paramsSerializer)}}a.forEach(["delete","get","head","options"],function(t){G.prototype[t]=function(s,n){return this.request(R(n||{},{method:t,url:s,data:(n||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function s(n){return function(i,o,c){return this.request(R(c||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}G.prototype[t]=s(),G.prototype[t+"Form"]=s(!0)});const X=G;class ce{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let s;this.promise=new Promise(function(i){s=i});const n=this;this.promise.then(r=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](r);n._listeners=null}),this.promise.then=r=>{let i;const o=new Promise(c=>{n.subscribe(c),i=c}).then(r);return o.cancel=function(){n.unsubscribe(i)},o},t(function(i,o,c){n.reason||(n.reason=new j(i,o,c),s(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const s=this._listeners.indexOf(t);s!==-1&&this._listeners.splice(s,1)}static source(){let t;return{token:new ce(function(r){t=r}),cancel:t}}}const ms=ce;function ps(e){return function(s){return e.apply(null,s)}}function gs(e){return a.isObject(e)&&e.isAxiosError===!0}const ue={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ue).forEach(([e,t])=>{ue[t]=e});const bs=ue;function $e(e){const t=new X(e),s=me(X.prototype.request,t);return a.extend(s,X.prototype,t,{allOwnKeys:!0}),a.extend(s,t,null,{allOwnKeys:!0}),s.create=function(r){return $e(R(e,r))},s}const w=$e(ne);w.Axios=X,w.CanceledError=j,w.CancelToken=ms,w.isCancel=Ue,w.VERSION=He,w.toFormData=$,w.AxiosError=p,w.Cancel=w.CanceledError,w.all=function(t){return Promise.all(t)},w.spread=ps,w.isAxiosError=gs,w.mergeConfig=R,w.AxiosHeaders=v,w.formToJSON=e=>De(a.isHTMLForm(e)?new FormData(e):e),w.HttpStatusCode=bs,w.default=w;const fe=w;function de({needsToken:e=!0,options:t}){let s={};return e&&S(s,["headers","Authorization"],"Bearer TOKEN"),t&&(s=N(s,t)),s}async function ye({url:e,needsToken:t,options:s}){return await fe.get(e,de({needsToken:t,options:s}))}async function Je({url:e,needsToken:t,options:s,payload:n={}}){return await fe.post(e,n,de({needsToken:t,options:s}))}async function ws({url:e,needsToken:t,options:s,payload:n}){return await fe.put(e,n,de({needsToken:t,options:s}))}async function F(e){try{return await e()}catch(t){return Promise.reject(t)}}const B=" https://jmpuf4u3tj.execute-api.us-east-1.amazonaws.com/dev",Es="1000";async function Ss(e,t){return F(async()=>await Je({url:`${B}/api/v1/images/book/${e}`,payload:t}))}class Ke{constructor(t){h(this,"parentId");h(this,"images");this.parentId=t,this.images=[]}async add(t){return this.images.push(t),await Ss(this.parentId,new Ve(t)),new Promise(s=>{s(this.images.length)})}}class Ve{constructor(t){h(this,"handle");h(this,"url");h(this,"width");h(this,"height");h(this,"orientation");h(this,"taken_at");h(this,"camera_make");h(this,"camera");h(this,"filename");this.handle=t.handle,this.url=t.url,this.width=t.width,this.height=t.height,this.orientation=t.rotation,this.taken_at=t.captureTime,this.camera_make=t.cameraMake,this.camera=t.cameraModel,this.filename=t.filename}}const Os=["new","ingesting","submitted","storyboarding","storyboarding succeeded","designing","designing succeeded","layouting","layouting succeeded","embellishing","embellishing succeeded","polishing","polishing succeeded","ready","error"],We=["baby","birthday","default","everyday","family","kids","life-stories","portfolio","school-memories","seasonal-holidays","special-celebrations","sports-and-hobbies","travel","wedding","year-in-review"],he={1005:{slug:"modern-black-sfly"},1101:{slug:"bon-voyage-sfly"},1103:{slug:"fun-in-the-sun-sfly"},1201:{slug:"modern-wedding-sfly"},3001:{slug:"digiscrap-sfly"},4034:{slug:"travel-snapshots-sfly"},4035:{slug:"vintage-travel-sfly"},5017:{slug:"natural-neutrals-sfly"},5033:{slug:"chalkboard-chic-sfly"},5079:{slug:"hello-spring-sfly"},5082:{slug:"familygram-sfly"},5085:{slug:"best-day-ever-sfly"},5091:{slug:"little-love-sfly"},5118:{slug:"a-year-in-color-sfly"},5120:{slug:"milestone-anniversaries-sfly"},5121:{slug:"the-travel-bug-sfly"},5122:{slug:"modern-white-sfly"},5127:{slug:"outdoor-wedding-sfly"},5134:{slug:"classic-wedding-sfly"},5138:{slug:"kraft-pop-sfly"},5142:{slug:"simply-black-sfly"},5144:{slug:"autumn-memories-sfly"},5146:{slug:"everyday-sentiments-sfly"},5149:{slug:"everyday-happiness-sfly"},5150:{slug:"its-a-girl-thing-sfly"},5155:{slug:"made-with-love-sfly"},5157:{slug:"high-school-memories-sfly"},5161:{slug:"rustic-wedding-sfly"},5165:{slug:"life-is-grand-sfly"},5167:{slug:"adventure-awaits-sfly"},5168:{slug:"disney-adventure-sfly"},5171:{slug:"world-travel-sfly"},5174:{slug:"hello-summer-sfly"},5183:{slug:"everything-sports-sfly"},5188:{slug:"everyday-watercolor-sfly"},5189:{slug:"holiday-memories-sfly"},5213:{slug:"love-and-thanks-sfly"},5218:{slug:"babys-first-year-sfly"},5219:{slug:"usa-travel-sfly"},5220:{slug:"vintage-wedding-sfly"},5226:{slug:"love-you-because-sfly"},5228:{slug:"reunion-sfly"},5238:{slug:"whimsy-chalkboard-sfly"},5242:{slug:"modern-indigo-sfly"},5250:{slug:"family-yearbook-sfly"},5255:{slug:"elegant-wedding-sfly"},5258:{slug:"family-vacation-sfly"},5259:{slug:"beach-travel-sfly"},5261:{slug:"sparkle-and-shine-sfly"},5262:{slug:"welcome-baby-sfly"},5265:{slug:"vivid-watercolor-sfly"},5266:{slug:"what-i-love-about-you-sfly"},5272:{slug:"love-grows-sfly"},5274:{slug:"painted-seasons-sfly"},5278:{slug:"vintage-disney-sfly"},5292:{slug:"modern-grey-sfly"},5297:{slug:"modern-love-story-sfly"},5299:{slug:"modern-travel-sfly"},5304:{slug:"beach-wedding-sfly"},5305:{slug:"rustic-farmhouse-sfly"},5308:{slug:"tropical-travel-sfly"},6e3:{slug:"travel-abroad-sfly"},6001:{slug:"everyday-rustic-sfly"},6002:{slug:"simply-modern-sfly"},6003:{slug:"modern-baby-sfly"},6004:{slug:"modern-photo-album-sfly"},6005:{slug:"travel-adventures-sfly"},6006:{slug:"watercolor-year-in-review-sfly"},6007:{slug:"beach-bliss-sfly"},6008:{slug:"simply-gray-sfly"},6009:{slug:"family-favorites-by-lure-design-sfly"},6010:{slug:"travel-gallery-sfly"},6011:{slug:"our-wedding-day-sfly"},6012:{slug:"chic-celebrations-by-float-paperie-sfly"},6013:{slug:"simply-bold-type-sfly"},6014:{slug:"colorful-florals-by-potts-design-sfly"},6015:{slug:"softly-rustic-sfly"},6016:{slug:"ombre-watercolor-sfly"},6017:{slug:"forever-love-by-with-merriment-sfly"},6018:{slug:"colorful-memories-by-britt-bass-sfly"},6019:{slug:"celebrate-family-by-float-paperie-sfly"},6020:{slug:"disney-family-adventures-sfly"},6021:{slug:"everyday-neutrals-sfly"},6022:{slug:"colorful-childhood-sfly"},6023:{slug:"everyday-indigo-sfly"},6024:{slug:"shimmer-and-shine-sfly"},6025:{slug:"summertime-fun-sfly"},6026:{slug:"pet-lover-sfly"},6027:{slug:"modern-wedding-story-sfly"},6028:{slug:"family-blessings-by-potts-design-sfly"},6030:{slug:"outdoor-adventures-by-sarah-hawkins-designs-sfly"},6031:{slug:"travel-memories-sfly"},6032:{slug:"tropical-travels-sfly"},6033:{slug:"everyday-chalkboard-by-potts-design-sfly"},6034:{slug:"classic-disney-sfly"},6035:{slug:"cheerful-color-sfly"},6036:{slug:"colorful-birthday-sfly"},6038:{slug:"classic-baby-sfly"},6039:{slug:"bold-year-in-review-by-float-paperie-sfly"},6040:{slug:"colorfully-fun-sfly"},6041:{slug:"colorful-year-in-review-by-sarah-hawkins-designs-sfly"},6042:{slug:"gilded-wedding-sfly"},6043:{slug:"road-trip-travel-by-sarah-hawkins-designs-sfly"},6044:{slug:"rustic-gilded-wedding-sfly"},6045:{slug:"elegantly-scripted-year-in-review-sfly"},6047:{slug:"2020-what-a-year-sfly"},6057:{slug:"best-mom-ever-sfly"},6052:{slug:"celebration-of-life-by-sarah-hawkins-designs-sfly"},6054:{slug:"colorful-school-days-by-float-paperie-sfly"},6051:{slug:"love-is-all-we-need-sfly"},6058:{slug:"graduation-celebration-sfly"},6056:{slug:"our-wedding-day-guestbook-sfly"},6055:{slug:"muted-everyday-abstract-sfly"},6046:{slug:"winter-memories-by-sarah-hawkins-design-sfly"},6053:{slug:"best-dad-ever-sfly"},6050:{slug:"watercolor-greenery-by-sarah-hawkins-designs-sfly"},6063:{slug:"watercolor-floral-wedding-by-kim-thoa-sfly"},6060:{slug:"watercolor-baby-girl-sfly"},6059:{slug:"watercolor-baby-boy-sfly"},6048:{slug:"simple-elegant-wedding-sfly"},6049:{slug:"gilded-wedding-guestbook-sfly"},6037:{slug:"everyday-fairytale-by-jenny-romanski-sfly"},6061:{slug:"best-grandparents-ever-sfly"},6068:{slug:"winter-getaway-sfly"},6067:{slug:"national-parks-travel-by-eiman-design-co-sfly"},6065:{slug:"go-sports-by-lure-design-sfly"},6066:{slug:"elegant-wedding-greenery-by-kim-thoa-sfly"},6064:{slug:"boho-travel-by-umaiana-studio-sfly"},6071:{slug:"modern-dark-neutrals-sfly"},6072:{slug:"modern-light-neutrals-sfly"},6073:{slug:"modern-celebrations-sfly"},6074:{slug:"bright-and-bold-kids-year-in-review-by-sarah-hawkins-designs-sfly"},6085:{slug:"classic-school-yearbook-sfly"},6084:{slug:"colorful-elementary-school-yearbook-sfly"},5402:{slug:"everyday-recipes-by-slightly-stationery-sfly"},6083:{slug:"school-days-yearbook-sfly"},6082:{slug:"the-story-of-me-sfly"},6086:{slug:"whimsical-recipes-by-slightly-stationery-sfly"},6101:{slug:"babys-first-sfly"},6103:{slug:"classic-recipes-sfly"},6104:{slug:"elevated-rustic-sfly"},6105:{slug:"boho-summer-sfly"},6116:{slug:"boho-baby-sfly"},6117:{slug:"simply-gallery-sfly"},6118:{slug:"this-is-love-sfly"},6120:{slug:"wedding-gallery-sfly"},6121:{slug:"watercolorwashes-sfly"},6124:{slug:"graduation-photo-album-sfly"},6125:{slug:"modern-year-in-review-photo-album-sfly"},6126:{slug:"black-white-photo-album-sfly"},6132:{slug:"travel-journal-sfly"},6133:{slug:"rustic-gallery-sfly"},6137:{slug:"summer-adventures-sfly"},6075:{slug:"together-again-sfly"},6078:{slug:"everyday-boho-by-umaiana-studio-sfly"},6089:{slug:"colorful-gradients-sfly"},6096:{slug:"simply-scrapbook-sfly"},6097:{slug:"boho-wedding-sfly"},6098:{slug:"black-and-white-rustic-sfly"},6099:{slug:"bright-color-pop-sfly"}},Ge=["8x8","10x10","12x12","8x11","11x8","11x14"],Xe=["sc","hc","pl"],Qe=["sp","sl","dl"],Ze=["low","medium","high"],Ye=["best","most","all"],qe=["none","few","lots"],et=["none","few","lots"];class As{constructor(t){h(this,"occasion");h(this,"style");h(this,"book_size");h(this,"cover_type");h(this,"page_type");h(this,"image_density");h(this,"image_filtering");h(this,"embellishment_level");h(this,"text_sticker_level");this.occasion=t.occasion,this.style=t.style,this.book_size=t.book_size,this.cover_type=t.cover_type,this.page_type=t.page_type,this.image_density=t.image_density,this.image_filtering=t.image_filtering,this.embellishment_level=t.embellishment_level,this.text_sticker_level=t.text_sticker_level}}class Q{constructor(t){h(this,"id");h(this,"state");h(this,"title");h(this,"design_request");this.id=t.id,this.state=t.state,this.title=t.title,this.design_request=new As(t.design_request)}}function Ts(e){const t=he[e.style].slug,s=nt({...e});return s.style=t,new Q({id:e.parentId,state:"new",title:e.title,design_request:s})}async function ks(e,t){return F(async()=>{const s=await ye({url:`${B}/api/v1/designoptions/booksize/${e}/imagecount/${t}`});return it(s.data)})}async function vs(e){return F(async()=>new Q((await Je({url:`${B}/api/v1/books`,payload:e})).data))}async function _s(e){return F(async()=>new Q((await ye({url:`${B}/api/v1/books/${e}`})).data))}async function Ns(e){return F(async()=>new Q((await ws({url:`${B}/api/v1/books/${e.id}`,payload:e})).data))}async function xs(e){return F(async()=>(await ye({url:`${B}/api/v1/books/${e}/format/galleon`})).data)}class tt{constructor(t,s){h(this,"parentId");h(this,"title");h(this,"occasion");h(this,"style");h(this,"bookSize");h(this,"coverType");h(this,"pageType");h(this,"imageDensity");h(this,"imageFiltering");h(this,"embellishmentLevel");h(this,"textStickerLevel");h(this,"images");this.parentId=t,this.title=(s==null?void 0:s.title)||"",this.occasion=(s==null?void 0:s.occasion)||We[0],this.style=(s==null?void 0:s.style)||parseInt(Object.keys(he)[0]),this.bookSize=(s==null?void 0:s.bookSize)||Ge[0],this.coverType=(s==null?void 0:s.coverType)||Xe[0],this.pageType=(s==null?void 0:s.pageType)||Qe[0],this.imageDensity=(s==null?void 0:s.imageDensity)||Ze[0],this.imageFiltering=(s==null?void 0:s.imageFiltering)||Ye[0],this.embellishmentLevel=(s==null?void 0:s.embellishmentLevel)||qe[0],this.textStickerLevel=(s==null?void 0:s.textStickerLevel)||et[0],this.images=new Ke(t)}async getOptions(t){return await ks(this.bookSize,t)}async submit(t){return t&&Object.assign(this,t),await Ns(Ts(this)),this.getProgress(),this}async getJSON(){return await xs(this.parentId)}async getProgress(){let t="";const s=setInterval(async()=>{const n=(await _s(this.parentId)).state;if(t!==n){t=n;const r=new CustomEvent("MagicBook.designRequestUpdated",{detail:{state:n}});window.dispatchEvent(r),["error","ready"].includes(n)&&clearInterval(s)}},Es)}}class Cs{constructor(t){h(this,"apiKey");this.apiKey=t}async createDesignRequest(t){const s=await vs();return new tt(s.id,t)}}g.DesignRequest=tt,g.ImageServer=Ve,g.Images=Ke,g.MagicBookClient=Cs,g.bookSizes=Ge,g.coverTypes=Xe,g.embellishmentLevels=qe,g.imageDensities=Ze,g.imageFilterings=Ye,g.occasions=We,g.pageTypes=Qe,g.states=Os,g.styles=he,g.textStickerLevels=et,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
1
+ (function(g,S){typeof exports=="object"&&typeof module<"u"?S(exports):typeof define=="function"&&define.amd?define(["exports"],S):(g=typeof globalThis<"u"?globalThis:g||self,S(g["magicbook-client"]={}))})(this,function(g){"use strict";var Bn=Object.defineProperty;var Dn=(g,S,N)=>S in g?Bn(g,S,{enumerable:!0,configurable:!0,writable:!0,value:N}):g[S]=N;var h=(g,S,N)=>(Dn(g,typeof S!="symbol"?S+"":S,N),N);function S(e,t,n){const s=t.pop()||"",r=t.reduce((i,o)=>i[o]=i[o]||{},e);r[s]=n}function N(e,t){return Object.keys(t).map(n=>{typeof e[n]=="object"&&typeof t[n]=="object"?N(e[n],t[n]):e[n]=t[n]}),e}function nt(e){return e.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()}function st(e){return Object.keys(e).map(t=>{const n=nt(t);n.includes("_")&&(e[n]=e[t],delete e[t])}),e}function rt(e){return e.replace(/([-_][a-z])/g,t=>t.toUpperCase().replace("-","").replace("_",""))}function it(e){return Object.keys(e).map(t=>{const n=rt(t);n!==t&&(e[n]=e[t],delete e[t])}),e}function me(e,t){return function(){return e.apply(t,arguments)}}const{toString:ot}=Object.prototype,{getPrototypeOf:Y}=Object,P=(e=>t=>{const n=ot.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),T=e=>(e=e.toLowerCase(),t=>P(t)===e),z=e=>t=>typeof t===e,{isArray:C}=Array,L=z("undefined");function at(e){return e!==null&&!L(e)&&e.constructor!==null&&!L(e.constructor)&&O(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const pe=T("ArrayBuffer");function lt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&pe(e.buffer),t}const ct=z("string"),O=z("function"),ge=z("number"),H=e=>e!==null&&typeof e=="object",ut=e=>e===!0||e===!1,M=e=>{if(P(e)!=="object")return!1;const t=Y(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},ft=T("Date"),dt=T("File"),yt=T("Blob"),ht=T("FileList"),mt=e=>H(e)&&O(e.pipe),pt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||O(e.append)&&((t=P(e))==="formdata"||t==="object"&&O(e.toString)&&e.toString()==="[object FormData]"))},gt=T("URLSearchParams"),bt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function U(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),C(e))for(s=0,r=e.length;s<r;s++)t.call(null,e[s],s,e);else{const i=n?Object.getOwnPropertyNames(e):Object.keys(e),o=i.length;let c;for(s=0;s<o;s++)c=i[s],t.call(null,e[c],c,e)}}function be(e,t){t=t.toLowerCase();const n=Object.keys(e);let s=n.length,r;for(;s-- >0;)if(r=n[s],t===r.toLowerCase())return r;return null}const we=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Ee=e=>!L(e)&&e!==we;function q(){const{caseless:e}=Ee(this)&&this||{},t={},n=(s,r)=>{const i=e&&be(t,r)||r;M(t[i])&&M(s)?t[i]=q(t[i],s):M(s)?t[i]=q({},s):C(s)?t[i]=s.slice():t[i]=s};for(let s=0,r=arguments.length;s<r;s++)arguments[s]&&U(arguments[s],n);return t}const wt=(e,t,n,{allOwnKeys:s}={})=>(U(t,(r,i)=>{n&&O(r)?e[i]=me(r,n):e[i]=r},{allOwnKeys:s}),e),Et=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),St=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},Ot=(e,t,n,s)=>{let r,i,o;const c={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),i=r.length;i-- >0;)o=r[i],(!s||s(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=n!==!1&&Y(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},At=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},Tt=e=>{if(!e)return null;if(C(e))return e;let t=e.length;if(!ge(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},kt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Y(Uint8Array)),vt=(e,t)=>{const s=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=s.next())&&!r.done;){const i=r.value;t.call(e,i[0],i[1])}},_t=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},Nt=T("HTMLFormElement"),xt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),Se=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Ct=T("RegExp"),Oe=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};U(n,(r,i)=>{t(r,i,e)!==!1&&(s[i]=r)}),Object.defineProperties(e,s)},Rt=e=>{Oe(e,(t,n)=>{if(O(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(O(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Ft=(e,t)=>{const n={},s=r=>{r.forEach(i=>{n[i]=!0})};return C(e)?s(e):s(String(e).split(t)),n},Bt=()=>{},Dt=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ee="abcdefghijklmnopqrstuvwxyz",Ae="0123456789",Te={DIGIT:Ae,ALPHA:ee,ALPHA_DIGIT:ee+ee.toUpperCase()+Ae},Lt=(e=16,t=Te.ALPHA_DIGIT)=>{let n="";const{length:s}=t;for(;e--;)n+=t[Math.random()*s|0];return n};function Ut(e){return!!(e&&O(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const It=e=>{const t=new Array(10),n=(s,r)=>{if(H(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const i=C(s)?[]:{};return U(s,(o,c)=>{const d=n(o,r+1);!L(d)&&(i[c]=d)}),t[r]=void 0,i}}return s};return n(e,0)},jt=T("AsyncFunction"),a={isArray:C,isArrayBuffer:pe,isBuffer:at,isFormData:pt,isArrayBufferView:lt,isString:ct,isNumber:ge,isBoolean:ut,isObject:H,isPlainObject:M,isUndefined:L,isDate:ft,isFile:dt,isBlob:yt,isRegExp:Ct,isFunction:O,isStream:mt,isURLSearchParams:gt,isTypedArray:kt,isFileList:ht,forEach:U,merge:q,extend:wt,trim:bt,stripBOM:Et,inherits:St,toFlatObject:Ot,kindOf:P,kindOfTest:T,endsWith:At,toArray:Tt,forEachEntry:vt,matchAll:_t,isHTMLForm:Nt,hasOwnProperty:Se,hasOwnProp:Se,reduceDescriptors:Oe,freezeMethods:Rt,toObjectSet:Ft,toCamelCase:xt,noop:Bt,toFiniteNumber:Dt,findKey:be,global:we,isContextDefined:Ee,ALPHABET:Te,generateString:Lt,isSpecCompliantForm:Ut,toJSONObject:It,isAsyncFn:jt,isThenable:e=>e&&(H(e)||O(e))&&O(e.then)&&O(e.catch)};function p(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r)}a.inherits(p,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const ke=p.prototype,ve={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ve[e]={value:e}}),Object.defineProperties(p,ve),Object.defineProperty(ke,"isAxiosError",{value:!0}),p.from=(e,t,n,s,r,i)=>{const o=Object.create(ke);return a.toFlatObject(e,o,function(d){return d!==Error.prototype},c=>c!=="isAxiosError"),p.call(o,e.message,t,n,s,r),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Pt=null;function te(e){return a.isPlainObject(e)||a.isArray(e)}function _e(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Ne(e,t,n){return e?e.concat(t).map(function(r,i){return r=_e(r),!n&&i?"["+r+"]":r}).join(n?".":""):t}function zt(e){return a.isArray(e)&&!e.some(te)}const Ht=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function $(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!a.isUndefined(_[m])});const s=n.metaTokens,r=n.visitor||u,i=n.dots,o=n.indexes,d=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(r))throw new TypeError("visitor must be a function");function l(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(!d&&a.isBlob(f))throw new p("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function u(f,m,_){let A=f;if(f&&!_&&typeof f=="object"){if(a.endsWith(m,"{}"))m=s?m:m.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&zt(f)||(a.isFileList(f)||a.endsWith(m,"[]"))&&(A=a.toArray(f)))return m=_e(m),A.forEach(function(Z,Fn){!(a.isUndefined(Z)||Z===null)&&t.append(o===!0?Ne([m],Fn,i):o===null?m:m+"[]",l(Z))}),!1}return te(f)?!0:(t.append(Ne(_,m,i),l(f)),!1)}const y=[],E=Object.assign(Ht,{defaultVisitor:u,convertValue:l,isVisitable:te});function b(f,m){if(!a.isUndefined(f)){if(y.indexOf(f)!==-1)throw Error("Circular reference detected in "+m.join("."));y.push(f),a.forEach(f,function(A,D){(!(a.isUndefined(A)||A===null)&&r.call(t,A,a.isString(D)?D.trim():D,m,E))===!0&&b(A,m?m.concat(D):[D])}),y.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return b(e),t}function xe(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function ne(e,t){this._pairs=[],e&&$(e,this,t)}const Ce=ne.prototype;Ce.append=function(t,n){this._pairs.push([t,n])},Ce.toString=function(t){const n=t?function(s){return t.call(this,s,xe)}:xe;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Mt(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Re(e,t,n){if(!t)return e;const s=n&&n.encode||Mt,r=n&&n.serialize;let i;if(r?i=r(t,n):i=a.isURLSearchParams(t)?t.toString():new ne(t,n).toString(s),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class $t{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Fe=$t,Be={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Jt=typeof URLSearchParams<"u"?URLSearchParams:ne,Kt=typeof FormData<"u"?FormData:null,Vt=typeof Blob<"u"?Blob:null,Wt=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),Gt=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),k={isBrowser:!0,classes:{URLSearchParams:Jt,FormData:Kt,Blob:Vt},isStandardBrowserEnv:Wt,isStandardBrowserWebWorkerEnv:Gt,protocols:["http","https","file","blob","url","data"]};function Xt(e,t){return $(e,new k.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,i){return k.isNode&&a.isBuffer(n)?(this.append(s,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function Qt(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Zt(e){const t={},n=Object.keys(e);let s;const r=n.length;let i;for(s=0;s<r;s++)i=n[s],t[i]=e[i];return t}function De(e){function t(n,s,r,i){let o=n[i++];const c=Number.isFinite(+o),d=i>=n.length;return o=!o&&a.isArray(r)?r.length:o,d?(a.hasOwnProp(r,o)?r[o]=[r[o],s]:r[o]=s,!c):((!r[o]||!a.isObject(r[o]))&&(r[o]=[]),t(n,s,r[o],i)&&a.isArray(r[o])&&(r[o]=Zt(r[o])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(s,r)=>{t(Qt(s),r,n,0)}),n}return null}const Yt={"Content-Type":void 0};function qt(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const J={transitional:Be,adapter:["xhr","http"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return r&&r?JSON.stringify(De(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(i){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Xt(t,this.formSerializer).toString();if((c=a.isFileList(t))||s.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return $(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||r?(n.setContentType("application/json",!1),qt(t)):t}],transformResponse:[function(t){const n=this.transitional||J.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(t&&a.isString(t)&&(s&&!this.responseType||r)){const o=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(c){if(o)throw c.name==="SyntaxError"?p.from(c,p.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:k.classes.FormData,Blob:k.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};a.forEach(["delete","get","head"],function(t){J.headers[t]={}}),a.forEach(["post","put","patch"],function(t){J.headers[t]=a.merge(Yt)});const se=J,en=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),tn=e=>{const t={};let n,s,r;return e&&e.split(`
2
+ `).forEach(function(o){r=o.indexOf(":"),n=o.substring(0,r).trim().toLowerCase(),s=o.substring(r+1).trim(),!(!n||t[n]&&en[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},Le=Symbol("internals");function I(e){return e&&String(e).trim().toLowerCase()}function K(e){return e===!1||e==null?e:a.isArray(e)?e.map(K):String(e)}function nn(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const sn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function re(e,t,n,s,r){if(a.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!a.isString(t)){if(a.isString(s))return t.indexOf(s)!==-1;if(a.isRegExp(s))return s.test(t)}}function rn(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function on(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,i,o){return this[s].call(this,t,r,i,o)},configurable:!0})})}class V{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function i(c,d,l){const u=I(d);if(!u)throw new Error("header name must be a non-empty string");const y=a.findKey(r,u);(!y||r[y]===void 0||l===!0||l===void 0&&r[y]!==!1)&&(r[y||d]=K(c))}const o=(c,d)=>a.forEach(c,(l,u)=>i(l,u,d));return a.isPlainObject(t)||t instanceof this.constructor?o(t,n):a.isString(t)&&(t=t.trim())&&!sn(t)?o(tn(t),n):t!=null&&i(n,t,s),this}get(t,n){if(t=I(t),t){const s=a.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return nn(r);if(a.isFunction(n))return n.call(this,r,s);if(a.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=I(t),t){const s=a.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||re(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function i(o){if(o=I(o),o){const c=a.findKey(s,o);c&&(!n||re(s,s[c],c,n))&&(delete s[c],r=!0)}}return a.isArray(t)?t.forEach(i):i(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const i=n[s];(!t||re(this,this[i],i,t,!0))&&(delete this[i],r=!0)}return r}normalize(t){const n=this,s={};return a.forEach(this,(r,i)=>{const o=a.findKey(s,i);if(o){n[o]=K(r),delete n[i];return}const c=t?rn(i):String(i).trim();c!==i&&delete n[i],n[c]=K(r),s[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&a.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
+ `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[Le]=this[Le]={accessors:{}}).accessors,r=this.prototype;function i(o){const c=I(o);s[c]||(on(r,o),s[c]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}}V.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.freezeMethods(V.prototype),a.freezeMethods(V);const v=V;function ie(e,t){const n=this||se,s=t||n,r=v.from(s.headers);let i=s.data;return a.forEach(e,function(c){i=c.call(n,i,r.normalize(),t?t.status:void 0)}),r.normalize(),i}function Ue(e){return!!(e&&e.__CANCEL__)}function j(e,t,n){p.call(this,e??"canceled",p.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits(j,p,{__CANCEL__:!0});function an(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new p("Request failed with status code "+n.status,[p.ERR_BAD_REQUEST,p.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const ln=k.isStandardBrowserEnv?function(){return{write:function(n,s,r,i,o,c){const d=[];d.push(n+"="+encodeURIComponent(s)),a.isNumber(r)&&d.push("expires="+new Date(r).toGMTString()),a.isString(i)&&d.push("path="+i),a.isString(o)&&d.push("domain="+o),c===!0&&d.push("secure"),document.cookie=d.join("; ")},read:function(n){const s=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return s?decodeURIComponent(s[3]):null},remove:function(n){this.write(n,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function cn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function un(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function Ie(e,t){return e&&!cn(t)?un(e,t):t}const fn=k.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let s;function r(i){let o=i;return t&&(n.setAttribute("href",o),o=n.href),n.setAttribute("href",o),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return s=r(window.location.href),function(o){const c=a.isString(o)?r(o):o;return c.protocol===s.protocol&&c.host===s.host}}():function(){return function(){return!0}}();function dn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function yn(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,i=0,o;return t=t!==void 0?t:1e3,function(d){const l=Date.now(),u=s[i];o||(o=l),n[r]=d,s[r]=l;let y=i,E=0;for(;y!==r;)E+=n[y++],y=y%e;if(r=(r+1)%e,r===i&&(i=(i+1)%e),l-o<t)return;const b=u&&l-u;return b?Math.round(E*1e3/b):void 0}}function je(e,t){let n=0;const s=yn(50,250);return r=>{const i=r.loaded,o=r.lengthComputable?r.total:void 0,c=i-n,d=s(c),l=i<=o;n=i;const u={loaded:i,total:o,progress:o?i/o:void 0,bytes:c,rate:d||void 0,estimated:d&&o&&l?(o-i)/d:void 0,event:r};u[t?"download":"upload"]=!0,e(u)}}const W={http:Pt,xhr:typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,s){let r=e.data;const i=v.from(e.headers).normalize(),o=e.responseType;let c;function d(){e.cancelToken&&e.cancelToken.unsubscribe(c),e.signal&&e.signal.removeEventListener("abort",c)}a.isFormData(r)&&(k.isStandardBrowserEnv||k.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let l=new XMLHttpRequest;if(e.auth){const b=e.auth.username||"",f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(b+":"+f))}const u=Ie(e.baseURL,e.url);l.open(e.method.toUpperCase(),Re(u,e.params,e.paramsSerializer),!0),l.timeout=e.timeout;function y(){if(!l)return;const b=v.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders()),m={data:!o||o==="text"||o==="json"?l.responseText:l.response,status:l.status,statusText:l.statusText,headers:b,config:e,request:l};an(function(A){n(A),d()},function(A){s(A),d()},m),l=null}if("onloadend"in l?l.onloadend=y:l.onreadystatechange=function(){!l||l.readyState!==4||l.status===0&&!(l.responseURL&&l.responseURL.indexOf("file:")===0)||setTimeout(y)},l.onabort=function(){l&&(s(new p("Request aborted",p.ECONNABORTED,e,l)),l=null)},l.onerror=function(){s(new p("Network Error",p.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let f=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const m=e.transitional||Be;e.timeoutErrorMessage&&(f=e.timeoutErrorMessage),s(new p(f,m.clarifyTimeoutError?p.ETIMEDOUT:p.ECONNABORTED,e,l)),l=null},k.isStandardBrowserEnv){const b=(e.withCredentials||fn(u))&&e.xsrfCookieName&&ln.read(e.xsrfCookieName);b&&i.set(e.xsrfHeaderName,b)}r===void 0&&i.setContentType(null),"setRequestHeader"in l&&a.forEach(i.toJSON(),function(f,m){l.setRequestHeader(m,f)}),a.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),o&&o!=="json"&&(l.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&l.addEventListener("progress",je(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&l.upload&&l.upload.addEventListener("progress",je(e.onUploadProgress)),(e.cancelToken||e.signal)&&(c=b=>{l&&(s(!b||b.type?new j(null,e,l):b),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(c),e.signal&&(e.signal.aborted?c():e.signal.addEventListener("abort",c)));const E=dn(u);if(E&&k.protocols.indexOf(E)===-1){s(new p("Unsupported protocol "+E+":",p.ERR_BAD_REQUEST,e));return}l.send(r||null)})}};a.forEach(W,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const hn={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let n,s;for(let r=0;r<t&&(n=e[r],!(s=a.isString(n)?W[n.toLowerCase()]:n));r++);if(!s)throw s===!1?new p(`Adapter ${n} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(a.hasOwnProp(W,n)?`Adapter '${n}' is not available in the build`:`Unknown adapter '${n}'`);if(!a.isFunction(s))throw new TypeError("adapter is not a function");return s},adapters:W};function oe(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new j(null,e)}function Pe(e){return oe(e),e.headers=v.from(e.headers),e.data=ie.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),hn.getAdapter(e.adapter||se.adapter)(e).then(function(s){return oe(e),s.data=ie.call(e,e.transformResponse,s),s.headers=v.from(s.headers),s},function(s){return Ue(s)||(oe(e),s&&s.response&&(s.response.data=ie.call(e,e.transformResponse,s.response),s.response.headers=v.from(s.response.headers))),Promise.reject(s)})}const ze=e=>e instanceof v?e.toJSON():e;function R(e,t){t=t||{};const n={};function s(l,u,y){return a.isPlainObject(l)&&a.isPlainObject(u)?a.merge.call({caseless:y},l,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function r(l,u,y){if(a.isUndefined(u)){if(!a.isUndefined(l))return s(void 0,l,y)}else return s(l,u,y)}function i(l,u){if(!a.isUndefined(u))return s(void 0,u)}function o(l,u){if(a.isUndefined(u)){if(!a.isUndefined(l))return s(void 0,l)}else return s(void 0,u)}function c(l,u,y){if(y in t)return s(l,u);if(y in e)return s(void 0,l)}const d={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(l,u)=>r(ze(l),ze(u),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(u){const y=d[u]||r,E=y(e[u],t[u],u);a.isUndefined(E)&&y!==c||(n[u]=E)}),n}const He="1.4.0",ae={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{ae[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Me={};ae.transitional=function(t,n,s){function r(i,o){return"[Axios v"+He+"] Transitional option '"+i+"'"+o+(s?". "+s:"")}return(i,o,c)=>{if(t===!1)throw new p(r(o," has been removed"+(n?" in "+n:"")),p.ERR_DEPRECATED);return n&&!Me[o]&&(Me[o]=!0,console.warn(r(o," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,o,c):!0}};function mn(e,t,n){if(typeof e!="object")throw new p("options must be an object",p.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const i=s[r],o=t[i];if(o){const c=e[i],d=c===void 0||o(c,i,e);if(d!==!0)throw new p("option "+i+" must be "+d,p.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new p("Unknown option "+i,p.ERR_BAD_OPTION)}}const le={assertOptions:mn,validators:ae},x=le.validators;class G{constructor(t){this.defaults=t,this.interceptors={request:new Fe,response:new Fe}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=R(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:i}=n;s!==void 0&&le.assertOptions(s,{silentJSONParsing:x.transitional(x.boolean),forcedJSONParsing:x.transitional(x.boolean),clarifyTimeoutError:x.transitional(x.boolean)},!1),r!=null&&(a.isFunction(r)?n.paramsSerializer={serialize:r}:le.assertOptions(r,{encode:x.function,serialize:x.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o;o=i&&a.merge(i.common,i[n.method]),o&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),n.headers=v.concat(o,i);const c=[];let d=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(d=d&&m.synchronous,c.unshift(m.fulfilled,m.rejected))});const l=[];this.interceptors.response.forEach(function(m){l.push(m.fulfilled,m.rejected)});let u,y=0,E;if(!d){const f=[Pe.bind(this),void 0];for(f.unshift.apply(f,c),f.push.apply(f,l),E=f.length,u=Promise.resolve(n);y<E;)u=u.then(f[y++],f[y++]);return u}E=c.length;let b=n;for(y=0;y<E;){const f=c[y++],m=c[y++];try{b=f(b)}catch(_){m.call(this,_);break}}try{u=Pe.call(this,b)}catch(f){return Promise.reject(f)}for(y=0,E=l.length;y<E;)u=u.then(l[y++],l[y++]);return u}getUri(t){t=R(this.defaults,t);const n=Ie(t.baseURL,t.url);return Re(n,t.params,t.paramsSerializer)}}a.forEach(["delete","get","head","options"],function(t){G.prototype[t]=function(n,s){return this.request(R(s||{},{method:t,url:n,data:(s||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function n(s){return function(i,o,c){return this.request(R(c||{},{method:t,headers:s?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}G.prototype[t]=n(),G.prototype[t+"Form"]=n(!0)});const X=G;class ce{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});const s=this;this.promise.then(r=>{if(!s._listeners)return;let i=s._listeners.length;for(;i-- >0;)s._listeners[i](r);s._listeners=null}),this.promise.then=r=>{let i;const o=new Promise(c=>{s.subscribe(c),i=c}).then(r);return o.cancel=function(){s.unsubscribe(i)},o},t(function(i,o,c){s.reason||(s.reason=new j(i,o,c),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new ce(function(r){t=r}),cancel:t}}}const pn=ce;function gn(e){return function(n){return e.apply(null,n)}}function bn(e){return a.isObject(e)&&e.isAxiosError===!0}const ue={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ue).forEach(([e,t])=>{ue[t]=e});const wn=ue;function $e(e){const t=new X(e),n=me(X.prototype.request,t);return a.extend(n,X.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return $e(R(e,r))},n}const w=$e(se);w.Axios=X,w.CanceledError=j,w.CancelToken=pn,w.isCancel=Ue,w.VERSION=He,w.toFormData=$,w.AxiosError=p,w.Cancel=w.CanceledError,w.all=function(t){return Promise.all(t)},w.spread=gn,w.isAxiosError=bn,w.mergeConfig=R,w.AxiosHeaders=v,w.formToJSON=e=>De(a.isHTMLForm(e)?new FormData(e):e),w.HttpStatusCode=wn,w.default=w;const fe=w;function de({needsToken:e=!0,options:t}){let n={};return e&&S(n,["headers","Authorization"],"Bearer TOKEN"),t&&(n=N(n,t)),n}async function ye({url:e,needsToken:t,options:n}){return await fe.get(e,de({needsToken:t,options:n}))}async function Je({url:e,needsToken:t,options:n,payload:s={}}){return await fe.post(e,s,de({needsToken:t,options:n}))}async function En({url:e,needsToken:t,options:n,payload:s}){return await fe.put(e,s,de({needsToken:t,options:n}))}async function F(e){try{return await e()}catch(t){return Promise.reject(t)}}const B="https://zrrpg8wwbe.execute-api.us-east-1.amazonaws.com/sfly-sls",Sn="1000";async function On(e,t){return F(async()=>await Je({url:`${B}/api/v1/images/book/${e}`,payload:t}))}class Ke{constructor(t){h(this,"parentId");h(this,"images");this.parentId=t,this.images=[]}async add(t){return this.images.push(t),await On(this.parentId,new Ve(t)),new Promise(n=>{n(this.images.length)})}}class Ve{constructor(t){h(this,"handle");h(this,"url");h(this,"width");h(this,"height");h(this,"orientation");h(this,"taken_at");h(this,"camera_make");h(this,"camera");h(this,"filename");this.handle=t.handle,this.url=t.url,this.width=t.width,this.height=t.height,this.orientation=t.rotation,this.taken_at=t.captureTime,this.camera_make=t.cameraMake,this.camera=t.cameraModel,this.filename=t.filename}}const An=["new","ingesting","submitted","waiting for storyboard","storyboarding","waiting for initialize design","design initialized","waiting for design","designing","ready","error"],We=["baby","birthday","default","everyday","family","kids","life-stories","portfolio","school-memories","seasonal-holidays","special-celebrations","sports-and-hobbies","travel","wedding","year-in-review"],he={1005:{slug:"modern-black-sfly"},1101:{slug:"bon-voyage-sfly"},1103:{slug:"fun-in-the-sun-sfly"},1201:{slug:"modern-wedding-sfly"},3001:{slug:"digiscrap-sfly"},4034:{slug:"travel-snapshots-sfly"},4035:{slug:"vintage-travel-sfly"},5017:{slug:"natural-neutrals-sfly"},5033:{slug:"chalkboard-chic-sfly"},5079:{slug:"hello-spring-sfly"},5082:{slug:"familygram-sfly"},5085:{slug:"best-day-ever-sfly"},5091:{slug:"little-love-sfly"},5118:{slug:"a-year-in-color-sfly"},5120:{slug:"milestone-anniversaries-sfly"},5121:{slug:"the-travel-bug-sfly"},5122:{slug:"modern-white-sfly"},5127:{slug:"outdoor-wedding-sfly"},5134:{slug:"classic-wedding-sfly"},5138:{slug:"kraft-pop-sfly"},5142:{slug:"simply-black-sfly"},5144:{slug:"autumn-memories-sfly"},5146:{slug:"everyday-sentiments-sfly"},5149:{slug:"everyday-happiness-sfly"},5150:{slug:"its-a-girl-thing-sfly"},5155:{slug:"made-with-love-sfly"},5157:{slug:"high-school-memories-sfly"},5161:{slug:"rustic-wedding-sfly"},5165:{slug:"life-is-grand-sfly"},5167:{slug:"adventure-awaits-sfly"},5168:{slug:"disney-adventure-sfly"},5171:{slug:"world-travel-sfly"},5174:{slug:"hello-summer-sfly"},5183:{slug:"everything-sports-sfly"},5188:{slug:"everyday-watercolor-sfly"},5189:{slug:"holiday-memories-sfly"},5213:{slug:"love-and-thanks-sfly"},5218:{slug:"babys-first-year-sfly"},5219:{slug:"usa-travel-sfly"},5220:{slug:"vintage-wedding-sfly"},5226:{slug:"love-you-because-sfly"},5228:{slug:"reunion-sfly"},5238:{slug:"whimsy-chalkboard-sfly"},5242:{slug:"modern-indigo-sfly"},5250:{slug:"family-yearbook-sfly"},5255:{slug:"elegant-wedding-sfly"},5258:{slug:"family-vacation-sfly"},5259:{slug:"beach-travel-sfly"},5261:{slug:"sparkle-and-shine-sfly"},5262:{slug:"welcome-baby-sfly"},5265:{slug:"vivid-watercolor-sfly"},5266:{slug:"what-i-love-about-you-sfly"},5272:{slug:"love-grows-sfly"},5274:{slug:"painted-seasons-sfly"},5278:{slug:"vintage-disney-sfly"},5292:{slug:"modern-grey-sfly"},5297:{slug:"modern-love-story-sfly"},5299:{slug:"modern-travel-sfly"},5304:{slug:"beach-wedding-sfly"},5305:{slug:"rustic-farmhouse-sfly"},5308:{slug:"tropical-travel-sfly"},6e3:{slug:"travel-abroad-sfly"},6001:{slug:"everyday-rustic-sfly"},6002:{slug:"simply-modern-sfly"},6003:{slug:"modern-baby-sfly"},6004:{slug:"modern-photo-album-sfly"},6005:{slug:"travel-adventures-sfly"},6006:{slug:"watercolor-year-in-review-sfly"},6007:{slug:"beach-bliss-sfly"},6008:{slug:"simply-gray-sfly"},6009:{slug:"family-favorites-by-lure-design-sfly"},6010:{slug:"travel-gallery-sfly"},6011:{slug:"our-wedding-day-sfly"},6012:{slug:"chic-celebrations-by-float-paperie-sfly"},6013:{slug:"simply-bold-type-sfly"},6014:{slug:"colorful-florals-by-potts-design-sfly"},6015:{slug:"softly-rustic-sfly"},6016:{slug:"ombre-watercolor-sfly"},6017:{slug:"forever-love-by-with-merriment-sfly"},6018:{slug:"colorful-memories-by-britt-bass-sfly"},6019:{slug:"celebrate-family-by-float-paperie-sfly"},6020:{slug:"disney-family-adventures-sfly"},6021:{slug:"everyday-neutrals-sfly"},6022:{slug:"colorful-childhood-sfly"},6023:{slug:"everyday-indigo-sfly"},6024:{slug:"shimmer-and-shine-sfly"},6025:{slug:"summertime-fun-sfly"},6026:{slug:"pet-lover-sfly"},6027:{slug:"modern-wedding-story-sfly"},6028:{slug:"family-blessings-by-potts-design-sfly"},6030:{slug:"outdoor-adventures-by-sarah-hawkins-designs-sfly"},6031:{slug:"travel-memories-sfly"},6032:{slug:"tropical-travels-sfly"},6033:{slug:"everyday-chalkboard-by-potts-design-sfly"},6034:{slug:"classic-disney-sfly"},6035:{slug:"cheerful-color-sfly"},6036:{slug:"colorful-birthday-sfly"},6038:{slug:"classic-baby-sfly"},6039:{slug:"bold-year-in-review-by-float-paperie-sfly"},6040:{slug:"colorfully-fun-sfly"},6041:{slug:"colorful-year-in-review-by-sarah-hawkins-designs-sfly"},6042:{slug:"gilded-wedding-sfly"},6043:{slug:"road-trip-travel-by-sarah-hawkins-designs-sfly"},6044:{slug:"rustic-gilded-wedding-sfly"},6045:{slug:"elegantly-scripted-year-in-review-sfly"},6047:{slug:"2020-what-a-year-sfly"},6057:{slug:"best-mom-ever-sfly"},6052:{slug:"celebration-of-life-by-sarah-hawkins-designs-sfly"},6054:{slug:"colorful-school-days-by-float-paperie-sfly"},6051:{slug:"love-is-all-we-need-sfly"},6058:{slug:"graduation-celebration-sfly"},6056:{slug:"our-wedding-day-guestbook-sfly"},6055:{slug:"muted-everyday-abstract-sfly"},6046:{slug:"winter-memories-by-sarah-hawkins-design-sfly"},6053:{slug:"best-dad-ever-sfly"},6050:{slug:"watercolor-greenery-by-sarah-hawkins-designs-sfly"},6063:{slug:"watercolor-floral-wedding-by-kim-thoa-sfly"},6060:{slug:"watercolor-baby-girl-sfly"},6059:{slug:"watercolor-baby-boy-sfly"},6048:{slug:"simple-elegant-wedding-sfly"},6049:{slug:"gilded-wedding-guestbook-sfly"},6037:{slug:"everyday-fairytale-by-jenny-romanski-sfly"},6061:{slug:"best-grandparents-ever-sfly"},6068:{slug:"winter-getaway-sfly"},6067:{slug:"national-parks-travel-by-eiman-design-co-sfly"},6065:{slug:"go-sports-by-lure-design-sfly"},6066:{slug:"elegant-wedding-greenery-by-kim-thoa-sfly"},6064:{slug:"boho-travel-by-umaiana-studio-sfly"},6071:{slug:"modern-dark-neutrals-sfly"},6072:{slug:"modern-light-neutrals-sfly"},6073:{slug:"modern-celebrations-sfly"},6074:{slug:"bright-and-bold-kids-year-in-review-by-sarah-hawkins-designs-sfly"},6085:{slug:"classic-school-yearbook-sfly"},6084:{slug:"colorful-elementary-school-yearbook-sfly"},5402:{slug:"everyday-recipes-by-slightly-stationery-sfly"},6083:{slug:"school-days-yearbook-sfly"},6082:{slug:"the-story-of-me-sfly"},6086:{slug:"whimsical-recipes-by-slightly-stationery-sfly"},6101:{slug:"babys-first-sfly"},6103:{slug:"classic-recipes-sfly"},6104:{slug:"elevated-rustic-sfly"},6105:{slug:"boho-summer-sfly"},6116:{slug:"boho-baby-sfly"},6117:{slug:"simply-gallery-sfly"},6118:{slug:"this-is-love-sfly"},6120:{slug:"wedding-gallery-sfly"},6121:{slug:"watercolorwashes-sfly"},6124:{slug:"graduation-photo-album-sfly"},6125:{slug:"modern-year-in-review-photo-album-sfly"},6126:{slug:"black-white-photo-album-sfly"},6132:{slug:"travel-journal-sfly"},6133:{slug:"rustic-gallery-sfly"},6137:{slug:"summer-adventures-sfly"},6075:{slug:"together-again-sfly"},6078:{slug:"everyday-boho-by-umaiana-studio-sfly"},6089:{slug:"colorful-gradients-sfly"},6096:{slug:"simply-scrapbook-sfly"},6097:{slug:"boho-wedding-sfly"},6098:{slug:"black-and-white-rustic-sfly"},6099:{slug:"bright-color-pop-sfly"}},Ge=["8x8","10x10","12x12","8x11","11x8","11x14"],Xe=["sc","hc","pl"],Qe=["sp","sl","dl"],Ze=["low","medium","high"],Ye=["best","most","all"],qe=["none","few","lots"],et=["none","few","lots"];class Tn{constructor(t){h(this,"occasion");h(this,"style");h(this,"book_size");h(this,"cover_type");h(this,"page_type");h(this,"image_density");h(this,"image_filtering");h(this,"embellishment_level");h(this,"text_sticker_level");this.occasion=t.occasion,this.style=t.style,this.book_size=t.book_size,this.cover_type=t.cover_type,this.page_type=t.page_type,this.image_density=t.image_density,this.image_filtering=t.image_filtering,this.embellishment_level=t.embellishment_level,this.text_sticker_level=t.text_sticker_level}}class Q{constructor(t){h(this,"id");h(this,"state");h(this,"title");h(this,"design_request");this.id=t.id,this.state=t.state,this.title=t.title,this.design_request=new Tn(t.design_request)}}function kn(e){const t=he[e.style].slug,n=st({...e});return n.style=t,new Q({id:e.parentId,state:"new",title:e.title,design_request:n})}async function vn(e,t){return F(async()=>{const n=await ye({url:`${B}/api/v1/designoptions/booksize/${e}/imagecount/${t}`});return it(n.data)})}async function _n(e){return F(async()=>new Q((await Je({url:`${B}/api/v1/books`,payload:e})).data))}async function Nn(e){return F(async()=>new Q((await ye({url:`${B}/api/v1/books/${e}`})).data))}async function xn(e){return F(async()=>new Q((await En({url:`${B}/api/v1/books/${e.id}`,payload:e})).data))}async function Cn(e){return F(async()=>(await ye({url:`${B}/api/v1/books/${e}/format/galleon`})).data)}class tt{constructor(t,n){h(this,"parentId");h(this,"title");h(this,"occasion");h(this,"style");h(this,"bookSize");h(this,"coverType");h(this,"pageType");h(this,"imageDensity");h(this,"imageFiltering");h(this,"embellishmentLevel");h(this,"textStickerLevel");h(this,"images");this.parentId=t,this.title=(n==null?void 0:n.title)||"",this.occasion=(n==null?void 0:n.occasion)||We[0],this.style=(n==null?void 0:n.style)||parseInt(Object.keys(he)[0]),this.bookSize=(n==null?void 0:n.bookSize)||Ge[0],this.coverType=(n==null?void 0:n.coverType)||Xe[0],this.pageType=(n==null?void 0:n.pageType)||Qe[0],this.imageDensity=(n==null?void 0:n.imageDensity)||Ze[0],this.imageFiltering=(n==null?void 0:n.imageFiltering)||Ye[0],this.embellishmentLevel=(n==null?void 0:n.embellishmentLevel)||qe[0],this.textStickerLevel=(n==null?void 0:n.textStickerLevel)||et[0],this.images=new Ke(t)}async getOptions(t){return await vn(this.bookSize,t)}async submit(t){return t&&Object.assign(this,t),await xn(kn(this)),this.getProgress(),this}async getJSON(){return await Cn(this.parentId)}async getProgress(){let t="";const n=setInterval(async()=>{const s=(await Nn(this.parentId)).state;if(t!==s){t=s;const r=new CustomEvent("MagicBook.designRequestUpdated",{detail:{state:s}});window.dispatchEvent(r),["error","ready"].includes(s)&&clearInterval(n)}},Sn)}}class Rn{constructor(t){h(this,"apiKey");this.apiKey=t}async createDesignRequest(t){const n=await _n();return new tt(n.id,t)}}g.DesignRequest=tt,g.ImageServer=Ve,g.Images=Ke,g.MagicBookClient=Rn,g.bookSizes=Ge,g.coverTypes=Xe,g.embellishmentLevels=qe,g.imageDensities=Ze,g.imageFilterings=Ye,g.occasions=We,g.pageTypes=Qe,g.states=An,g.styles=he,g.textStickerLevels=et,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@magiclabs.ai/magicbook-client",
3
3
  "private": false,
4
- "version": "0.4.1-dev",
4
+ "version": "0.4.1",
5
5
  "description": "TypeScript package to create photo books with the Magicbook API.",
6
6
  "type": "module",
7
7
  "main": "./magicbook-client.umd.cjs",