@overmap-ai/core 1.1.2-gcs.1 → 1.1.2-gcs.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/overmap-core.js +3462 -3454
- package/dist/overmap-core.umd.cjs +6 -6
- package/dist/utils/file.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
(function(i,N){typeof exports=="object"&&typeof module<"u"?N(exports,require("@redux-offline/redux-offline/lib/types"),require("@reduxjs/toolkit"),require("superagent"),require("uuid"),require("react"),require("file-saver"),require("fast-tree-builder"),require("ts-tree-lib"),require("@redux-offline/redux-offline"),require("@redux-offline/redux-offline/lib/defaults"),require("localforage"),require("redux-persist-migrate"),require("@overmap-ai/forms"),require("idb"),require("jwt-decode"),require("dependency-graph"),require("@tiptap/core")):typeof define=="function"&&define.amd?define(["exports","@redux-offline/redux-offline/lib/types","@reduxjs/toolkit","superagent","uuid","react","file-saver","fast-tree-builder","ts-tree-lib","@redux-offline/redux-offline","@redux-offline/redux-offline/lib/defaults","localforage","redux-persist-migrate","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],N):(i=typeof globalThis<"u"?globalThis:i||self,N(i["overmap-core"]={},null,i.toolkit,i.request,i.uuid,i.react,i.fileSaver,i.buildTree,i.tsTreeLib,i.reduxOffline,i.offlineConfig,i.localforage,i.createMigration,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,N,l,nt,Xe,YI,ZI,Vn,At,JI,vn,XI,QI,D_,xI,eO,tO){"use strict";var j_=Object.defineProperty;var q_=(i,N,l)=>N in i?j_(i,N,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[N]=l;var m=(i,N,l)=>q_(i,typeof N!="symbol"?N+"":N,l);var WI;const zn=Object.freeze([]),jn=Object.freeze({});var qn=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(qn||{}),h=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(h||{}),Dn=(t=>(t[t.PLANNED=0]="PLANNED",t[t.ACTIVE=1]="ACTIVE",t[t.MAINTENANCE=2]="MAINTENANCE",t[t.INACTIVE=3]="INACTIVE",t[t.RETIRED=4]="RETIRED",t[t.DISPOSED=5]="DISPOSED",t))(Dn||{}),$n=(t=>(t.Issue="issue",t.Asset="asset",t.AssetType="asset_type",t.Project="project",t.Document="document",t))($n||{}),kt=(t=>(t[t.LOWEST=0]="LOWEST",t[t.LOW=2]="LOW",t[t.MEDIUM=4]="MEDIUM",t[t.HIGH=6]="HIGH",t[t.HIGHEST=8]="HIGHEST",t))(kt||{}),U=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))(U||{}),Cn=(t=>(t[t.BACKLOG=0]="BACKLOG",t[t.PLANNED=1]="PLANNED",t[t.IN_PROGRESS=2]="IN_PROGRESS",t[t.COMPLETED=3]="COMPLETED",t[t.CANCELLED=4]="CANCELLED",t))(Cn||{});const sO=kt.MEDIUM,Un=6e4;function F(t){return{addOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},addMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},setOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},setMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},updateOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},updateMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},deleteOne:(o,p)=>{delete o.instances[p.payload]},deleteMany:(o,p)=>{for(const T of p.payload)delete o.instances[T]},initialize:(o,p)=>{o.instances={};const T=new Set;for(const B of p.payload){const g=t(B);T.add(g),o.instances[g]=B}T.size!==p.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function iO(t){return{initializeSelection:(r,y)=>{r[t]=Array.from(new Set(y.payload))},selectOne:(r,y)=>{console.debug(r,r[t]),!new Set(r[t]).has(y.payload)&&r[t].push(y.payload)},selectMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)||o.add(p);r[t]=Array.from(o)},unselectOne:(r,y)=>{const o=new Set(r[t]);o.has(y.payload)&&(o.delete(y.payload),r[t]=Array.from(o))},unselectMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)&&o.delete(p);r[t]=Array.from(o)},toggleOne:(r,y)=>{const o=new Set(r[t]);o.has(y.payload)?o.delete(y.payload):o.add(y.payload),r[t]=Array.from(o)},toggleMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)?o.delete(p):o.add(p);r[t]=Array.from(o)}}}const ut="versioning",O=l.createAction("RESET"),z=l.createAction("RESET_PROJECT_STATE"),_=l.createAction("RESET_ORGANIZATION_STATE");function nO(t,s){return YI.useMemo(t,s)}WI=Symbol.toStringTag;class Nt{constructor(){m(this,WI,"Promise");m(this,"_promise");m(this,"_resolve");m(this,"_reject");m(this,"_state","pending");this._resolve=null,this._reject=null,this._promise=new Promise((s,e)=>{this._resolve=s,this._reject=e})}get state(){return this._state}then(s,e){return this._promise.then(s,e)}catch(s){return this._promise.catch(s)}resolve(s){if(!this._resolve)throw new Error("No resolve callback");this._resolve(s),this._state="fulfilled"}reject(s){if(!this._reject)throw s;this._reject(s),this._state="rejected"}finally(s){throw new Error("`finally` not implemented")}}let Gt=!1;["true","1"].includes("".toLowerCase())&&(Gt=!0);function aO(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),a=e.length;if(a!==n.length)return!1;for(let c=0;c<a;c++){const d=e[c];if(!Object.prototype.hasOwnProperty.call(s,d)||t[d]!==s[d])return!1}return!0}function Ht(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(Gt&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(Gt&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function cO(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==s[e])return!1;return!0}const f=t=>t.length===0?zn:t,ft=t=>Object.keys(t).length===0?jn:t,Ln=Ht(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===Wt.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),dO=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),rO=1e3*86400,Wt=new Date,uO=t=>new Date(t).toDateString()===Wt.toDateString(),lO=Ht((t,s,e)=>{const n=Math.round((new Date(t).getTime()-Wt.getTime())/rO);return n<s||n>e?Ln(t):dO.format(n,"days")});function oO(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function St(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(c=>{const d=oO(c);s(d)})},n.readAsArrayBuffer(t)})}const hO=(t,s)=>`${t}${s?`.${s}`:""}`;function mO(t,s){return new File([t],s,{type:t.type})}function kn(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Nn=async t=>(await fetch(t)).blob(),Gn=async(t,s)=>{const e=await Nn(t);return new File([e],s,{type:e.type})};function yO(t){const s=new Blob([t]);ZI.saveAs(s,t.name)}function Hn(t){return typeof t=="string"&&t.startsWith("blob:")}function pO(t){return t.type.startsWith("image/")}const Wn={};function AO(t,s,e,...n){const a=Wn[t];let c=!1;a?a[s]||(a[s]=!0,c=!0):(Wn[t]={[s]:!0},c=!0),c&&console[e](...n)}const Kn=["created_at","updated_at","index","revision"];function P(t){return{...t,uuid:Xe.v4()}}function fO(t){const s={};for(const e of t)s[e.uuid]=e;return s}function V(t){return t.map(({uuid:s})=>s)}function Tt(t,s){return t.localeCompare(s)}function Kt(t,s){return Tt(t.uuid,s.uuid)}function SO(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const c=t.split(".");c.length>1&&(s=c[c.length-1])}s&&!s.startsWith(".")&&(s="."+s);const a=s?s.length:0;return n.length+a>e&&(n=n.slice(0,e-a)+(s||"")),n}function TO(t){return t.toLowerCase().replace(" ","-")}function IO(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function OO(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const PO=/^.+@.+\..+$/;function R(t){const s={...t};for(const e of[...Kn,"created_by"])e in s&&delete s[e];return s}const Yn=t=>{const s=t.toSorted((e,n)=>e.order-n.order);return Vn(s,{id:e=>e.uuid,parentId:e=>e.parent,includeEmptyChildrenArray:!0,valueKey:!1})},FO=t=>{const{roots:s}=Yn(t);return s.map(e=>new At.Tree(e))},Zn=(t,s)=>{const{nodes:e}=Yn(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in asset procedure step tree.`);return new At.Tree(n)},Jn=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Xn=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Qn=t=>Vn(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),_O=t=>{const{roots:s}=Qn(t);return s.map(e=>new At.Tree(e))},xn=(t,s)=>{const{nodes:e}=Qn(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new At.Tree(n)};class bO{constructor(s){m(this,"operations",[]);m(this,"getData");this.getData=s}performOperations(s){let e=s;for(const n of this.operations)e=n(e);return e}filter(s,e){return this.operations.push(n=>n.filter(a=>a[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(a=>a[s]!==e)),this}orderBy(s){return this.operations.push(e=>[...e].sort((n,a)=>n[s]<=a[s]?1:-1)),this}reverse(){return this.operations.push(s=>[...s].reverse()),this}all(){return this.operations.push(s=>s),this}get(s,e){return l.createSelector([this.getData],n=>this.performOperations(n).find(a=>a[s]===e))}count(){return l.createSelector([this.getData],s=>this.performOperations(s).length)}first(){return l.createSelector([this.getData],s=>this.performOperations(s)[0])}last(){return l.createSelector([this.getData],s=>{const e=this.performOperations(s);return e[e.length-1]})}exists(){return l.createSelector([this.getData],s=>this.performOperations(s).length>0)}toSelector(){return l.createSelector([this.getData],s=>f(this.performOperations(s)))}}const A=t=>(...s)=>e=>t(e,...s),G=F(t=>t.uuid),ea={instances:{}},Yt=l.createSlice({name:"agents",initialState:ea,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,ea)),reducers:{initializeConversations:G.initialize,addConversation:G.addOne,addConversations:G.addMany,setConversation:G.setOne,setConversations:G.setMany,updateConversation:G.updateOne,updateConversations:G.updateMany,deleteConversation:G.deleteOne,deleteConversations:G.deleteMany}}),{initializeConversations:ta,addConversation:sa,addConversations:gO,setConversation:ia,setConversations:MO,updateConversation:na,updateConversations:RO,deleteConversation:wO,deleteConversations:EO}=Yt.actions,Zt=t=>t.agentsReducer.instances,BO=l.createSelector([Zt],t=>Object.values(t)),VO=A(l.createSelector([Zt,(t,s)=>s],(t,s)=>t[s])),aa=Yt.reducer,H=F(t=>t.uuid),ca={instances:{}},Jt=l.createSlice({name:"assetAttachments",initialState:ca,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,ca)),reducers:{initializeAssetAttachments:H.initialize,addAssetAttachment:H.addOne,addAssetAttachments:H.addMany,setAssetAttachment:H.setOne,setAssetAttachments:H.setMany,updateAssetAttachment:H.updateOne,updateAssetAttachments:H.updateMany,deleteAssetAttachment:H.deleteOne,deleteAssetAttachments:H.deleteMany}}),{initializeAssetAttachments:da,addAssetAttachment:ra,addAssetAttachments:Xt,setAssetAttachment:ua,setAssetAttachments:la,updateAssetAttachment:oa,updateAssetAttachments:ha,deleteAssetAttachment:ma,deleteAssetAttachments:Qt}=Jt.actions,ya=t=>t.assetAttachmentReducer.instances,xt=l.createSelector([ya],t=>Object.values(t)),pa=t=>s=>s.assetAttachmentReducer.instances[t],Aa=A(l.createSelector([xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),fa=A(l.createSelector([xt,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>s===e)))),Sa=Jt.reducer,W=F(({uuid:t})=>t),Ta={instances:{}},es=l.createSlice({name:"assetProcedureTypeAttachments",initialState:Ta,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Ta)),reducers:{initializeAssetProcedureTypeAttachments:W.initialize,addAssetProcedureTypeAttachment:W.addOne,addAssetProcedureTypeAttachments:W.addMany,setAssetProcedureTypeAttachment:W.setOne,setAssetProcedureTypeAttachments:W.setMany,updateAssetProcedureTypeAttachment:W.updateOne,updateAssetProcedureTypeAttachments:W.updateMany,deleteAssetProcedureTypeAttachment:W.deleteOne,deleteAssetProcedureTypeAttachments:W.deleteMany}}),{initializeAssetProcedureTypeAttachments:Ia,addAssetProcedureTypeAttachment:Oa,addAssetProcedureTypeAttachments:Pa,setAssetProcedureTypeAttachment:Fa,setAssetProcedureTypeAttachments:_a,updateAssetProcedureTypeAttachment:ba,updateAssetProcedureTypeAttachments:ga,deleteAssetProcedureTypeAttachment:Ma,deleteAssetProcedureTypeAttachments:Ra}=es.actions,wa=es.reducer,Ea=t=>t.assetProcedureTypeAttachmentReducer.instances,ts=l.createSelector([Ea],t=>Object.values(t)),Ba=t=>s=>s.assetProcedureTypeAttachmentReducer.instances[t],Va=A(l.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vO=A(l.createSelector([ts,(t,s)=>s],(t,s)=>f(t.filter(({asset_procedure_type:e})=>s===e)))),K=F(({uuid:t})=>t),va={instances:{}},ss=l.createSlice({name:"assetProcedureTypeFieldsAttachments",initialState:va,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,va)),reducers:{initializeAssetProcedureTypeFieldsAttachments:K.initialize,addAssetProcedureTypeFieldsAttachment:K.addOne,addAssetProcedureTypeFieldsAttachments:K.addMany,setAssetProcedureTypeFieldsAttachment:K.setOne,setAssetProcedureTypeFieldsAttachments:K.setMany,updateAssetProcedureTypeFieldsAttachment:K.updateOne,updateAssetProcedureTypeFieldsAttachments:K.updateMany,deleteAssetProcedureTypeFieldsAttachment:K.deleteOne,deleteAssetProcedureTypeFieldsAttachments:K.deleteMany}}),{initializeAssetProcedureTypeFieldsAttachments:za,addAssetProcedureTypeFieldsAttachment:ja,addAssetProcedureTypeFieldsAttachments:qa,setAssetProcedureTypeFieldsAttachment:Da,setAssetProcedureTypeFieldsAttachments:$a,updateAssetProcedureTypeFieldsAttachment:Ca,updateAssetProcedureTypeFieldsAttachments:Ua,deleteAssetProcedureTypeFieldsAttachment:La,deleteAssetProcedureTypeFieldsAttachments:ka}=ss.actions,Na=ss.reducer,Ga=t=>t.assetProcedureTypeFieldsAttachmentReducer.instances,is=l.createSelector([Ga],t=>Object.values(t)),zO=A(l.createSelector([is,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Ha=t=>s=>s.assetProcedureTypeFieldsAttachmentReducer.instances[t],Wa=A(l.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Y=F(({uuid:t})=>t),Ka={instances:{}},ns=l.createSlice({name:"assetProcedureTypeFields",initialState:Ka,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Ka)),reducers:{initializeAssetProcedureTypeFields:Y.initialize,addAssetProcedureTypeFields:Y.addOne,addAssetProcedureTypeFieldsMany:Y.addMany,setAssetProcedureTypeFields:Y.setOne,setAssetProcedureTypeFieldsMany:Y.setMany,updateAssetProcedureTypeFields:Y.updateOne,updateAssetProcedureTypeFieldsMany:Y.updateMany,deleteAssetProcedureTypeFields:Y.deleteOne,deleteAssetProcedureTypeFieldsMany:Y.deleteMany}}),{initializeAssetProcedureTypeFields:Ya,addAssetProcedureTypeFields:Za,addAssetProcedureTypeFieldsMany:Ja,setAssetProcedureTypeFields:Xa,setAssetProcedureTypeFieldsMany:Qa,updateAssetProcedureTypeFields:xa,updateAssetProcedureTypeFieldsMany:ec,deleteAssetProcedureTypeFields:tc,deleteAssetProcedureTypeFieldsMany:sc}=ns.actions,ic=ns.reducer,nc=t=>t.assetProcedureTypeFieldsReducer.instances,It=l.createSelector([nc],t=>Object.values(t)),jO=A(l.createSelector([It,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),qO=A(l.createSelector([It,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),ac=t=>s=>s.assetProcedureTypeFieldsReducer.instances[t],cc=A(l.createSelector([It,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Z=F(({uuid:t})=>t),dc={instances:{}},as=l.createSlice({name:"assetProcedureTypeFieldValuesAttachments",initialState:dc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,dc)),reducers:{initializeAssetProcedureTypeFieldValuesAttachments:Z.initialize,addAssetProcedureTypeFieldValuesAttachment:Z.addOne,addAssetProcedureTypeFieldValuesAttachments:Z.addMany,setAssetProcedureTypeFieldValuesAttachment:Z.setOne,setAssetProcedureTypeFieldValuesAttachments:Z.setMany,updateAssetProcedureTypeFieldValuesAttachment:Z.updateOne,updateAssetProcedureTypeFieldValuesAttachments:Z.updateMany,deleteAssetProcedureTypeFieldValuesAttachment:Z.deleteOne,deleteAssetProcedureTypeFieldValuesAttachments:Z.deleteMany}}),{initializeAssetProcedureTypeFieldValuesAttachments:rc,addAssetProcedureTypeFieldValuesAttachment:uc,addAssetProcedureTypeFieldValuesAttachments:cs,setAssetProcedureTypeFieldValuesAttachment:lc,setAssetProcedureTypeFieldValuesAttachments:oc,updateAssetProcedureTypeFieldValuesAttachment:hc,updateAssetProcedureTypeFieldValuesAttachments:mc,deleteAssetProcedureTypeFieldValuesAttachment:yc,deleteAssetProcedureTypeFieldValuesAttachments:ds}=as.actions,pc=as.reducer,Ac=t=>t.assetProcedureTypeFieldValuesAttachmentReducer.instances,rs=l.createSelector([Ac],t=>Object.values(t)),fc=t=>s=>s.assetProcedureTypeFieldValuesAttachmentReducer.instances[t],Sc=A(l.createSelector([rs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Tc=A(l.createSelector([rs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),J=F(({uuid:t})=>t),Ic={instances:{}},us=l.createSlice({name:"assetProcedureTypeFieldValues",initialState:Ic,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Ic)),reducers:{initializeAssetProcedureTypeFieldValues:J.initialize,addAssetProcedureTypeFieldValues:J.addOne,addAssetProcedureTypeFieldValuesMany:J.addMany,setAssetProcedureTypeFieldValues:J.setOne,setAssetProcedureTypeFieldValuesMany:J.setMany,updateAssetProcedureTypeFieldValues:J.updateOne,updateAssetProcedureTypeFieldValuesMany:J.updateMany,deleteAssetProcedureTypeFieldValues:J.deleteOne,deleteAssetProcedureTypeFieldValuesMany:J.deleteMany}}),{initializeAssetProcedureTypeFieldValues:Oc,addAssetProcedureTypeFieldValues:Pc,addAssetProcedureTypeFieldValuesMany:Fc,setAssetProcedureTypeFieldValues:_c,setAssetProcedureTypeFieldValuesMany:bc,updateAssetProcedureTypeFieldValues:gc,updateAssetProcedureTypeFieldValuesMany:Mc,deleteAssetProcedureTypeFieldValues:Rc,deleteAssetProcedureTypeFieldValuesMany:wc}=us.actions,Ec=us.reducer,Bc=t=>t.assetProcedureTypeFieldValuesReducer.instances,Ot=l.createSelector([Bc],t=>Object.values(t)),DO=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),$O=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure===s)))),Vc=t=>s=>s.assetProcedureTypeFieldValuesReducer.instances[t],vc=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),X=F(({uuid:t})=>t),zc={instances:{}},ls=l.createSlice({name:"assetProcedures",initialState:zc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,zc)),reducers:{initializeAssetProcedures:X.initialize,addAssetProcedure:X.addOne,addAssetProcedures:X.addMany,setAssetProcedure:X.setOne,setAssetProcedures:X.setMany,updateAssetProcedure:X.updateOne,updateAssetProcedures:X.updateMany,deleteAssetProcedure:X.deleteOne,deleteAssetProcedures:X.deleteMany}}),{initializeAssetProcedures:jc,addAssetProcedure:qc,addAssetProcedures:os,updateAssetProcedure:Dc,updateAssetProcedures:$c,deleteAssetProcedure:Cc,deleteAssetProcedures:hs,setAssetProcedure:Uc,setAssetProcedures:Lc}=ls.actions,kc=ls.reducer,Nc=t=>t.assetProcedureReducer.instances,Pt=l.createSelector([Nc],t=>Object.values(t)),Gc=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),CO=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Hc=t=>s=>s.assetProcedureReducer.instances[t],Wc=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Q=F(t=>t.uuid),Kc={instances:{}},ms=l.createSlice({name:"assetProcedureTypes",initialState:Kc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Kc)),reducers:{initializeAssetProcedureTypes:Q.initialize,addAssetProcedureType:Q.addOne,addAssetProcedureTypes:Q.addMany,setAssetProcedureType:Q.setOne,setAssetProcedureTypes:Q.setMany,updateAssetProcedureType:Q.updateOne,updateAssetProcedureTypes:Q.updateMany,deleteAssetProcedureType:Q.deleteOne,deleteAssetProcedureTypes:Q.deleteMany}}),{initializeAssetProcedureTypes:Yc,addAssetProcedureType:Zc,addAssetProcedureTypes:Jc,updateAssetProcedureType:Xc,updateAssetProcedureTypes:Qc,deleteAssetProcedureType:xc,deleteAssetProcedureTypes:ed,setAssetProcedureType:td,setAssetProcedureTypes:sd}=ms.actions,id=ms.reducer,nd=t=>t.assetProcedureTypeReducer.instances,ys=l.createSelector([nd],t=>Object.values(t)),ad=t=>s=>s.assetProcedureTypeReducer.instances[t],cd=A(l.createSelector([ys,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),UO=A(l.createSelector([ys,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),x=F(t=>t.uuid),dd={instances:{}},ps=l.createSlice({name:"assetProcedureStepFieldsAttachments",initialState:dd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,dd)),reducers:{initializeAssetProcedureStepFieldsAttachments:x.initialize,addAssetProcedureStepFieldsAttachment:x.addOne,addAssetProcedureStepFieldsAttachments:x.addMany,setAssetProcedureStepFieldsAttachment:x.setOne,setAssetProcedureStepFieldsAttachments:x.setMany,updateAssetProcedureStepFieldsAttachment:x.updateOne,updateAssetProcedureStepFieldsAttachments:x.updateMany,deleteAssetProcedureStepFieldsAttachment:x.deleteOne,deleteAssetProcedureStepFieldsAttachments:x.deleteMany}}),{initializeAssetProcedureStepFieldsAttachments:rd,addAssetProcedureStepFieldsAttachment:ud,addAssetProcedureStepFieldsAttachments:ld,setAssetProcedureStepFieldsAttachment:od,setAssetProcedureStepFieldsAttachments:hd,updateAssetProcedureStepFieldsAttachment:md,updateAssetProcedureStepFieldsAttachments:yd,deleteAssetProcedureStepFieldsAttachment:pd,deleteAssetProcedureStepFieldsAttachments:Ad}=ps.actions,fd=t=>t.assetProcedureStepFieldsAttachmentReducer.instances,As=l.createSelector([fd],t=>Object.values(t)),LO=A(l.createSelector([As,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Sd=t=>s=>s.assetProcedureStepFieldsAttachmentReducer.instances[t],Td=A(l.createSelector([As,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Id=ps.reducer,ee=F(t=>t.uuid),Od={instances:{}},fs=l.createSlice({name:"assetProcedureStepFields",initialState:Od,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Od)),reducers:{initializeAssetProcedureStepFields:ee.initialize,addAssetProcedureStepFields:ee.addOne,addAssetProcedureStepFieldsMany:ee.addMany,setAssetProcedureStepFields:ee.setOne,setAssetProcedureStepFieldsMany:ee.setMany,updateAssetProcedureStepFields:ee.updateOne,updateAssetProcedureStepFieldsMany:ee.updateMany,deleteAssetProcedureStepFields:ee.deleteOne,deleteAssetProcedureStepFieldsMany:ee.deleteMany}}),{initializeAssetProcedureStepFields:Pd,addAssetProcedureStepFields:Fd,addAssetProcedureStepFieldsMany:_d,setAssetProcedureStepFields:bd,setAssetProcedureStepFieldsMany:gd,updateAssetProcedureStepFields:Md,updateAssetProcedureStepFieldsMany:Rd,deleteAssetProcedureStepFields:wd,deleteAssetProcedureStepFieldsMany:Ed}=fs.actions,Ss=t=>t.assetProcedureStepFieldsReducer.instances,Ft=l.createSelector([Ss],t=>Object.values(t)),kO=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_step===s)))),NO=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_step===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),GO=l.createSelector([Ss],t=>{const s={};for(const e of Object.values(t)){const n=s[e.asset_procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.asset_procedure_step]=e)}return s}),Bd=t=>s=>s.assetProcedureStepFieldsReducer.instances[t],Vd=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vd=fs.reducer,te=F(t=>t.uuid),zd={instances:{}},Ts=l.createSlice({name:"assetProcedureStepFieldValuesAttachments",initialState:zd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,zd)),reducers:{initializeAssetProcedureStepFieldValuesAttachments:te.initialize,addAssetProcedureStepFieldValuesAttachment:te.addOne,addAssetProcedureStepFieldValuesAttachments:te.addMany,setAssetProcedureStepFieldValuesAttachment:te.setOne,setAssetProcedureStepFieldValuesAttachments:te.setMany,updateAssetProcedureStepFieldValuesAttachment:te.updateOne,updateAssetProcedureStepFieldValuesAttachments:te.updateMany,deleteAssetProcedureStepFieldValuesAttachment:te.deleteOne,deleteAssetProcedureStepFieldValuesAttachments:te.deleteMany}}),{initializeAssetProcedureStepFieldValuesAttachments:jd,addAssetProcedureStepFieldValuesAttachment:qd,addAssetProcedureStepFieldValuesAttachments:Is,setAssetProcedureStepFieldValuesAttachment:Dd,setAssetProcedureStepFieldValuesAttachments:$d,updateAssetProcedureStepFieldValuesAttachment:Cd,updateAssetProcedureStepFieldValuesAttachments:Ud,deleteAssetProcedureStepFieldValuesAttachment:Ld,deleteAssetProcedureStepFieldValuesAttachments:Os}=Ts.actions,kd=t=>t.assetProcedureStepFieldValuesAttachmentReducer.instances,Ps=l.createSelector([kd],t=>Object.values(t)),Nd=t=>s=>s.assetProcedureStepFieldValuesAttachmentReducer.instances[t],Gd=A(l.createSelector([Ps,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Hd=A(l.createSelector([Ps,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),Wd=Ts.reducer,se=F(t=>t.uuid),Kd={instances:{}},Fs=l.createSlice({name:"assetProcedureStepFieldValues",initialState:Kd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Kd)),reducers:{initializeAssetProcedureStepFieldValues:se.initialize,addAssetProcedureStepFieldValues:se.addOne,addAssetProcedureStepFieldValuesMany:se.addMany,setAssetProcedureStepFieldValues:se.setOne,setAssetProcedureStepFieldValuesMany:se.setMany,updateAssetProcedureStepFieldValues:se.updateOne,updateAssetProcedureStepFieldValuesMany:se.updateMany,deleteAssetProcedureStepFieldValues:se.deleteOne,deleteAssetProcedureStepFieldValuesMany:se.deleteMany}}),{initializeAssetProcedureStepFieldValues:Yd,addAssetProcedureStepFieldValues:Zd,addAssetProcedureStepFieldValuesMany:Jd,setAssetProcedureStepFieldValues:Xd,setAssetProcedureStepFieldValuesMany:Qd,updateAssetProcedureStepFieldValues:xd,updateAssetProcedureStepFieldValuesMany:er,deleteAssetProcedureStepFieldValues:tr,deleteAssetProcedureStepFieldValuesMany:sr}=Fs.actions,ir=t=>t.assetProcedureStepFieldValuesReducer.instances,lt=l.createSelector([ir],t=>Object.values(t)),HO=A(l.createSelector([lt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),WO=A(l.createSelector([lt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure===s)))),KO=A(l.createSelector([lt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_step===s)))),nr=t=>s=>s.assetProcedureStepFieldValuesReducer.instances[t],ar=A(l.createSelector([lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),cr=Fs.reducer,ie=F(t=>t.uuid),dr={instances:{}},_s=l.createSlice({name:"assetProcedureSteps",initialState:dr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,dr)),reducers:{initializeAssetProcedureSteps:ie.initialize,setAssetProcedureStep:ie.setOne,setAssetProcedureSteps:ie.setMany,addAssetProcedureStep:ie.addOne,addAssetProcedureSteps:ie.addMany,updateAssetProcedureStep:ie.updateOne,updateAssetProcedureSteps:ie.updateMany,deleteAssetProcedureStep:ie.deleteOne,deleteAssetProcedureSteps:ie.deleteMany}}),{initializeAssetProcedureSteps:rr,setAssetProcedureStep:ur,setAssetProcedureSteps:lr,addAssetProcedureStep:or,addAssetProcedureSteps:hr,updateAssetProcedureStep:mr,updateAssetProcedureSteps:yr,deleteAssetProcedureStep:pr,deleteAssetProcedureSteps:Ar}=_s.actions,fr=_s.reducer,_t=t=>t.assetProcedureStepReducer.instances,Sr=t=>s=>s.assetProcedureStepReducer.instances[t],bs=l.createSelector([_t],t=>Object.values(t)),YO=A(l.createSelector([_t,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return ft(e)})),ZO=A(l.createSelector([bs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),Tr=A(l.createSelector([bs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ir=A(l.createSelector([_t,(t,s)=>s],(t,s)=>{if(!t[s])return f([]);const a=Zn(s,Object.values(t)).all().map(({model:c})=>c);return f(a)})),ne=F(t=>t.uuid),Or={instances:{}},gs=l.createSlice({name:"assets",initialState:Or,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Or)),reducers:{initializeAssets:ne.initialize,addAsset:ne.addOne,addAssets:ne.addMany,setAsset:ne.setOne,setAssets:ne.setMany,updateAsset:ne.updateOne,updateAssets:ne.updateMany,deleteAsset:ne.deleteOne,deleteAssets:ne.deleteMany}}),{initializeAssets:Pr,addAsset:Fr,addAssets:Ms,updateAsset:_r,updateAssets:br,deleteAsset:gr,deleteAssets:Rs,setAsset:Mr,setAssets:Rr}=gs.actions,wr=t=>t.assetReducer.instances,bt=l.createSelector([wr],t=>f(Object.values(t))),JO=A(l.createSelector([bt,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>e===s)))),Er=A(l.createSelector([bt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Br=t=>s=>s.assetReducer.instances[t],Vr=A(l.createSelector([bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vr=gs.reducer,ae=F(t=>t.uuid),zr={instances:{}},ws=l.createSlice({name:"assetStageCompletions",initialState:zr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,zr)),reducers:{initializeAssetStageCompletions:ae.initialize,addAssetStageCompletion:ae.addOne,addAssetStageCompletions:ae.addMany,setAssetStageCompletion:ae.setOne,setAssetStageCompletions:ae.setMany,updateAssetStageCompletion:ae.updateOne,updateAssetStageCompletions:ae.updateMany,deleteAssetStageCompletion:ae.deleteOne,deleteAssetStageCompletions:ae.deleteMany}}),{initializeAssetStageCompletions:jr,addAssetStageCompletion:qr,addAssetStageCompletions:Dr,setAssetStageCompletion:$r,setAssetStageCompletions:Cr,updateAssetStageCompletion:Ur,updateAssetStageCompletions:Lr,deleteAssetStageCompletion:kr,deleteAssetStageCompletions:Nr}=ws.actions,Gr=ws.reducer,Hr=t=>t.assetStageCompletionReducer.instances,Wr=l.createSelector([Hr],t=>Object.values(t)),Kr=t=>s=>s.assetStageCompletionReducer.instances[t],Yr=A(l.createSelector([Wr,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ce=F(t=>t.uuid),Zr={instances:{}},Es=l.createSlice({name:"assetStages",initialState:Zr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Zr)),reducers:{initializeAssetStages:ce.initialize,setAssetStage:ce.setOne,setAssetStages:ce.setMany,addAssetStage:ce.addOne,addAssetStages:ce.addMany,updateAssetStage:ce.updateOne,updateAssetStages:ce.updateMany,deleteAssetStage:ce.deleteOne,deleteAssetStages:ce.deleteMany}}),{initializeAssetStages:Jr,setAssetStage:Xr,setAssetStages:Qr,addAssetStage:xr,addAssetStages:eu,updateAssetStage:tu,updateAssetStages:su,deleteAssetStage:iu,deleteAssetStages:nu}=Es.actions,au=Es.reducer,Bs=t=>t.assetStageReducer.instances,cu=t=>s=>s.assetStageReducer.instances[t],Vs=l.createSelector([Bs],t=>Object.values(t)),XO=A(l.createSelector([Bs,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return ft(e)})),QO=A(l.createSelector([Vs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),du=A(l.createSelector([Vs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),de=F(t=>t.uuid),ru={instances:{}},vs=l.createSlice({name:"assetTypeAttachments",initialState:ru,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ru)),reducers:{initializeAssetTypeAttachments:de.initialize,addAssetTypeAttachment:de.addOne,addAssetTypeAttachments:de.addMany,setAssetTypeAttachment:de.setOne,setAssetTypeAttachments:de.setMany,updateAssetTypeAttachment:de.updateOne,updateAssetTypeAttachments:de.updateMany,deleteAssetTypeAttachment:de.deleteOne,deleteAssetTypeAttachments:de.deleteMany}}),{initializeAssetTypeAttachments:uu,addAssetTypeAttachment:lu,addAssetTypeAttachments:zs,setAssetTypeAttachment:ou,setAssetTypeAttachments:hu,updateAssetTypeAttachment:mu,updateAssetTypeAttachments:yu,deleteAssetTypeAttachment:pu,deleteAssetTypeAttachments:js}=vs.actions,Au=t=>t.assetTypeAttachmentReducer.instances,qs=l.createSelector([Au],t=>Object.values(t)),fu=t=>s=>s.assetTypeAttachmentReducer.instances[t],Su=A(l.createSelector([qs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Tu=A(l.createSelector([qs,(t,s)=>s],(t,s)=>f(t.filter(({asset_type:e})=>s===e)))),Iu=vs.reducer,re=F(t=>t.uuid),Ou={instances:{}},Ds=l.createSlice({name:"assetTypeFieldsAttachments",initialState:Ou,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Ou)),reducers:{initializeAssetTypeFieldsAttachments:re.initialize,addAssetTypeFieldsAttachment:re.addOne,addAssetTypeFieldsAttachments:re.addMany,setAssetTypeFieldsAttachment:re.setOne,setAssetTypeFieldsAttachments:re.setMany,updateAssetTypeFieldsAttachment:re.updateOne,updateAssetTypeFieldsAttachments:re.updateMany,deleteAssetTypeFieldsAttachment:re.deleteOne,deleteAssetTypeFieldsAttachments:re.deleteMany}}),{initializeAssetTypeFieldsAttachments:Pu,addAssetTypeFieldsAttachment:Fu,addAssetTypeFieldsAttachments:_u,setAssetTypeFieldsAttachment:bu,setAssetTypeFieldsAttachments:gu,updateAssetTypeFieldsAttachment:Mu,updateAssetTypeFieldsAttachments:Ru,deleteAssetTypeFieldsAttachment:wu,deleteAssetTypeFieldsAttachments:Eu}=Ds.actions,Bu=t=>t.assetTypeFieldsAttachmentReducer.instances,$s=l.createSelector([Bu],t=>Object.values(t)),xO=A(l.createSelector([$s,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Vu=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],vu=A(l.createSelector([$s,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),zu=Ds.reducer,ue=F(t=>t.uuid),ju={instances:{}},Cs=l.createSlice({name:"assetTypeFields",initialState:ju,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ju)),reducers:{initializeAssetTypeFields:ue.initialize,addAssetTypeFields:ue.addOne,addAssetTypeFieldsMany:ue.addMany,setAssetTypeFields:ue.setOne,setAssetTypeFieldsMany:ue.setMany,updateAssetTypeFields:ue.updateOne,updateAssetTypeFieldsMany:ue.updateMany,deleteAssetTypeFields:ue.deleteOne,deleteAssetTypeFieldsMany:ue.deleteMany}}),{initializeAssetTypeFields:qu,addAssetTypeFields:Du,addAssetTypeFieldsMany:$u,setAssetTypeFields:Cu,setAssetTypeFieldsMany:Uu,updateAssetTypeFields:Lu,updateAssetTypeFieldsMany:ku,deleteAssetTypeFields:Nu,deleteAssetTypeFieldsMany:Gu}=Cs.actions,Hu=t=>t.assetTypeFieldsReducer.instances,ot=l.createSelector([Hu],t=>Object.values(t)),eP=A(l.createSelector([ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),tP=A(l.createSelector([ot,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Wu=t=>s=>s.assetTypeFieldsReducer.instances[t],Ku=A(l.createSelector([ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Yu=Cs.reducer,le=F(t=>t.uuid),Zu={instances:{}},Us=l.createSlice({name:"assetTypeFieldValuesAttachments",initialState:Zu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Zu)),reducers:{initializeAssetTypeFieldValuesAttachments:le.initialize,addAssetTypeFieldValuesAttachment:le.addOne,addAssetTypeFieldValuesAttachments:le.addMany,setAssetTypeFieldValuesAttachment:le.setOne,setAssetTypeFieldValuesAttachments:le.setMany,updateAssetTypeFieldValuesAttachment:le.updateOne,updateAssetTypeFieldValuesAttachments:le.updateMany,deleteAssetTypeFieldValuesAttachment:le.deleteOne,deleteAssetTypeFieldValuesAttachments:le.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:Ju,addAssetTypeFieldValuesAttachment:Xu,addAssetTypeFieldValuesAttachments:Ls,setAssetTypeFieldValuesAttachment:Qu,setAssetTypeFieldValuesAttachments:xu,updateAssetTypeFieldValuesAttachment:el,updateAssetTypeFieldValuesAttachments:tl,deleteAssetTypeFieldValuesAttachment:sl,deleteAssetTypeFieldValuesAttachments:ks}=Us.actions,il=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Ns=l.createSelector([il],t=>Object.values(t)),nl=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],al=A(l.createSelector([Ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),cl=A(l.createSelector([Ns,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),dl=Us.reducer,oe=F(t=>t.uuid),rl={instances:{}},Gs=l.createSlice({name:"assetTypeFieldValues",initialState:rl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,rl)),reducers:{initializeAssetTypeFieldValues:oe.initialize,addAssetTypeFieldValues:oe.addOne,addAssetTypeFieldValuesMany:oe.addMany,setAssetTypeFieldValues:oe.setOne,setAssetTypeFieldValuesMany:oe.setMany,updateAssetTypeFieldValues:oe.updateOne,updateAssetTypeFieldValuesMany:oe.updateMany,deleteAssetTypeFieldValues:oe.deleteOne,deleteAssetTypeFieldValuesMany:oe.deleteMany}}),{initializeAssetTypeFieldValues:ul,addAssetTypeFieldValues:ll,addAssetTypeFieldValuesMany:ol,setAssetTypeFieldValues:hl,setAssetTypeFieldValuesMany:ml,updateAssetTypeFieldValues:yl,updateAssetTypeFieldValuesMany:pl,deleteAssetTypeFieldValues:Al,deleteAssetTypeFieldValuesMany:fl}=Gs.actions,Sl=t=>t.assetTypeFieldValuesReducer.instances,gt=l.createSelector([Sl],t=>Object.values(t)),sP=A(l.createSelector([gt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),iP=A(l.createSelector([ot,gt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.asset_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),Tl=t=>s=>s.assetTypeFieldValuesReducer.instances[t],Il=A(l.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ol=Gs.reducer,he=F(t=>t.uuid),Pl={instances:{}},Hs=l.createSlice({name:"assetTypeIdentifiers",initialState:Pl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Pl)),reducers:{initializeAssetTypeIdentifiers:he.initialize,addAssetTypeIdentifier:he.addOne,addAssetTypeIdentifiers:he.addMany,setAssetTypeIdentifier:he.setOne,setAssetTypeIdentifiers:he.setMany,updateAssetTypeIdentifier:he.updateOne,updateAssetTypeIdentifiers:he.updateMany,deleteAssetTypeIdentifier:he.deleteOne,deleteAssetTypeIdentifiers:he.deleteMany}}),{initializeAssetTypeIdentifiers:Fl,addAssetTypeIdentifier:_l,addAssetTypeIdentifiers:bl,setAssetTypeIdentifier:gl,setAssetTypeIdentifiers:Ml,updateAssetTypeIdentifier:Rl,updateAssetTypeIdentifiers:wl,deleteAssetTypeIdentifier:El,deleteAssetTypeIdentifiers:Bl}=Hs.actions,Vl=t=>t.assetTypeIdentifierReducer.instances,Ws=l.createSelector([Vl],t=>Object.values(t)),vl=t=>s=>s.assetTypeIdentifierReducer.instances[t],zl=A(l.createSelector([Ws,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),nP=A(l.createSelector([Ws,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),jl=Hs.reducer,me=F(t=>t.uuid),ql={instances:{}},Ks=l.createSlice({name:"assetTypeIdentifierValues",initialState:ql,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,ql)),reducers:{initializeAssetTypeIdentifierValues:me.initialize,addAssetTypeIdentifierValue:me.addOne,addAssetTypeIdentifierValues:me.addMany,setAssetTypeIdentifierValue:me.setOne,setAssetTypeIdentifierValues:me.setMany,updateAssetTypeIdentifierValue:me.updateOne,updateAssetTypeIdentifierValues:me.updateMany,deleteAssetTypeIdentifierValue:me.deleteOne,deleteAssetTypeIdentifierValues:me.deleteMany}}),{initializeAssetTypeIdentifierValues:Dl,addAssetTypeIdentifierValue:$l,addAssetTypeIdentifierValues:Cl,setAssetTypeIdentifierValue:Ul,setAssetTypeIdentifierValues:Ll,updateAssetTypeIdentifierValue:kl,updateAssetTypeIdentifierValues:Nl,deleteAssetTypeIdentifierValue:Gl,deleteAssetTypeIdentifierValues:Hl}=Ks.actions,Wl=t=>t.assetTypeIdentifierValueReducer.instances,Mt=l.createSelector([Wl],t=>Object.values(t)),Kl=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],Yl=A(l.createSelector([Mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),aP=A(l.createSelector([Mt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),cP=A(l.createSelector([Mt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type_identifier===s)))),Zl=Ks.reducer,ye=F(t=>t.uuid),Jl={instances:{}},Ys=l.createSlice({name:"assetTypes",initialState:Jl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Jl)),reducers:{initializeAssetTypes:ye.initialize,setAssetType:ye.setOne,setAssetTypes:ye.setMany,addAssetType:ye.addOne,addAssetTypes:ye.addMany,updateAssetType:ye.updateOne,updateAssetTypes:ye.updateMany,deleteAssetType:ye.deleteOne,deleteAssetTypes:ye.deleteMany}}),{initializeAssetTypes:Xl,setAssetType:Ql,setAssetTypes:xl,addAssetType:eo,addAssetTypes:to,updateAssetType:so,updateAssetTypes:io,deleteAssetType:no,deleteAssetTypes:ao}=Ys.actions,co=t=>t.assetTypeReducer.instances,Zs=l.createSelector([co],t=>Object.values(t)),ro=t=>s=>s.assetTypeReducer.instances[t],uo=A(l.createSelector([Zs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),dP=A(l.createSelector([Zs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),lo=Ys.reducer,pe=F(t=>t.uuid),oo={instances:{}},Js=l.createSlice({name:"assetTypeStatuses",initialState:oo,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,oo)),reducers:{initializeAssetTypeStatuses:pe.initialize,addAssetTypeStatus:pe.addOne,addAssetTypeStatuses:pe.addMany,setAssetTypeStatus:pe.setOne,setAssetTypeStatuses:pe.setMany,updateAssetTypeStatus:pe.updateOne,updateAssetTypeStatuses:pe.updateMany,deleteAssetTypeStatus:pe.deleteOne,deleteAssetTypeStatuses:pe.deleteMany}}),{initializeAssetTypeStatuses:ho,addAssetTypeStatus:mo,addAssetTypeStatuses:yo,setAssetTypeStatus:po,setAssetTypeStatuses:Ao,updateAssetTypeStatus:fo,updateAssetTypeStatuses:So,deleteAssetTypeStatus:To,deleteAssetTypeStatuses:Io}=Js.actions,Oo=t=>t.assetTypeStatusReducer.instances,Xs=l.createSelector([Oo],t=>f(Object.values(t).toSorted(Jn))),Po=t=>s=>s.assetTypeStatusReducer.instances[t],Fo=A(l.createSelector([Xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rP=A(l.createSelector([Xs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),_o=Js.reducer,bo={accessToken:"",refreshToken:"",isLoggedIn:!1},Rt=l.createSlice({name:"auth",initialState:bo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,bo)),reducers:{setTokens:(t,s)=>{t.accessToken=s.payload.accessToken,t.refreshToken=s.payload.refreshToken},clearTokens:t=>{t.accessToken="",t.refreshToken=""},setLoggedIn:(t,s)=>{s.payload||Rt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:uP,clearTokens:lP,setLoggedIn:go}=Rt.actions,oP=t=>t.authReducer.accessToken,hP=t=>t.authReducer.isLoggedIn,Mo=Rt.reducer,Ae=F(t=>t.uuid),Ro={instances:{}},Qs=l.createSlice({name:"documentAttachments",initialState:Ro,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Ro)),reducers:{initializeDocumentAttachments:Ae.initialize,addDocumentAttachment:Ae.addOne,addDocumentAttachments:Ae.addMany,setDocumentAttachment:Ae.setOne,setDocumentAttachments:Ae.setMany,updateDocumentAttachment:Ae.updateOne,updateDocumentAttachments:Ae.updateMany,deleteDocumentAttachment:Ae.deleteOne,deleteDocumentAttachments:Ae.deleteMany}}),{initializeDocumentAttachments:wo,addDocumentAttachment:Eo,addDocumentAttachments:Bo,setDocumentAttachment:Vo,setDocumentAttachments:vo,updateDocumentAttachment:zo,updateDocumentAttachments:jo,deleteDocumentAttachment:qo,deleteDocumentAttachments:Do}=Qs.actions,$o=t=>t.documentAttachmentReducer.instances,xs=l.createSelector([$o],t=>Object.values(t)),Co=t=>s=>s.documentAttachmentReducer.instances[t],Uo=A(l.createSelector([xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),mP=A(l.createSelector([xs,(t,s)=>s],(t,s)=>f(t.filter(({document:e})=>s===e)))),Lo=Qs.reducer,fe=F(({uuid:t})=>t),ko={instances:{}},ei=l.createSlice({name:"documents",initialState:ko,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>{Object.assign(s,ko)}),reducers:{initializeDocuments:fe.initialize,addDocument:fe.addOne,addDocuments:fe.addMany,setDocument:fe.setOne,setDocuments:fe.setMany,updateDocument:fe.updateOne,updateDocuments:fe.updateMany,deleteDocument:fe.deleteOne,deleteDocuments:fe.deleteMany}}),{initializeDocuments:No,addDocument:Go,addDocuments:Ho,setDocument:Wo,setDocuments:Ko,updateDocument:Yo,updateDocuments:Zo,deleteDocument:Jo,deleteDocuments:Xo}=ei.actions,Qo=ei.reducer,ti=t=>t.documentsReducer.instances,wt=l.createSelector([ti],t=>Object.values(t)),xo=t=>s=>s.documentsReducer.instances[t],eh=A(l.createSelector([wt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),yP=A(l.createSelector([wt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),pP=A(l.createSelector([wt,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),th=A(l.createSelector([ti,(t,s)=>s],(t,s)=>{if(!t[s])return f([]);const a=xn(s,Object.values(t)).all().map(({model:c})=>c);return f(a)})),sh={s3Urls:{}},ih=1e3*60*60,AP=ih*24*7,si=l.createSlice({name:"file",initialState:sh,extraReducers:t=>t.addCase(O,s=>Object.assign(s,sh)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:a}=s.payload,c=new Date,d=new Date(c.getTime()+AP);t.s3Urls[a]={url:e,fields:n,exp:d.getTime()}}}}),{setUploadUrl:fP}=si.actions,SP=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<ih))return e},nh=si.reducer,Se=F(t=>t.uuid),ah={instances:{}},ii=l.createSlice({name:"formIdentifiers",initialState:ah,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ah)),reducers:{initializeFormIdentifiers:Se.initialize,addFormIdentifier:Se.addOne,addFormIdentifiers:Se.addMany,setFormIdentifier:Se.setOne,setFormIdentifiers:Se.setMany,updateFormIdentifier:Se.updateOne,updateFormIdentifiers:Se.updateMany,deleteFormIdentifier:Se.deleteOne,deleteFormIdentifiers:Se.deleteMany}}),{initializeFormIdentifiers:ch,addFormIdentifier:dh,addFormIdentifiers:rh,setFormIdentifier:uh,setFormIdentifiers:lh,updateFormIdentifier:oh,updateFormIdentifiers:hh,deleteFormIdentifier:mh,deleteFormIdentifiers:yh}=ii.actions,ph=t=>t.formIdentifierReducer.instances,ni=l.createSelector([ph],t=>Object.values(t)),Ah=t=>s=>s.formIdentifierReducer.instances[t],fh=A(l.createSelector([ni,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),TP=A(l.createSelector([ni,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),Sh=ii.reducer,Te=F(t=>t.uuid),Th={instances:{}},ai=l.createSlice({name:"formIdentifierValues",initialState:Th,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Th)),reducers:{initializeFormIdentifierValues:Te.initialize,addFormIdentifierValue:Te.addOne,addFormIdentifierValues:Te.addMany,setFormIdentifierValue:Te.setOne,setFormIdentifierValues:Te.setMany,updateFormIdentifierValue:Te.updateOne,updateFormIdentifierValues:Te.updateMany,deleteFormIdentifierValue:Te.deleteOne,deleteFormIdentifierValues:Te.deleteMany}}),{initializeFormIdentifierValues:Ih,addFormIdentifierValue:Oh,addFormIdentifierValues:Ph,setFormIdentifierValue:Fh,setFormIdentifierValues:_h,updateFormIdentifierValue:bh,updateFormIdentifierValues:gh,deleteFormIdentifierValue:Mh,deleteFormIdentifierValues:Rh}=ai.actions,wh=t=>t.formIdentifierValueReducer.instances,Et=l.createSelector([wh],t=>Object.values(t)),Eh=t=>s=>s.formIdentifierValueReducer.instances[t],Bh=A(l.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),IP=A(l.createSelector([Et,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),OP=A(l.createSelector([Et,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_identifier===s)))),Vh=ai.reducer,Ie=F(t=>t.uuid),vh={instances:{}},ci=l.createSlice({name:"formRevisionAttachments",initialState:vh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,vh)),reducers:{initializeFormRevisionAttachments:Ie.initialize,addFormRevisionAttachment:Ie.addOne,addFormRevisionAttachments:Ie.addMany,setFormRevisionAttachment:Ie.setOne,setFormRevisionAttachments:Ie.setMany,updateFormRevisionAttachment:Ie.updateOne,updateFormRevisionAttachments:Ie.updateMany,deleteFormRevisionAttachment:Ie.deleteOne,deleteFormRevisionAttachments:Ie.deleteMany}}),{initializeFormRevisionAttachments:zh,addFormRevisionAttachment:jh,addFormRevisionAttachments:qh,setFormRevisionAttachment:Dh,setFormRevisionAttachments:$h,updateFormRevisionAttachment:Ch,updateFormRevisionAttachments:Uh,deleteFormRevisionAttachment:Lh,deleteFormRevisionAttachments:kh}=ci.actions,Bt=t=>t.formRevisionAttachmentReducer.instances,Nh=l.createSelector([Bt],t=>Object.values(t)),Gh=A(l.createSelector([Bt,(t,s)=>s],(t,s)=>t[s])),Hh=A(l.createSelector([Nh,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),PP=A(l.createSelector([Bt,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.form_revision===s)))),Wh=ci.reducer,Oe=F(t=>t.uuid),Kh={instances:{}},di=l.createSlice({name:"formRevisions",initialState:Kh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Kh)),reducers:{initializeFormRevisions:Oe.initialize,addFormRevision:Oe.addOne,addFormRevisions:Oe.addMany,setFormRevision:Oe.setOne,setFormRevisions:Oe.setMany,updateFormRevision:Oe.updateOne,updateFormRevisions:Oe.updateMany,deleteFormRevision:Oe.deleteOne,deleteFormRevisions:Oe.deleteMany}}),{initializeFormRevisions:Yh,addFormRevision:Zh,addFormRevisions:ri,setFormRevision:Jh,setFormRevisions:Xh,updateFormRevision:Qh,updateFormRevisions:xh,deleteFormRevision:em,deleteFormRevisions:ui}=di.actions,tm=t=>t.formRevisionReducer.instances,Vt=l.createSelector([tm],t=>Object.values(t)),sm=t=>s=>s.formRevisionReducer.instances[t],im=A(l.createSelector([Vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),FP=A(l.createSelector([Vt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),nm=A(l.createSelector([Vt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),am=di.reducer,Pe=F(t=>t.uuid),cm={instances:{}},li=l.createSlice({name:"forms",initialState:cm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,cm)),reducers:{initializeForms:Pe.initialize,addForm:Pe.addOne,addForms:Pe.addMany,setForm:Pe.setOne,setForms:Pe.setMany,updateForm:Pe.updateOne,updateForms:Pe.updateMany,deleteForm:Pe.deleteOne,deleteForms:Pe.deleteMany}}),{initializeForms:dm,addForm:rm,addForms:um,setForm:lm,setForms:om,updateForm:hm,updateForms:mm,deleteForm:ym,deleteForms:pm}=li.actions,Am=li.reducer,fm=t=>t.formReducer.instances,oi=l.createSelector([fm],t=>Object.values(t)),Sm=t=>s=>s.formReducer.instances[t],Tm=A(l.createSelector([oi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),_P=A(l.createSelector([oi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Fe=F(t=>t.uuid),Im={instances:{}},hi=l.createSlice({name:"formSubmissionAttachments",initialState:Im,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Im)),reducers:{initializeFormSubmissionAttachments:Fe.initialize,addFormSubmissionAttachment:Fe.addOne,addFormSubmissionAttachments:Fe.addMany,setFormSubmissionAttachment:Fe.setOne,setFormSubmissionAttachments:Fe.setMany,updateFormSubmissionAttachment:Fe.updateOne,updateFormSubmissionAttachments:Fe.updateMany,deleteFormSubmissionAttachment:Fe.deleteOne,deleteFormSubmissionAttachments:Fe.deleteMany}}),{initializeFormSubmissionAttachments:Om,addFormSubmissionAttachment:Pm,addFormSubmissionAttachments:mi,setFormSubmissionAttachment:Fm,setFormSubmissionAttachments:_m,updateFormSubmissionAttachment:bm,updateFormSubmissionAttachments:gm,deleteFormSubmissionAttachment:Mm,deleteFormSubmissionAttachments:yi}=hi.actions,pi=t=>t.formSubmissionAttachmentReducer.instances,Ai=l.createSelector([pi],t=>Object.values(t)),Rm=A(l.createSelector([pi,(t,s)=>s],(t,s)=>t[s])),fi=A(l.createSelector([Ai,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.uuid)))})),wm=fi,Em=A(l.createSelector([Ai,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),Bm=hi.reducer,_e=F(t=>t.uuid),Vm={instances:{}},Si=l.createSlice({name:"formSubmissions",initialState:Vm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Vm)),reducers:{initializeFormSubmissions:_e.initialize,setFormSubmission:_e.setOne,setFormSubmissions:_e.setMany,addFormSubmission:_e.addOne,addFormSubmissions:_e.addMany,updateFormSubmission:_e.updateOne,updateFormSubmissions:_e.updateMany,deleteFormSubmission:_e.deleteOne,deleteFormSubmissions:_e.deleteMany}}),{initializeFormSubmissions:vm,setFormSubmission:zm,setFormSubmissions:jm,addFormSubmission:qm,addFormSubmissions:Ti,updateFormSubmission:Dm,updateFormSubmissions:$m,deleteFormSubmission:Cm,deleteFormSubmissions:Ii}=Si.actions,Um=t=>t.formSubmissionReducer.instances,Oi=l.createSelector([Um],t=>Object.values(t)),Lm=t=>s=>s.formSubmissionReducer.instances[t],km=A(l.createSelector([Oi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Nm=A(l.createSelector([Oi,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s))),Gm=Si.reducer,be=F(t=>t.uuid),Hm={instances:{}},Pi=l.createSlice({name:"geoImages",initialState:Hm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Hm)),reducers:{initializeGeoImages:be.initialize,setGeoImage:be.setOne,setGeoImages:be.setMany,addGeoImage:be.addOne,addGeoImages:be.addMany,updateGeoImage:be.updateOne,updateGeoImages:be.updateMany,deleteGeoImage:be.deleteOne,deleteGeoImages:be.deleteMany}}),{initializeGeoImages:Wm,setGeoImage:Km,setGeoImages:Ym,addGeoImage:Zm,addGeoImages:Jm,updateGeoImage:Xm,updateGeoImages:Qm,deleteGeoImage:xm,deleteGeoImages:ey}=Pi.actions,ty=t=>t.geoImageReducer.instances,Fi=l.createSelector([ty],t=>Object.values(t)),sy=t=>s=>s.geoImageReducer.instances[t],iy=A(l.createSelector([Fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),bP=A(l.createSelector([Fi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),ny=Pi.reducer,ge=F(t=>t.uuid),ay={instances:{}},_i=l.createSlice({name:"issueAssociations",initialState:ay,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,ay)),reducers:{initializeIssueAssociations:ge.initialize,addIssueAssociation:ge.addOne,addIssueAssociations:ge.addMany,setIssueAssociation:ge.setOne,setIssueAssociations:ge.setMany,updateIssueAssociation:ge.updateOne,updateIssueAssociations:ge.updateMany,deleteIssueAssociation:ge.deleteOne,deleteIssueAssociations:ge.deleteMany}}),{initializeIssueAssociations:cy,setIssueAssociations:dy,setIssueAssociation:ry,updateIssueAssociation:uy,updateIssueAssociations:ly,addIssueAssociation:oy,addIssueAssociations:Qe,deleteIssueAssociation:hy,deleteIssueAssociations:xe}=_i.actions,my=t=>t.issueAssociationReducer.instances,et=l.createSelector([my],t=>Object.values(t)),yy=t=>s=>s.issueAssociationReducer.instances[t],py=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ay=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({associated_issue:e})=>e===s)))),fy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({associated_issue:n})=>e.has(n)))})),Sy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({issue:n})=>n&&e.has(n)))})),Ty=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>e===s)))),Iy=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>e===s)))),Oy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({asset:n})=>n&&e.has(n)))})),Py=_i.reducer,Me=F(t=>t.uuid),Fy={instances:{}},bi=l.createSlice({name:"issueAttachments",initialState:Fy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Fy)),reducers:{initializeIssueAttachments:Me.initialize,addIssueAttachment:Me.addOne,addIssueAttachments:Me.addMany,setIssueAttachment:Me.setOne,setIssueAttachments:Me.setMany,updateIssueAttachment:Me.updateOne,updateIssueAttachments:Me.updateMany,deleteIssueAttachment:Me.deleteOne,deleteIssueAttachments:Me.deleteMany}}),{initializeIssueAttachments:_y,addIssueAttachment:by,addIssueAttachments:gi,setIssueAttachment:gy,setIssueAttachments:My,updateIssueAttachment:Ry,updateIssueAttachments:wy,deleteIssueAttachment:Ey,deleteIssueAttachments:Mi}=bi.actions,By=t=>t.issueAttachmentReducer.instances,Ri=l.createSelector([By],t=>Object.values(t)),Vy=A(l.createSelector([Ri,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>s===e)))),vy=t=>s=>s.issueAttachmentReducer.instances[t],zy=A(l.createSelector([Ri,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jy=bi.reducer,Re=F(t=>t.uuid),qy={instances:{}},wi=l.createSlice({name:"issueCommentAttachments",initialState:qy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,qy)),reducers:{initializeIssueCommentAttachments:Re.initialize,addIssueCommentAttachment:Re.addOne,addIssueCommentAttachments:Re.addMany,setIssueCommentAttachment:Re.setOne,setIssueCommentAttachments:Re.setMany,updateIssueCommentAttachment:Re.updateOne,updateIssueCommentAttachments:Re.updateMany,deleteIssueCommentAttachment:Re.deleteOne,deleteIssueCommentAttachments:Re.deleteMany}}),{initializeIssueCommentAttachments:Dy,addIssueCommentAttachment:$y,addIssueCommentAttachments:Cy,setIssueCommentAttachment:Uy,setIssueCommentAttachments:Ly,updateIssueCommentAttachment:ky,updateIssueCommentAttachments:Ny,deleteIssueCommentAttachment:Gy,deleteIssueCommentAttachments:Hy}=wi.actions,Wy=t=>t.issueCommentAttachmentReducer.instances,Ei=l.createSelector([Wy],t=>Object.values(t)),Ky=t=>s=>s.issueCommentAttachmentReducer.instances[t],Yy=A(l.createSelector([Ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),gP=A(l.createSelector([Ei,(t,s)=>s],(t,s)=>f(t.filter(({issue_comment:e})=>s===e)))),Zy=wi.reducer,we=F(t=>t.uuid),Jy={instances:{}},Bi=l.createSlice({name:"issueComments",initialState:Jy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Jy)),reducers:{initializeIssueComments:we.initialize,addIssueComment:we.addOne,addIssueComments:we.addMany,setIssueComment:we.setOne,setIssueComments:we.setMany,updateIssueComment:we.updateOne,updateIssueComments:we.updateMany,deleteIssueComment:we.deleteOne,deleteIssueComments:we.deleteMany}}),{initializeIssueComments:Xy,addIssueComment:Qy,addIssueComments:xy,setIssueComment:ep,setIssueComments:tp,updateIssueComment:sp,updateIssueComments:ip,deleteIssueComment:np,deleteIssueComments:ap}=Bi.actions,Vi=t=>t.issueCommentReducer.instances,cp=t=>s=>s.issueCommentReducer.instances[t],dp=A(l.createSelector([Vi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),MP=A(l.createSelector([Vi,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.issue===s)))),rp=Bi.reducer,Ee=F(t=>t.uuid),up={instances:{}},vi=l.createSlice({name:"issues",initialState:up,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,up)),reducers:{initializeIssues:Ee.initialize,addIssue:Ee.addOne,addIssues:Ee.addMany,setIssue:Ee.setOne,setIssues:Ee.setMany,updateIssue:Ee.updateOne,updateIssues:Ee.updateMany,deleteIssue:Ee.deleteOne,deleteIssues:Ee.deleteMany}}),{initializeIssues:lp,addIssue:op,addIssues:zi,setIssue:hp,setIssues:mp,updateIssue:yp,updateIssues:pp,deleteIssue:Ap,deleteIssues:ji}=vi.actions,fp=t=>t.issueReducer.instances,vt=l.createSelector([fp],t=>Object.values(t)),Sp=t=>s=>s.issueReducer.instances[t],Tp=A(l.createSelector([vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),RP=A(l.createSelector([vt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),Ip=A(l.createSelector([vt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),Op=vi.reducer,Be=F(t=>t.uuid),Pp={instances:{}},qi=l.createSlice({name:"issueTypeAttachments",initialState:Pp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Pp)),reducers:{initializeIssueTypeAttachments:Be.initialize,addIssueTypeAttachment:Be.addOne,addIssueTypeAttachments:Be.addMany,setIssueTypeAttachment:Be.setOne,setIssueTypeAttachments:Be.setMany,updateIssueTypeAttachment:Be.updateOne,updateIssueTypeAttachments:Be.updateMany,deleteIssueTypeAttachment:Be.deleteOne,deleteIssueTypeAttachments:Be.deleteMany}}),{initializeIssueTypeAttachments:Fp,addIssueTypeAttachment:_p,addIssueTypeAttachments:bp,setIssueTypeAttachment:gp,setIssueTypeAttachments:Mp,updateIssueTypeAttachment:Rp,updateIssueTypeAttachments:wp,deleteIssueTypeAttachment:Ep,deleteIssueTypeAttachments:Bp}=qi.actions,Vp=t=>t.issueTypeAttachmentReducer.instances,Di=l.createSelector([Vp],t=>Object.values(t)),vp=t=>s=>s.issueTypeAttachmentReducer.instances[t],zp=A(l.createSelector([Di,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),wP=A(l.createSelector([Di,(t,s)=>s],(t,s)=>f(t.filter(({issue_type:e})=>s===e)))),jp=qi.reducer,Ve=F(t=>t.uuid),qp={instances:{}},$i=l.createSlice({name:"issueTypeFieldsAttachments",initialState:qp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,qp)),reducers:{initializeIssueTypeFieldsAttachments:Ve.initialize,addIssueTypeFieldsAttachment:Ve.addOne,addIssueTypeFieldsAttachments:Ve.addMany,setIssueTypeFieldsAttachment:Ve.setOne,setIssueTypeFieldsAttachments:Ve.setMany,updateIssueTypeFieldsAttachment:Ve.updateOne,updateIssueTypeFieldsAttachments:Ve.updateMany,deleteIssueTypeFieldsAttachment:Ve.deleteOne,deleteIssueTypeFieldsAttachments:Ve.deleteMany}}),{initializeIssueTypeFieldsAttachments:Dp,addIssueTypeFieldsAttachment:$p,addIssueTypeFieldsAttachments:Cp,setIssueTypeFieldsAttachment:Up,setIssueTypeFieldsAttachments:Lp,updateIssueTypeFieldsAttachment:kp,updateIssueTypeFieldsAttachments:Np,deleteIssueTypeFieldsAttachment:Gp,deleteIssueTypeFieldsAttachments:Hp}=$i.actions,Wp=t=>t.issueTypeFieldsAttachmentReducer.instances,Ci=l.createSelector([Wp],t=>Object.values(t)),EP=A(l.createSelector([Ci,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Kp=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],Yp=A(l.createSelector([Ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Zp=$i.reducer,ve=F(t=>t.uuid),Jp={instances:{}},Ui=l.createSlice({name:"issueTypeFieldValues",initialState:Jp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Jp)),reducers:{initializeIssueTypeFieldValues:ve.initialize,addIssueTypeFieldValues:ve.addOne,addIssueTypeFieldValuesMany:ve.addMany,setIssueTypeFieldValues:ve.setOne,setIssueTypeFieldValuesMany:ve.setMany,updateIssueTypeFieldValues:ve.updateOne,updateIssueTypeFieldValuesMany:ve.updateMany,deleteIssueTypeFieldValues:ve.deleteOne,deleteIssueTypeFieldValuesMany:ve.deleteMany}}),{initializeIssueTypeFieldValues:Xp,addIssueTypeFieldValues:Qp,addIssueTypeFieldValuesMany:xp,setIssueTypeFieldValues:eA,setIssueTypeFieldValuesMany:tA,updateIssueTypeFieldValues:sA,updateIssueTypeFieldValuesMany:iA,deleteIssueTypeFieldValues:nA,deleteIssueTypeFieldValuesMany:aA}=Ui.actions,cA=t=>t.issueTypeFieldValuesReducer.instances,zt=l.createSelector([cA],t=>Object.values(t)),BP=A(l.createSelector([zt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),dA=t=>s=>s.issueTypeFieldValuesReducer.instances[t],rA=A(l.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),uA=Ui.reducer,ze=F(t=>t.uuid),lA={instances:{}},Li=l.createSlice({name:"issueTypeFields",initialState:lA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,lA)),reducers:{initializeIssueTypeFields:ze.initialize,addIssueTypeFields:ze.addOne,addIssueTypeFieldsMany:ze.addMany,setIssueTypeFields:ze.setOne,setIssueTypeFieldsMany:ze.setMany,updateIssueTypeFields:ze.updateOne,updateIssueTypeFieldsMany:ze.updateMany,deleteIssueTypeFields:ze.deleteOne,deleteIssueTypeFieldsMany:ze.deleteMany}}),{initializeIssueTypeFields:oA,addIssueTypeFields:hA,addIssueTypeFieldsMany:mA,setIssueTypeFields:yA,setIssueTypeFieldsMany:pA,updateIssueTypeFields:AA,updateIssueTypeFieldsMany:fA,deleteIssueTypeFields:SA,deleteIssueTypeFieldsMany:TA}=Li.actions,IA=t=>t.issueTypeFieldsReducer.instances,ht=l.createSelector([IA],t=>Object.values(t)),VP=A(l.createSelector([ht,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),vP=A(l.createSelector([ht,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),zP=A(l.createSelector([ht,zt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.issue_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),OA=t=>s=>s.issueTypeFieldsReducer.instances[t],PA=A(l.createSelector([ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),FA=Li.reducer,je=F(t=>t.uuid),_A={instances:{}},ki=l.createSlice({name:"issueTypeFieldValuesAttachments",initialState:_A,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,_A)),reducers:{initializeIssueTypeFieldValuesAttachments:je.initialize,addIssueTypeFieldValuesAttachment:je.addOne,addIssueTypeFieldValuesAttachments:je.addMany,setIssueTypeFieldValuesAttachment:je.setOne,setIssueTypeFieldValuesAttachments:je.setMany,updateIssueTypeFieldValuesAttachment:je.updateOne,updateIssueTypeFieldValuesAttachments:je.updateMany,deleteIssueTypeFieldValuesAttachment:je.deleteOne,deleteIssueTypeFieldValuesAttachments:je.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:bA,addIssueTypeFieldValuesAttachment:gA,addIssueTypeFieldValuesAttachments:Ni,setIssueTypeFieldValuesAttachment:MA,setIssueTypeFieldValuesAttachments:RA,updateIssueTypeFieldValuesAttachment:wA,updateIssueTypeFieldValuesAttachments:EA,deleteIssueTypeFieldValuesAttachment:BA,deleteIssueTypeFieldValuesAttachments:Gi}=ki.actions,VA=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Hi=l.createSelector([VA],t=>Object.values(t)),vA=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],zA=A(l.createSelector([Hi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jA=A(l.createSelector([Hi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),qA=ki.reducer,qe=F(t=>t.uuid),DA={instances:{}},Wi=l.createSlice({name:"issueTypeIdentifiers",initialState:DA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,DA)),reducers:{initializeIssueTypeIdentifiers:qe.initialize,addIssueTypeIdentifier:qe.addOne,addIssueTypeIdentifiers:qe.addMany,setIssueTypeIdentifier:qe.setOne,setIssueTypeIdentifiers:qe.setMany,updateIssueTypeIdentifier:qe.updateOne,updateIssueTypeIdentifiers:qe.updateMany,deleteIssueTypeIdentifier:qe.deleteOne,deleteIssueTypeIdentifiers:qe.deleteMany}}),{initializeIssueTypeIdentifiers:$A,addIssueTypeIdentifier:CA,addIssueTypeIdentifiers:UA,setIssueTypeIdentifier:LA,setIssueTypeIdentifiers:kA,updateIssueTypeIdentifier:NA,updateIssueTypeIdentifiers:GA,deleteIssueTypeIdentifier:HA,deleteIssueTypeIdentifiers:WA}=Wi.actions,KA=t=>t.issueTypeIdentifierReducer.instances,Ki=l.createSelector([KA],t=>Object.values(t)),YA=t=>s=>s.issueTypeIdentifierReducer.instances[t],ZA=A(l.createSelector([Ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jP=A(l.createSelector([Ki,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),JA=Wi.reducer,De=F(t=>t.uuid),XA={instances:{}},Yi=l.createSlice({name:"issueTypeIdentifierValues",initialState:XA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,XA)),reducers:{initializeIssueTypeIdentifierValues:De.initialize,addIssueTypeIdentifierValue:De.addOne,addIssueTypeIdentifierValues:De.addMany,setIssueTypeIdentifierValue:De.setOne,setIssueTypeIdentifierValues:De.setMany,updateIssueTypeIdentifierValue:De.updateOne,updateIssueTypeIdentifierValues:De.updateMany,deleteIssueTypeIdentifierValue:De.deleteOne,deleteIssueTypeIdentifierValues:De.deleteMany}}),{initializeIssueTypeIdentifierValues:QA,addIssueTypeIdentifierValue:xA,addIssueTypeIdentifierValues:ef,setIssueTypeIdentifierValue:tf,setIssueTypeIdentifierValues:sf,updateIssueTypeIdentifierValue:nf,updateIssueTypeIdentifierValues:af,deleteIssueTypeIdentifierValue:cf,deleteIssueTypeIdentifierValues:df}=Yi.actions,rf=t=>t.issueTypeIdentifierValueReducer.instances,jt=l.createSelector([rf],t=>Object.values(t)),uf=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],lf=A(l.createSelector([jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),qP=A(l.createSelector([jt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),DP=A(l.createSelector([jt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type_identifier===s)))),of=Yi.reducer,$e=F(t=>t.uuid),hf={instances:{}},Zi=l.createSlice({name:"issueTypes",initialState:hf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,hf)),reducers:{initializeIssueTypes:$e.initialize,addIssueType:$e.addOne,addIssueTypes:$e.addMany,setIssueType:$e.setOne,setIssueTypes:$e.setMany,updateIssueType:$e.updateOne,updateIssueTypes:$e.updateMany,deleteIssueType:$e.deleteOne,deleteIssueTypes:$e.deleteMany}}),{initializeIssueTypes:mf,addIssueType:yf,addIssueTypes:pf,setIssueType:Af,setIssueTypes:ff,updateIssueType:Sf,updateIssueTypes:Tf,deleteIssueType:If,deleteIssueTypes:Of}=Zi.actions,Pf=t=>t.issueTypeReducer.instances,Ji=l.createSelector(Pf,t=>Object.values(t)),Ff=t=>s=>s.issueTypeReducer.instances[t],_f=A(l.createSelector([Ji,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),$P=A(l.createSelector([Ji,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),bf=Zi.reducer,Ce=F(t=>t.uuid),gf={instances:{}},Xi=l.createSlice({name:"issueTypeStatuses",initialState:gf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,gf)),reducers:{initializeIssueTypeStatuses:Ce.initialize,addIssueTypeStatus:Ce.addOne,addIssueTypeStatuses:Ce.addMany,setIssueTypeStatus:Ce.setOne,setIssueTypeStatuses:Ce.setMany,updateIssueTypeStatus:Ce.updateOne,updateIssueTypeStatuses:Ce.updateMany,deleteIssueTypeStatus:Ce.deleteOne,deleteIssueTypeStatuses:Ce.deleteMany}}),{initializeIssueTypeStatuses:Mf,addIssueTypeStatus:Rf,addIssueTypeStatuses:wf,setIssueTypeStatus:Ef,setIssueTypeStatuses:Bf,updateIssueTypeStatus:Vf,updateIssueTypeStatuses:vf,deleteIssueTypeStatus:zf,deleteIssueTypeStatuses:jf}=Xi.actions,qf=t=>t.issueTypeStatusReducer.instances,Qi=l.createSelector([qf],t=>f(Object.values(t).toSorted(Xn))),xi=t=>s=>s.issueTypeStatusReducer.instances[t],Df=A(l.createSelector([Qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),CP=A(l.createSelector([Qi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),$f=Xi.reducer,Ue=F(t=>t.uuid),Cf={instances:{}},en=l.createSlice({name:"issueUpdates",initialState:Cf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,Cf)),reducers:{initializeIssueUpdates:Ue.initialize,addIssueUpdate:Ue.addOne,addIssueUpdates:Ue.addMany,setIssueUpdate:Ue.setOne,setIssueUpdates:Ue.setMany,updateIssueUpdate:Ue.updateOne,updateIssueUpdates:Ue.updateMany,deleteIssueUpdate:Ue.deleteOne,deleteIssueUpdates:Ue.deleteMany}}),{initializeIssueUpdates:Uf,addIssueUpdate:tn,addIssueUpdates:sn,setIssueUpdate:Lf,setIssueUpdates:kf,updateIssueUpdate:Nf,updateIssueUpdates:Gf,deleteIssueUpdate:nn,deleteIssueUpdates:an}=en.actions,cn=t=>t.issueUpdateReducer.instances,dn=l.createSelector([cn],t=>Object.values(t)),Hf=A(l.createSelector([cn,(t,s)=>s],(t,s)=>t[s])),Wf=A(l.createSelector([dn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Kf=A(l.createSelector([dn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),Yf=en.reducer,Le=F(t=>t.uuid),Zf={instances:{},currentUser:null},rn=l.createSlice({name:"users",initialState:Zf,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Zf)).addCase(_,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:Le.initialize,setUsers:Le.setMany,setUser:Le.setOne,addUsers:Le.addMany,addUser:Le.addOne,updateUsers:Le.updateMany,updateUser:Le.updateOne,deleteUser:Le.deleteOne,deleteUsers:Le.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload}}}),{initializeUsers:Jf,setUsers:Xf,setUser:Qf,addUsers:xf,addUser:un,updateUsers:eS,updateUser:tS,deleteUser:ln,deleteUsers:sS,setCurrentUser:UP}=rn.actions,iS=rn.reducer,nS=t=>t.userReducer.currentUser,on=t=>t.userReducer.instances,qt=l.createSelector([on],t=>Object.values(t)),Dt=t=>s=>s.userReducer.instances[t],aS=A(l.createSelector([qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ke=F(t=>t.uuid),cS={instances:{}},hn=l.createSlice({name:"organizationAccess",initialState:cS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,cS)),reducers:{initializeOrganizationAccesses:ke.initialize,addOrganizationAccess:ke.addOne,addOrganizationAccesses:ke.addMany,setOrganizationAccess:ke.setOne,setOrganizationAccesses:ke.setMany,updateOrganizationAccess:ke.updateOne,updateOrganizationAccesses:ke.updateMany,deleteOrganizationAccess:ke.deleteOne,deleteOrganizationAccesses:ke.deleteMany}}),{initializeOrganizationAccesses:dS,addOrganizationAccess:rS,addOrganizationAccesses:uS,setOrganizationAccess:lS,setOrganizationAccesses:oS,updateOrganizationAccess:hS,updateOrganizationAccesses:mS,deleteOrganizationAccess:yS,deleteOrganizationAccesses:pS}=hn.actions,AS=hn.reducer,$t=t=>t.organizationAccessReducer.instances,fS=t=>s=>s.organizationAccessReducer.instances[t],SS=A(l.createSelector([$t,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),LP=l.createSelector([nS,$t],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.uuid))??null),TS=l.createSelector([$t],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return ft(s)}),kP=A(l.createSelector([on,TS,(t,s)=>s],(t,s,e)=>f(Object.values(t).filter(n=>{const a=s[n.uuid];return!!a&&a.organization===e})))),Ne=F(t=>t.uuid),IS={instances:{}},mn=l.createSlice({name:"organizations",initialState:IS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,IS)),reducers:{initializeOrganizations:Ne.initialize,setOrganizations:Ne.setMany,setOrganization:Ne.setOne,addOrganizations:Ne.addMany,addOrganization:Ne.addOne,updateOrganizations:Ne.updateMany,updateOrganization:Ne.updateOne,deleteOrganization:Ne.deleteOne,deleteOrganizations:Ne.deleteMany}}),{initializeOrganizations:OS,setOrganizations:PS,setOrganization:FS,addOrganizations:_S,addOrganization:bS,updateOrganizations:gS,updateOrganization:MS,deleteOrganization:RS,deleteOrganizations:wS}=mn.actions,ES=t=>t.organizationReducer.instances,BS=l.createSelector([ES],t=>Object.values(t)),VS=t=>s=>s.organizationReducer.instances[t],vS=A(l.createSelector([BS,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),zS=mn.reducer,jS=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:Xe.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},qS={deletedRequests:[],latestRetryTime:0},yn=l.createSlice({name:"outbox",initialState:qS,extraReducers:t=>t.addCase(O,s=>Object.assign(s,qS)),reducers:{enqueueRequest:{reducer:(t,s)=>t,prepare:t=>{console.debug("Preparing to enqueue request",t.url);const{BASE_URL:s,serviceName:e,...n}=t;return jS(n,s,e)}},markForDeletion(t,s){t.deletedRequests.push(s.payload)},markAsDeleted(t,s){const e=t.deletedRequests.indexOf(s.payload);e!==-1&&t.deletedRequests.splice(e,1)},_setLatestRetryTime:(t,s)=>{t.latestRetryTime=s.payload}}}),NP=t=>t.outboxReducer.deletedRequests,GP=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:DS,markForDeletion:HP,markAsDeleted:$S,_setLatestRetryTime:CS}=yn.actions,US=yn.reducer,Ge=F(t=>t.uuid),LS={instances:{}},pn=l.createSlice({name:"projectAccess",initialState:LS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,LS)),reducers:{initializeProjectAccesses:Ge.initialize,addProjectAccess:Ge.addOne,addProjectAccesses:Ge.addMany,setProjectAccess:Ge.setOne,setProjectAccesses:Ge.setMany,updateProjectAccess:Ge.updateOne,updateProjectAccesses:Ge.updateMany,deleteProjectAccess:Ge.deleteOne,deleteProjectAccesses:Ge.deleteMany}}),{initializeProjectAccesses:kS,addProjectAccess:NS,addProjectAccesses:GS,setProjectAccess:HS,setProjectAccesses:WS,updateProjectAccess:KS,updateProjectAccesses:YS,deleteProjectAccess:ZS,deleteProjectAccesses:JS}=pn.actions,XS=pn.reducer,An=t=>t.projectAccessReducer.instances,mt=l.createSelector(An,t=>Object.values(t)),QS=t=>s=>s.projectAccessReducer.instances[t],xS=A(l.createSelector([mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),WP=A(l.createSelector([An,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.project===s)))),KP=A(l.createSelector([mt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.project===s))e[n.user]=n;return e})),YP=A(l.createSelector([qt,mt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.project===e).map(a=>a.user));return f(t.filter(a=>n.has(a.uuid)))})),He=F(t=>t.uuid),eT={instances:{}},fn=l.createSlice({name:"projectAttachments",initialState:eT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,eT)),reducers:{initializeProjectAttachments:He.initialize,addProjectAttachment:He.addOne,addProjectAttachments:He.addMany,setProjectAttachment:He.setOne,setProjectAttachments:He.setMany,updateProjectAttachment:He.updateOne,updateProjectAttachments:He.updateMany,deleteProjectAttachment:He.deleteOne,deleteProjectAttachments:He.deleteMany}}),{initializeProjectAttachments:tT,addProjectAttachment:sT,addProjectAttachments:iT,setProjectAttachment:nT,setProjectAttachments:aT,updateProjectAttachment:cT,updateProjectAttachments:dT,deleteProjectAttachment:rT,deleteProjectAttachments:uT}=fn.actions,lT=t=>t.projectAttachmentReducer.instances,Sn=l.createSelector([lT],t=>Object.values(t)),oT=t=>s=>s.projectAttachmentReducer.instances[t],hT=A(l.createSelector([Sn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ZP=A(l.createSelector([Sn,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>s===e)))),mT=fn.reducer,We=F(t=>t.uuid),yT={instances:{}},Tn=l.createSlice({name:"projectFiles",initialState:yT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,z,_),s=>Object.assign(s,yT)),reducers:{initializeProjectFiles:We.initialize,setProjectFile:We.setOne,setProjectFiles:We.setMany,addProjectFile:We.addOne,addProjectFiles:We.addMany,updateProjectFile:We.updateOne,updateProjectFiles:We.updateMany,deleteProjectFile:We.deleteOne,deleteProjectFiles:We.deleteMany}}),{initializeProjectFiles:pT,setProjectFile:AT,setProjectFiles:fT,addProjectFile:ST,addProjectFiles:TT,updateProjectFile:IT,updateProjectFiles:OT,deleteProjectFile:PT,deleteProjectFiles:FT}=Tn.actions,_T=t=>t.projectFileReducer.instances,bT=l.createSelector([_T],t=>f(Object.values(t).sort((s,e)=>s.z_index-e.z_index))),gT=t=>s=>s.projectFileReducer.instances[t],MT=A(l.createSelector([bT,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),RT=Tn.reducer,Ke=F(t=>t.uuid),wT={instances:{}},In=l.createSlice({name:"projects",initialState:wT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,wT)),reducers:{initializeProjects:Ke.initialize,setProjects:Ke.setMany,setProject:Ke.setOne,addProjects:Ke.addMany,addProject:Ke.addOne,updateProjects:Ke.updateMany,updateProject:Ke.updateOne,deleteProject:Ke.deleteOne,deleteProjects:Ke.deleteMany}}),{initializeProjects:ET,setProjects:BT,setProject:VT,addProjects:vT,addProject:zT,updateProjects:jT,updateProject:qT,deleteProject:DT,deleteProjects:$T}=In.actions,CT=In.reducer,UT=t=>t.projectReducer.instances,Ct=l.createSelector([UT],t=>Object.values(t)),LT=t=>s=>s.projectReducer.instances[t],kT=A(l.createSelector([Ct,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),JP=A(l.createSelector([Ct,mt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.user===e).map(a=>a.project));return f(t.filter(a=>n.has(a.uuid)))})),XP=A(l.createSelector([Ct,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),QP={isRehydrated:!1},On=l.createSlice({name:"rehydrated",initialState:QP,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:xP}=On.actions,eF=t=>t.rehydratedReducer.isRehydrated,NT=On.reducer,Ye=F(t=>t.uuid),GT={instances:{}},Pn=l.createSlice({name:"teamMemberships",initialState:GT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,GT)),reducers:{initializeTeamMemberships:Ye.initialize,addTeamMembership:Ye.addOne,addTeamMemberships:Ye.addMany,setTeamMembership:Ye.setOne,setTeamMemberships:Ye.setMany,updateTeamMembership:Ye.updateOne,updateTeamMemberships:Ye.updateMany,deleteTeamMembership:Ye.deleteOne,deleteTeamMemberships:Ye.deleteMany}}),{initializeTeamMemberships:HT,addTeamMembership:WT,addTeamMemberships:KT,setTeamMembership:YT,setTeamMemberships:ZT,updateTeamMembership:JT,updateTeamMemberships:XT,deleteTeamMembership:QT,deleteTeamMemberships:xT}=Pn.actions,eI=Pn.reducer,tI=t=>t.teamMembershipReducer.instances,Ut=l.createSelector([tI],t=>Object.values(t)),sI=t=>s=>s.teamMembershipReducer.instances[t],iI=A(l.createSelector([Ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),tF=A(l.createSelector([Ut,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.team===s))e[n.user]=n;return e})),sF=A(l.createSelector([qt,Ut,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.team===e).map(a=>a.user));return f(t.filter(a=>n.has(a.uuid)))})),Ze=F(t=>t.uuid),nI={instances:{}},Fn=l.createSlice({name:"teams",initialState:nI,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,nI)),reducers:{initializeTeams:Ze.initialize,addTeam:Ze.addOne,addTeams:Ze.addMany,setTeam:Ze.setOne,setTeams:Ze.setMany,updateTeam:Ze.updateOne,updateTeams:Ze.updateMany,deleteTeam:Ze.deleteOne,deleteTeams:Ze.deleteMany}}),{initializeTeams:aI,addTeam:cI,addTeams:dI,setTeam:rI,setTeams:uI,updateTeam:lI,updateTeams:oI,deleteTeam:hI,deleteTeams:mI}=Fn.actions,yI=t=>t.teamReducer.instances,_n=l.createSelector([yI],t=>Object.values(t)),pI=t=>s=>s.teamReducer.instances[t],AI=A(l.createSelector([_n,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),iF=A(l.createSelector([_n,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),fI=Fn.reducer,nF={version:0},SI=l.createSlice({name:"versioning",initialState:nF,reducers:{}}),TI=SI.reducer,bn={outboxReducer:US,fileReducer:nh,authReducer:Mo},aF=l.combineReducers(bn),II={...bn,[ut]:TI,assetReducer:vr,assetAttachmentReducer:Sa,assetStageCompletionReducer:Gr,assetStageReducer:au,assetTypeReducer:lo,assetTypeAttachmentReducer:Iu,issueReducer:Op,issueAttachmentReducer:jy,issueTypeReducer:bf,issueTypeAttachmentReducer:jp,organizationReducer:zS,projectReducer:CT,projectAttachmentReducer:mT,projectAccessReducer:XS,organizationAccessReducer:AS,projectFileReducer:RT,rehydratedReducer:NT,formReducer:Am,formRevisionReducer:am,formRevisionAttachmentReducer:Wh,formSubmissionAttachmentReducer:Bm,formSubmissionReducer:Gm,formIdentifierReducer:Sh,formIdentifierValueReducer:Vh,userReducer:iS,documentsReducer:Qo,documentAttachmentReducer:Lo,teamReducer:fI,agentsReducer:aa,issueCommentReducer:rp,issueCommentAttachmentReducer:Zy,issueUpdateReducer:Yf,geoImageReducer:ny,issueAssociationReducer:Py,issueTypeFieldsReducer:FA,issueTypeFieldValuesReducer:uA,issueTypeFieldsAttachmentReducer:Zp,issueTypeFieldValuesAttachmentReducer:qA,issueTypeIdentifierReducer:JA,issueTypeIdentifierValueReducer:of,issueTypeStatusReducer:$f,assetTypeFieldsReducer:Yu,assetTypeFieldValuesReducer:Ol,assetTypeFieldsAttachmentReducer:zu,assetTypeFieldValuesAttachmentReducer:dl,assetTypeIdentifierReducer:jl,assetTypeIdentifierValueReducer:Zl,assetTypeStatusReducer:_o,assetProcedureTypeReducer:id,assetProcedureReducer:kc,assetProcedureTypeFieldsReducer:ic,assetProcedureTypeFieldValuesReducer:Ec,assetProcedureTypeFieldsAttachmentReducer:Na,assetProcedureTypeFieldValuesAttachmentReducer:pc,assetProcedureTypeAttachmentReducer:wa,assetProcedureStepFieldsAttachmentReducer:Id,assetProcedureStepFieldsReducer:vd,assetProcedureStepFieldValuesAttachmentReducer:Wd,assetProcedureStepFieldValuesReducer:cr,assetProcedureStepReducer:fr,teamMembershipReducer:eI},cF=l.combineReducers(II),OI=1e4,PI=200,gn=[400,409,403,404,405,500],Je=1e4,FI={};class _I{constructor(s){m(this,"client");m(this,"pageSize",OI);FI[this.constructor.name]=this,this.client=s}async performRequest(s,e){return this.client.performRequest(this.host,s,this,e)}async enqueueRequest(s){return this.client.enqueueRequest(s,this.host,this.constructor.name)}async performPagination(s,e){return this.client.performPagination(this.host,s,this.pageSize,this,e)}dispatch(s){this.client.store.dispatch(s)}select(s){return s(this.client.store.getState())}}const bI=()=>RI.length-1,gI=t=>(t[ut]={version:bI()},t),MI=()=>gI({}),dF=t=>(t.outboxReducer&&(t.outboxReducer.deletedRequests=[]),t),rF=t=>s=>{var e;return s===void 0&&(s={}),((e=s[ut])==null?void 0:e.version)===bI()?s:t(s)},RI=[gI,MI,MI,dF],uF=Object.fromEntries(RI.map((t,s)=>[s,rF(t)])),lF=t=>{if(t)throw t;const s=dt();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},wI=(t,s,e)=>{const n=it();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},EI=(t,s,e)=>{const n=it();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const c=s.meta.offlineAction.payload.uuid;return n.remove(c),n.getQueue()};async function oF(t,s){if(!s.payload)throw new Error("Received empty payload");return GI(s)}const hF={...vn,effect:oF,discard:VI,returnPromises:!0,persistCallback:lF,retry:AF,persistOptions:{storage:XI},queue:{...vn.queue,enqueue:wI,dequeue:EI,peek:(...t)=>pF(...t)}},mF=QI(uF,ut),yF=l.compose(JI.offline(hF),mF);async function BI(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=FI[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return Rn(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,a,e)}function VI(t,s,e=0){var y;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
|
|
1
|
+
(function(i,N){typeof exports=="object"&&typeof module<"u"?N(exports,require("@redux-offline/redux-offline/lib/types"),require("@reduxjs/toolkit"),require("superagent"),require("uuid"),require("react"),require("file-saver"),require("fast-tree-builder"),require("ts-tree-lib"),require("@redux-offline/redux-offline"),require("@redux-offline/redux-offline/lib/defaults"),require("localforage"),require("redux-persist-migrate"),require("@overmap-ai/forms"),require("idb"),require("jwt-decode"),require("dependency-graph"),require("@tiptap/core")):typeof define=="function"&&define.amd?define(["exports","@redux-offline/redux-offline/lib/types","@reduxjs/toolkit","superagent","uuid","react","file-saver","fast-tree-builder","ts-tree-lib","@redux-offline/redux-offline","@redux-offline/redux-offline/lib/defaults","localforage","redux-persist-migrate","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],N):(i=typeof globalThis<"u"?globalThis:i||self,N(i["overmap-core"]={},null,i.toolkit,i.request,i.uuid,i.react,i.fileSaver,i.buildTree,i.tsTreeLib,i.reduxOffline,i.offlineConfig,i.localforage,i.createMigration,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,N,l,at,Xe,JI,XI,vn,ft,QI,zn,xI,eO,$_,tO,sO,iO){"use strict";var q_=Object.defineProperty;var D_=(i,N,l)=>N in i?q_(i,N,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[N]=l;var m=(i,N,l)=>D_(i,typeof N!="symbol"?N+"":N,l);var YI;const jn=Object.freeze([]),qn=Object.freeze({});var Dn=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Dn||{}),h=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(h||{}),$n=(t=>(t[t.PLANNED=0]="PLANNED",t[t.ACTIVE=1]="ACTIVE",t[t.MAINTENANCE=2]="MAINTENANCE",t[t.INACTIVE=3]="INACTIVE",t[t.RETIRED=4]="RETIRED",t[t.DISPOSED=5]="DISPOSED",t))($n||{}),Cn=(t=>(t.Issue="issue",t.Asset="asset",t.AssetType="asset_type",t.Project="project",t.Document="document",t))(Cn||{}),Nt=(t=>(t[t.LOWEST=0]="LOWEST",t[t.LOW=2]="LOW",t[t.MEDIUM=4]="MEDIUM",t[t.HIGH=6]="HIGH",t[t.HIGHEST=8]="HIGHEST",t))(Nt||{}),C=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))(C||{}),Un=(t=>(t[t.BACKLOG=0]="BACKLOG",t[t.PLANNED=1]="PLANNED",t[t.IN_PROGRESS=2]="IN_PROGRESS",t[t.COMPLETED=3]="COMPLETED",t[t.CANCELLED=4]="CANCELLED",t))(Un||{});const nO=Nt.MEDIUM,Ln=6e4;function F(t){return{addOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},addMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},setOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},setMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},updateOne:(o,p)=>{const T=t(p.payload);o.instances[T]=p.payload},updateMany:(o,p)=>{for(const T of p.payload){const B=t(T);o.instances[B]=T}},deleteOne:(o,p)=>{delete o.instances[p.payload]},deleteMany:(o,p)=>{for(const T of p.payload)delete o.instances[T]},initialize:(o,p)=>{o.instances={};const T=new Set;for(const B of p.payload){const g=t(B);T.add(g),o.instances[g]=B}T.size!==p.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function aO(t){return{initializeSelection:(r,y)=>{r[t]=Array.from(new Set(y.payload))},selectOne:(r,y)=>{console.debug(r,r[t]),!new Set(r[t]).has(y.payload)&&r[t].push(y.payload)},selectMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)||o.add(p);r[t]=Array.from(o)},unselectOne:(r,y)=>{const o=new Set(r[t]);o.has(y.payload)&&(o.delete(y.payload),r[t]=Array.from(o))},unselectMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)&&o.delete(p);r[t]=Array.from(o)},toggleOne:(r,y)=>{const o=new Set(r[t]);o.has(y.payload)?o.delete(y.payload):o.add(y.payload),r[t]=Array.from(o)},toggleMany:(r,y)=>{const o=new Set(r[t]);for(const p of y.payload)o.has(p)?o.delete(p):o.add(p);r[t]=Array.from(o)}}}const lt="versioning",O=l.createAction("RESET"),j=l.createAction("RESET_PROJECT_STATE"),_=l.createAction("RESET_ORGANIZATION_STATE");function cO(t,s){return JI.useMemo(t,s)}YI=Symbol.toStringTag;class Gt{constructor(){m(this,YI,"Promise");m(this,"_promise");m(this,"_resolve");m(this,"_reject");m(this,"_state","pending");this._resolve=null,this._reject=null,this._promise=new Promise((s,e)=>{this._resolve=s,this._reject=e})}get state(){return this._state}then(s,e){return this._promise.then(s,e)}catch(s){return this._promise.catch(s)}resolve(s){if(!this._resolve)throw new Error("No resolve callback");this._resolve(s),this._state="fulfilled"}reject(s){if(!this._reject)throw s;this._reject(s),this._state="rejected"}finally(s){throw new Error("`finally` not implemented")}}let Ht=!1;["true","1"].includes("".toLowerCase())&&(Ht=!0);function dO(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),a=e.length;if(a!==n.length)return!1;for(let c=0;c<a;c++){const d=e[c];if(!Object.prototype.hasOwnProperty.call(s,d)||t[d]!==s[d])return!1}return!0}function Wt(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(Ht&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(Ht&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function rO(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==s[e])return!1;return!0}const f=t=>t.length===0?jn:t,St=t=>Object.keys(t).length===0?qn:t,kn=Wt(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===Kt.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),uO=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),lO=1e3*86400,Kt=new Date,oO=t=>new Date(t).toDateString()===Kt.toDateString(),hO=Wt((t,s,e)=>{const n=Math.round((new Date(t).getTime()-Kt.getTime())/lO);return n<s||n>e?kn(t):uO.format(n,"days")});function mO(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function Tt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(c=>{const d=mO(c);s(d)})},n.readAsArrayBuffer(t)})}const Nn=async t=>{const s=await t.arrayBuffer();return new Blob([s],{type:t.type})},yO=(t,s)=>`${t}${s?`.${s}`:""}`;function pO(t,s){return new File([t],s,{type:t.type})}function Gn(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Hn=async t=>(await fetch(t)).blob(),Wn=async(t,s)=>{const e=await Hn(t);return new File([e],s,{type:e.type})};function AO(t){const s=new Blob([t]);XI.saveAs(s,t.name)}function Kn(t){return typeof t=="string"&&t.startsWith("blob:")}function fO(t){return t.type.startsWith("image/")}const Yn={};function SO(t,s,e,...n){const a=Yn[t];let c=!1;a?a[s]||(a[s]=!0,c=!0):(Yn[t]={[s]:!0},c=!0),c&&console[e](...n)}const Zn=["created_at","updated_at","index","revision"];function P(t){return{...t,uuid:Xe.v4()}}function TO(t){const s={};for(const e of t)s[e.uuid]=e;return s}function V(t){return t.map(({uuid:s})=>s)}function It(t,s){return t.localeCompare(s)}function Yt(t,s){return It(t.uuid,s.uuid)}function IO(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const c=t.split(".");c.length>1&&(s=c[c.length-1])}s&&!s.startsWith(".")&&(s="."+s);const a=s?s.length:0;return n.length+a>e&&(n=n.slice(0,e-a)+(s||"")),n}function OO(t){return t.toLowerCase().replace(" ","-")}function PO(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function FO(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const _O=/^.+@.+\..+$/;function R(t){const s={...t};for(const e of[...Zn,"created_by"])e in s&&delete s[e];return s}const Jn=t=>{const s=t.toSorted((e,n)=>e.order-n.order);return vn(s,{id:e=>e.uuid,parentId:e=>e.parent,includeEmptyChildrenArray:!0,valueKey:!1})},bO=t=>{const{roots:s}=Jn(t);return s.map(e=>new ft.Tree(e))},Xn=(t,s)=>{const{nodes:e}=Jn(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in asset procedure step tree.`);return new ft.Tree(n)},Qn=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,xn=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,ea=t=>vn(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),gO=t=>{const{roots:s}=ea(t);return s.map(e=>new ft.Tree(e))},ta=(t,s)=>{const{nodes:e}=ea(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new ft.Tree(n)};class MO{constructor(s){m(this,"operations",[]);m(this,"getData");this.getData=s}performOperations(s){let e=s;for(const n of this.operations)e=n(e);return e}filter(s,e){return this.operations.push(n=>n.filter(a=>a[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(a=>a[s]!==e)),this}orderBy(s){return this.operations.push(e=>[...e].sort((n,a)=>n[s]<=a[s]?1:-1)),this}reverse(){return this.operations.push(s=>[...s].reverse()),this}all(){return this.operations.push(s=>s),this}get(s,e){return l.createSelector([this.getData],n=>this.performOperations(n).find(a=>a[s]===e))}count(){return l.createSelector([this.getData],s=>this.performOperations(s).length)}first(){return l.createSelector([this.getData],s=>this.performOperations(s)[0])}last(){return l.createSelector([this.getData],s=>{const e=this.performOperations(s);return e[e.length-1]})}exists(){return l.createSelector([this.getData],s=>this.performOperations(s).length>0)}toSelector(){return l.createSelector([this.getData],s=>f(this.performOperations(s)))}}const A=t=>(...s)=>e=>t(e,...s),G=F(t=>t.uuid),sa={instances:{}},Zt=l.createSlice({name:"agents",initialState:sa,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,sa)),reducers:{initializeConversations:G.initialize,addConversation:G.addOne,addConversations:G.addMany,setConversation:G.setOne,setConversations:G.setMany,updateConversation:G.updateOne,updateConversations:G.updateMany,deleteConversation:G.deleteOne,deleteConversations:G.deleteMany}}),{initializeConversations:ia,addConversation:na,addConversations:RO,setConversation:aa,setConversations:wO,updateConversation:ca,updateConversations:EO,deleteConversation:BO,deleteConversations:VO}=Zt.actions,Jt=t=>t.agentsReducer.instances,vO=l.createSelector([Jt],t=>Object.values(t)),zO=A(l.createSelector([Jt,(t,s)=>s],(t,s)=>t[s])),da=Zt.reducer,H=F(t=>t.uuid),ra={instances:{}},Xt=l.createSlice({name:"assetAttachments",initialState:ra,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,ra)),reducers:{initializeAssetAttachments:H.initialize,addAssetAttachment:H.addOne,addAssetAttachments:H.addMany,setAssetAttachment:H.setOne,setAssetAttachments:H.setMany,updateAssetAttachment:H.updateOne,updateAssetAttachments:H.updateMany,deleteAssetAttachment:H.deleteOne,deleteAssetAttachments:H.deleteMany}}),{initializeAssetAttachments:ua,addAssetAttachment:la,addAssetAttachments:Qt,setAssetAttachment:oa,setAssetAttachments:ha,updateAssetAttachment:ma,updateAssetAttachments:ya,deleteAssetAttachment:pa,deleteAssetAttachments:xt}=Xt.actions,Aa=t=>t.assetAttachmentReducer.instances,es=l.createSelector([Aa],t=>Object.values(t)),fa=t=>s=>s.assetAttachmentReducer.instances[t],Sa=A(l.createSelector([es,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ta=A(l.createSelector([es,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>s===e)))),Ia=Xt.reducer,W=F(({uuid:t})=>t),Oa={instances:{}},ts=l.createSlice({name:"assetProcedureTypeAttachments",initialState:Oa,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Oa)),reducers:{initializeAssetProcedureTypeAttachments:W.initialize,addAssetProcedureTypeAttachment:W.addOne,addAssetProcedureTypeAttachments:W.addMany,setAssetProcedureTypeAttachment:W.setOne,setAssetProcedureTypeAttachments:W.setMany,updateAssetProcedureTypeAttachment:W.updateOne,updateAssetProcedureTypeAttachments:W.updateMany,deleteAssetProcedureTypeAttachment:W.deleteOne,deleteAssetProcedureTypeAttachments:W.deleteMany}}),{initializeAssetProcedureTypeAttachments:Pa,addAssetProcedureTypeAttachment:Fa,addAssetProcedureTypeAttachments:_a,setAssetProcedureTypeAttachment:ba,setAssetProcedureTypeAttachments:ga,updateAssetProcedureTypeAttachment:Ma,updateAssetProcedureTypeAttachments:Ra,deleteAssetProcedureTypeAttachment:wa,deleteAssetProcedureTypeAttachments:Ea}=ts.actions,Ba=ts.reducer,Va=t=>t.assetProcedureTypeAttachmentReducer.instances,ss=l.createSelector([Va],t=>Object.values(t)),va=t=>s=>s.assetProcedureTypeAttachmentReducer.instances[t],za=A(l.createSelector([ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jO=A(l.createSelector([ss,(t,s)=>s],(t,s)=>f(t.filter(({asset_procedure_type:e})=>s===e)))),K=F(({uuid:t})=>t),ja={instances:{}},is=l.createSlice({name:"assetProcedureTypeFieldsAttachments",initialState:ja,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ja)),reducers:{initializeAssetProcedureTypeFieldsAttachments:K.initialize,addAssetProcedureTypeFieldsAttachment:K.addOne,addAssetProcedureTypeFieldsAttachments:K.addMany,setAssetProcedureTypeFieldsAttachment:K.setOne,setAssetProcedureTypeFieldsAttachments:K.setMany,updateAssetProcedureTypeFieldsAttachment:K.updateOne,updateAssetProcedureTypeFieldsAttachments:K.updateMany,deleteAssetProcedureTypeFieldsAttachment:K.deleteOne,deleteAssetProcedureTypeFieldsAttachments:K.deleteMany}}),{initializeAssetProcedureTypeFieldsAttachments:qa,addAssetProcedureTypeFieldsAttachment:Da,addAssetProcedureTypeFieldsAttachments:$a,setAssetProcedureTypeFieldsAttachment:Ca,setAssetProcedureTypeFieldsAttachments:Ua,updateAssetProcedureTypeFieldsAttachment:La,updateAssetProcedureTypeFieldsAttachments:ka,deleteAssetProcedureTypeFieldsAttachment:Na,deleteAssetProcedureTypeFieldsAttachments:Ga}=is.actions,Ha=is.reducer,Wa=t=>t.assetProcedureTypeFieldsAttachmentReducer.instances,ns=l.createSelector([Wa],t=>Object.values(t)),qO=A(l.createSelector([ns,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Ka=t=>s=>s.assetProcedureTypeFieldsAttachmentReducer.instances[t],Ya=A(l.createSelector([ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Y=F(({uuid:t})=>t),Za={instances:{}},as=l.createSlice({name:"assetProcedureTypeFields",initialState:Za,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Za)),reducers:{initializeAssetProcedureTypeFields:Y.initialize,addAssetProcedureTypeFields:Y.addOne,addAssetProcedureTypeFieldsMany:Y.addMany,setAssetProcedureTypeFields:Y.setOne,setAssetProcedureTypeFieldsMany:Y.setMany,updateAssetProcedureTypeFields:Y.updateOne,updateAssetProcedureTypeFieldsMany:Y.updateMany,deleteAssetProcedureTypeFields:Y.deleteOne,deleteAssetProcedureTypeFieldsMany:Y.deleteMany}}),{initializeAssetProcedureTypeFields:Ja,addAssetProcedureTypeFields:Xa,addAssetProcedureTypeFieldsMany:Qa,setAssetProcedureTypeFields:xa,setAssetProcedureTypeFieldsMany:ec,updateAssetProcedureTypeFields:tc,updateAssetProcedureTypeFieldsMany:sc,deleteAssetProcedureTypeFields:ic,deleteAssetProcedureTypeFieldsMany:nc}=as.actions,ac=as.reducer,cc=t=>t.assetProcedureTypeFieldsReducer.instances,Ot=l.createSelector([cc],t=>Object.values(t)),DO=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),$O=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),dc=t=>s=>s.assetProcedureTypeFieldsReducer.instances[t],rc=A(l.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Z=F(({uuid:t})=>t),uc={instances:{}},cs=l.createSlice({name:"assetProcedureTypeFieldValuesAttachments",initialState:uc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,uc)),reducers:{initializeAssetProcedureTypeFieldValuesAttachments:Z.initialize,addAssetProcedureTypeFieldValuesAttachment:Z.addOne,addAssetProcedureTypeFieldValuesAttachments:Z.addMany,setAssetProcedureTypeFieldValuesAttachment:Z.setOne,setAssetProcedureTypeFieldValuesAttachments:Z.setMany,updateAssetProcedureTypeFieldValuesAttachment:Z.updateOne,updateAssetProcedureTypeFieldValuesAttachments:Z.updateMany,deleteAssetProcedureTypeFieldValuesAttachment:Z.deleteOne,deleteAssetProcedureTypeFieldValuesAttachments:Z.deleteMany}}),{initializeAssetProcedureTypeFieldValuesAttachments:lc,addAssetProcedureTypeFieldValuesAttachment:oc,addAssetProcedureTypeFieldValuesAttachments:ds,setAssetProcedureTypeFieldValuesAttachment:hc,setAssetProcedureTypeFieldValuesAttachments:mc,updateAssetProcedureTypeFieldValuesAttachment:yc,updateAssetProcedureTypeFieldValuesAttachments:pc,deleteAssetProcedureTypeFieldValuesAttachment:Ac,deleteAssetProcedureTypeFieldValuesAttachments:rs}=cs.actions,fc=cs.reducer,Sc=t=>t.assetProcedureTypeFieldValuesAttachmentReducer.instances,us=l.createSelector([Sc],t=>Object.values(t)),Tc=t=>s=>s.assetProcedureTypeFieldValuesAttachmentReducer.instances[t],Ic=A(l.createSelector([us,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Oc=A(l.createSelector([us,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),J=F(({uuid:t})=>t),Pc={instances:{}},ls=l.createSlice({name:"assetProcedureTypeFieldValues",initialState:Pc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Pc)),reducers:{initializeAssetProcedureTypeFieldValues:J.initialize,addAssetProcedureTypeFieldValues:J.addOne,addAssetProcedureTypeFieldValuesMany:J.addMany,setAssetProcedureTypeFieldValues:J.setOne,setAssetProcedureTypeFieldValuesMany:J.setMany,updateAssetProcedureTypeFieldValues:J.updateOne,updateAssetProcedureTypeFieldValuesMany:J.updateMany,deleteAssetProcedureTypeFieldValues:J.deleteOne,deleteAssetProcedureTypeFieldValuesMany:J.deleteMany}}),{initializeAssetProcedureTypeFieldValues:Fc,addAssetProcedureTypeFieldValues:_c,addAssetProcedureTypeFieldValuesMany:bc,setAssetProcedureTypeFieldValues:gc,setAssetProcedureTypeFieldValuesMany:Mc,updateAssetProcedureTypeFieldValues:Rc,updateAssetProcedureTypeFieldValuesMany:wc,deleteAssetProcedureTypeFieldValues:Ec,deleteAssetProcedureTypeFieldValuesMany:Bc}=ls.actions,Vc=ls.reducer,vc=t=>t.assetProcedureTypeFieldValuesReducer.instances,Pt=l.createSelector([vc],t=>Object.values(t)),CO=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),UO=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure===s)))),zc=t=>s=>s.assetProcedureTypeFieldValuesReducer.instances[t],jc=A(l.createSelector([Pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),X=F(({uuid:t})=>t),qc={instances:{}},os=l.createSlice({name:"assetProcedures",initialState:qc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,qc)),reducers:{initializeAssetProcedures:X.initialize,addAssetProcedure:X.addOne,addAssetProcedures:X.addMany,setAssetProcedure:X.setOne,setAssetProcedures:X.setMany,updateAssetProcedure:X.updateOne,updateAssetProcedures:X.updateMany,deleteAssetProcedure:X.deleteOne,deleteAssetProcedures:X.deleteMany}}),{initializeAssetProcedures:Dc,addAssetProcedure:$c,addAssetProcedures:hs,updateAssetProcedure:Cc,updateAssetProcedures:Uc,deleteAssetProcedure:Lc,deleteAssetProcedures:ms,setAssetProcedure:kc,setAssetProcedures:Nc}=os.actions,Gc=os.reducer,Hc=t=>t.assetProcedureReducer.instances,Ft=l.createSelector([Hc],t=>Object.values(t)),Wc=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),LO=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Kc=t=>s=>s.assetProcedureReducer.instances[t],Yc=A(l.createSelector([Ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Q=F(t=>t.uuid),Zc={instances:{}},ys=l.createSlice({name:"assetProcedureTypes",initialState:Zc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Zc)),reducers:{initializeAssetProcedureTypes:Q.initialize,addAssetProcedureType:Q.addOne,addAssetProcedureTypes:Q.addMany,setAssetProcedureType:Q.setOne,setAssetProcedureTypes:Q.setMany,updateAssetProcedureType:Q.updateOne,updateAssetProcedureTypes:Q.updateMany,deleteAssetProcedureType:Q.deleteOne,deleteAssetProcedureTypes:Q.deleteMany}}),{initializeAssetProcedureTypes:Jc,addAssetProcedureType:Xc,addAssetProcedureTypes:Qc,updateAssetProcedureType:xc,updateAssetProcedureTypes:ed,deleteAssetProcedureType:td,deleteAssetProcedureTypes:sd,setAssetProcedureType:id,setAssetProcedureTypes:nd}=ys.actions,ad=ys.reducer,cd=t=>t.assetProcedureTypeReducer.instances,ps=l.createSelector([cd],t=>Object.values(t)),dd=t=>s=>s.assetProcedureTypeReducer.instances[t],rd=A(l.createSelector([ps,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),kO=A(l.createSelector([ps,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),x=F(t=>t.uuid),ud={instances:{}},As=l.createSlice({name:"assetProcedureStepFieldsAttachments",initialState:ud,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ud)),reducers:{initializeAssetProcedureStepFieldsAttachments:x.initialize,addAssetProcedureStepFieldsAttachment:x.addOne,addAssetProcedureStepFieldsAttachments:x.addMany,setAssetProcedureStepFieldsAttachment:x.setOne,setAssetProcedureStepFieldsAttachments:x.setMany,updateAssetProcedureStepFieldsAttachment:x.updateOne,updateAssetProcedureStepFieldsAttachments:x.updateMany,deleteAssetProcedureStepFieldsAttachment:x.deleteOne,deleteAssetProcedureStepFieldsAttachments:x.deleteMany}}),{initializeAssetProcedureStepFieldsAttachments:ld,addAssetProcedureStepFieldsAttachment:od,addAssetProcedureStepFieldsAttachments:hd,setAssetProcedureStepFieldsAttachment:md,setAssetProcedureStepFieldsAttachments:yd,updateAssetProcedureStepFieldsAttachment:pd,updateAssetProcedureStepFieldsAttachments:Ad,deleteAssetProcedureStepFieldsAttachment:fd,deleteAssetProcedureStepFieldsAttachments:Sd}=As.actions,Td=t=>t.assetProcedureStepFieldsAttachmentReducer.instances,fs=l.createSelector([Td],t=>Object.values(t)),NO=A(l.createSelector([fs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Id=t=>s=>s.assetProcedureStepFieldsAttachmentReducer.instances[t],Od=A(l.createSelector([fs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Pd=As.reducer,ee=F(t=>t.uuid),Fd={instances:{}},Ss=l.createSlice({name:"assetProcedureStepFields",initialState:Fd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Fd)),reducers:{initializeAssetProcedureStepFields:ee.initialize,addAssetProcedureStepFields:ee.addOne,addAssetProcedureStepFieldsMany:ee.addMany,setAssetProcedureStepFields:ee.setOne,setAssetProcedureStepFieldsMany:ee.setMany,updateAssetProcedureStepFields:ee.updateOne,updateAssetProcedureStepFieldsMany:ee.updateMany,deleteAssetProcedureStepFields:ee.deleteOne,deleteAssetProcedureStepFieldsMany:ee.deleteMany}}),{initializeAssetProcedureStepFields:_d,addAssetProcedureStepFields:bd,addAssetProcedureStepFieldsMany:gd,setAssetProcedureStepFields:Md,setAssetProcedureStepFieldsMany:Rd,updateAssetProcedureStepFields:wd,updateAssetProcedureStepFieldsMany:Ed,deleteAssetProcedureStepFields:Bd,deleteAssetProcedureStepFieldsMany:Vd}=Ss.actions,Ts=t=>t.assetProcedureStepFieldsReducer.instances,_t=l.createSelector([Ts],t=>Object.values(t)),GO=A(l.createSelector([_t,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_step===s)))),HO=A(l.createSelector([_t,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_step===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),WO=l.createSelector([Ts],t=>{const s={};for(const e of Object.values(t)){const n=s[e.asset_procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.asset_procedure_step]=e)}return s}),vd=t=>s=>s.assetProcedureStepFieldsReducer.instances[t],zd=A(l.createSelector([_t,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jd=Ss.reducer,te=F(t=>t.uuid),qd={instances:{}},Is=l.createSlice({name:"assetProcedureStepFieldValuesAttachments",initialState:qd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,qd)),reducers:{initializeAssetProcedureStepFieldValuesAttachments:te.initialize,addAssetProcedureStepFieldValuesAttachment:te.addOne,addAssetProcedureStepFieldValuesAttachments:te.addMany,setAssetProcedureStepFieldValuesAttachment:te.setOne,setAssetProcedureStepFieldValuesAttachments:te.setMany,updateAssetProcedureStepFieldValuesAttachment:te.updateOne,updateAssetProcedureStepFieldValuesAttachments:te.updateMany,deleteAssetProcedureStepFieldValuesAttachment:te.deleteOne,deleteAssetProcedureStepFieldValuesAttachments:te.deleteMany}}),{initializeAssetProcedureStepFieldValuesAttachments:Dd,addAssetProcedureStepFieldValuesAttachment:$d,addAssetProcedureStepFieldValuesAttachments:Os,setAssetProcedureStepFieldValuesAttachment:Cd,setAssetProcedureStepFieldValuesAttachments:Ud,updateAssetProcedureStepFieldValuesAttachment:Ld,updateAssetProcedureStepFieldValuesAttachments:kd,deleteAssetProcedureStepFieldValuesAttachment:Nd,deleteAssetProcedureStepFieldValuesAttachments:Ps}=Is.actions,Gd=t=>t.assetProcedureStepFieldValuesAttachmentReducer.instances,Fs=l.createSelector([Gd],t=>Object.values(t)),Hd=t=>s=>s.assetProcedureStepFieldValuesAttachmentReducer.instances[t],Wd=A(l.createSelector([Fs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Kd=A(l.createSelector([Fs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),Yd=Is.reducer,se=F(t=>t.uuid),Zd={instances:{}},_s=l.createSlice({name:"assetProcedureStepFieldValues",initialState:Zd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Zd)),reducers:{initializeAssetProcedureStepFieldValues:se.initialize,addAssetProcedureStepFieldValues:se.addOne,addAssetProcedureStepFieldValuesMany:se.addMany,setAssetProcedureStepFieldValues:se.setOne,setAssetProcedureStepFieldValuesMany:se.setMany,updateAssetProcedureStepFieldValues:se.updateOne,updateAssetProcedureStepFieldValuesMany:se.updateMany,deleteAssetProcedureStepFieldValues:se.deleteOne,deleteAssetProcedureStepFieldValuesMany:se.deleteMany}}),{initializeAssetProcedureStepFieldValues:Jd,addAssetProcedureStepFieldValues:Xd,addAssetProcedureStepFieldValuesMany:Qd,setAssetProcedureStepFieldValues:xd,setAssetProcedureStepFieldValuesMany:er,updateAssetProcedureStepFieldValues:tr,updateAssetProcedureStepFieldValuesMany:sr,deleteAssetProcedureStepFieldValues:ir,deleteAssetProcedureStepFieldValuesMany:nr}=_s.actions,ar=t=>t.assetProcedureStepFieldValuesReducer.instances,ot=l.createSelector([ar],t=>Object.values(t)),KO=A(l.createSelector([ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),YO=A(l.createSelector([ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure===s)))),ZO=A(l.createSelector([ot,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_step===s)))),cr=t=>s=>s.assetProcedureStepFieldValuesReducer.instances[t],dr=A(l.createSelector([ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rr=_s.reducer,ie=F(t=>t.uuid),ur={instances:{}},bs=l.createSlice({name:"assetProcedureSteps",initialState:ur,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,ur)),reducers:{initializeAssetProcedureSteps:ie.initialize,setAssetProcedureStep:ie.setOne,setAssetProcedureSteps:ie.setMany,addAssetProcedureStep:ie.addOne,addAssetProcedureSteps:ie.addMany,updateAssetProcedureStep:ie.updateOne,updateAssetProcedureSteps:ie.updateMany,deleteAssetProcedureStep:ie.deleteOne,deleteAssetProcedureSteps:ie.deleteMany}}),{initializeAssetProcedureSteps:lr,setAssetProcedureStep:or,setAssetProcedureSteps:hr,addAssetProcedureStep:mr,addAssetProcedureSteps:yr,updateAssetProcedureStep:pr,updateAssetProcedureSteps:Ar,deleteAssetProcedureStep:fr,deleteAssetProcedureSteps:Sr}=bs.actions,Tr=bs.reducer,bt=t=>t.assetProcedureStepReducer.instances,Ir=t=>s=>s.assetProcedureStepReducer.instances[t],gs=l.createSelector([bt],t=>Object.values(t)),JO=A(l.createSelector([bt,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),XO=A(l.createSelector([gs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),Or=A(l.createSelector([gs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Pr=A(l.createSelector([bt,(t,s)=>s],(t,s)=>{if(!t[s])return f([]);const a=Xn(s,Object.values(t)).all().map(({model:c})=>c);return f(a)})),ne=F(t=>t.uuid),Fr={instances:{}},Ms=l.createSlice({name:"assets",initialState:Fr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Fr)),reducers:{initializeAssets:ne.initialize,addAsset:ne.addOne,addAssets:ne.addMany,setAsset:ne.setOne,setAssets:ne.setMany,updateAsset:ne.updateOne,updateAssets:ne.updateMany,deleteAsset:ne.deleteOne,deleteAssets:ne.deleteMany}}),{initializeAssets:_r,addAsset:br,addAssets:Rs,updateAsset:gr,updateAssets:Mr,deleteAsset:Rr,deleteAssets:ws,setAsset:wr,setAssets:Er}=Ms.actions,Br=t=>t.assetReducer.instances,gt=l.createSelector([Br],t=>f(Object.values(t))),QO=A(l.createSelector([gt,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>e===s)))),Vr=A(l.createSelector([gt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),vr=t=>s=>s.assetReducer.instances[t],zr=A(l.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),jr=Ms.reducer,ae=F(t=>t.uuid),qr={instances:{}},Es=l.createSlice({name:"assetStageCompletions",initialState:qr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,qr)),reducers:{initializeAssetStageCompletions:ae.initialize,addAssetStageCompletion:ae.addOne,addAssetStageCompletions:ae.addMany,setAssetStageCompletion:ae.setOne,setAssetStageCompletions:ae.setMany,updateAssetStageCompletion:ae.updateOne,updateAssetStageCompletions:ae.updateMany,deleteAssetStageCompletion:ae.deleteOne,deleteAssetStageCompletions:ae.deleteMany}}),{initializeAssetStageCompletions:Dr,addAssetStageCompletion:$r,addAssetStageCompletions:Cr,setAssetStageCompletion:Ur,setAssetStageCompletions:Lr,updateAssetStageCompletion:kr,updateAssetStageCompletions:Nr,deleteAssetStageCompletion:Gr,deleteAssetStageCompletions:Hr}=Es.actions,Wr=Es.reducer,Kr=t=>t.assetStageCompletionReducer.instances,Yr=l.createSelector([Kr],t=>Object.values(t)),Zr=t=>s=>s.assetStageCompletionReducer.instances[t],Jr=A(l.createSelector([Yr,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ce=F(t=>t.uuid),Xr={instances:{}},Bs=l.createSlice({name:"assetStages",initialState:Xr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Xr)),reducers:{initializeAssetStages:ce.initialize,setAssetStage:ce.setOne,setAssetStages:ce.setMany,addAssetStage:ce.addOne,addAssetStages:ce.addMany,updateAssetStage:ce.updateOne,updateAssetStages:ce.updateMany,deleteAssetStage:ce.deleteOne,deleteAssetStages:ce.deleteMany}}),{initializeAssetStages:Qr,setAssetStage:xr,setAssetStages:eu,addAssetStage:tu,addAssetStages:su,updateAssetStage:iu,updateAssetStages:nu,deleteAssetStage:au,deleteAssetStages:cu}=Bs.actions,du=Bs.reducer,Vs=t=>t.assetStageReducer.instances,ru=t=>s=>s.assetStageReducer.instances[t],vs=l.createSelector([Vs],t=>Object.values(t)),xO=A(l.createSelector([Vs,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),eP=A(l.createSelector([vs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_procedure_type===s)))),uu=A(l.createSelector([vs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),de=F(t=>t.uuid),lu={instances:{}},zs=l.createSlice({name:"assetTypeAttachments",initialState:lu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,lu)),reducers:{initializeAssetTypeAttachments:de.initialize,addAssetTypeAttachment:de.addOne,addAssetTypeAttachments:de.addMany,setAssetTypeAttachment:de.setOne,setAssetTypeAttachments:de.setMany,updateAssetTypeAttachment:de.updateOne,updateAssetTypeAttachments:de.updateMany,deleteAssetTypeAttachment:de.deleteOne,deleteAssetTypeAttachments:de.deleteMany}}),{initializeAssetTypeAttachments:ou,addAssetTypeAttachment:hu,addAssetTypeAttachments:js,setAssetTypeAttachment:mu,setAssetTypeAttachments:yu,updateAssetTypeAttachment:pu,updateAssetTypeAttachments:Au,deleteAssetTypeAttachment:fu,deleteAssetTypeAttachments:qs}=zs.actions,Su=t=>t.assetTypeAttachmentReducer.instances,Ds=l.createSelector([Su],t=>Object.values(t)),Tu=t=>s=>s.assetTypeAttachmentReducer.instances[t],Iu=A(l.createSelector([Ds,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ou=A(l.createSelector([Ds,(t,s)=>s],(t,s)=>f(t.filter(({asset_type:e})=>s===e)))),Pu=zs.reducer,re=F(t=>t.uuid),Fu={instances:{}},$s=l.createSlice({name:"assetTypeFieldsAttachments",initialState:Fu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Fu)),reducers:{initializeAssetTypeFieldsAttachments:re.initialize,addAssetTypeFieldsAttachment:re.addOne,addAssetTypeFieldsAttachments:re.addMany,setAssetTypeFieldsAttachment:re.setOne,setAssetTypeFieldsAttachments:re.setMany,updateAssetTypeFieldsAttachment:re.updateOne,updateAssetTypeFieldsAttachments:re.updateMany,deleteAssetTypeFieldsAttachment:re.deleteOne,deleteAssetTypeFieldsAttachments:re.deleteMany}}),{initializeAssetTypeFieldsAttachments:_u,addAssetTypeFieldsAttachment:bu,addAssetTypeFieldsAttachments:gu,setAssetTypeFieldsAttachment:Mu,setAssetTypeFieldsAttachments:Ru,updateAssetTypeFieldsAttachment:wu,updateAssetTypeFieldsAttachments:Eu,deleteAssetTypeFieldsAttachment:Bu,deleteAssetTypeFieldsAttachments:Vu}=$s.actions,vu=t=>t.assetTypeFieldsAttachmentReducer.instances,Cs=l.createSelector([vu],t=>Object.values(t)),tP=A(l.createSelector([Cs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),zu=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],ju=A(l.createSelector([Cs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),qu=$s.reducer,ue=F(t=>t.uuid),Du={instances:{}},Us=l.createSlice({name:"assetTypeFields",initialState:Du,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Du)),reducers:{initializeAssetTypeFields:ue.initialize,addAssetTypeFields:ue.addOne,addAssetTypeFieldsMany:ue.addMany,setAssetTypeFields:ue.setOne,setAssetTypeFieldsMany:ue.setMany,updateAssetTypeFields:ue.updateOne,updateAssetTypeFieldsMany:ue.updateMany,deleteAssetTypeFields:ue.deleteOne,deleteAssetTypeFieldsMany:ue.deleteMany}}),{initializeAssetTypeFields:$u,addAssetTypeFields:Cu,addAssetTypeFieldsMany:Uu,setAssetTypeFields:Lu,setAssetTypeFieldsMany:ku,updateAssetTypeFields:Nu,updateAssetTypeFieldsMany:Gu,deleteAssetTypeFields:Hu,deleteAssetTypeFieldsMany:Wu}=Us.actions,Ku=t=>t.assetTypeFieldsReducer.instances,ht=l.createSelector([Ku],t=>Object.values(t)),sP=A(l.createSelector([ht,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),iP=A(l.createSelector([ht,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Yu=t=>s=>s.assetTypeFieldsReducer.instances[t],Zu=A(l.createSelector([ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ju=Us.reducer,le=F(t=>t.uuid),Xu={instances:{}},Ls=l.createSlice({name:"assetTypeFieldValuesAttachments",initialState:Xu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Xu)),reducers:{initializeAssetTypeFieldValuesAttachments:le.initialize,addAssetTypeFieldValuesAttachment:le.addOne,addAssetTypeFieldValuesAttachments:le.addMany,setAssetTypeFieldValuesAttachment:le.setOne,setAssetTypeFieldValuesAttachments:le.setMany,updateAssetTypeFieldValuesAttachment:le.updateOne,updateAssetTypeFieldValuesAttachments:le.updateMany,deleteAssetTypeFieldValuesAttachment:le.deleteOne,deleteAssetTypeFieldValuesAttachments:le.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:Qu,addAssetTypeFieldValuesAttachment:xu,addAssetTypeFieldValuesAttachments:ks,setAssetTypeFieldValuesAttachment:el,setAssetTypeFieldValuesAttachments:tl,updateAssetTypeFieldValuesAttachment:sl,updateAssetTypeFieldValuesAttachments:il,deleteAssetTypeFieldValuesAttachment:nl,deleteAssetTypeFieldValuesAttachments:Ns}=Ls.actions,al=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Gs=l.createSelector([al],t=>Object.values(t)),cl=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],dl=A(l.createSelector([Gs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rl=A(l.createSelector([Gs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),ul=Ls.reducer,oe=F(t=>t.uuid),ll={instances:{}},Hs=l.createSlice({name:"assetTypeFieldValues",initialState:ll,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,ll)),reducers:{initializeAssetTypeFieldValues:oe.initialize,addAssetTypeFieldValues:oe.addOne,addAssetTypeFieldValuesMany:oe.addMany,setAssetTypeFieldValues:oe.setOne,setAssetTypeFieldValuesMany:oe.setMany,updateAssetTypeFieldValues:oe.updateOne,updateAssetTypeFieldValuesMany:oe.updateMany,deleteAssetTypeFieldValues:oe.deleteOne,deleteAssetTypeFieldValuesMany:oe.deleteMany}}),{initializeAssetTypeFieldValues:ol,addAssetTypeFieldValues:hl,addAssetTypeFieldValuesMany:ml,setAssetTypeFieldValues:yl,setAssetTypeFieldValuesMany:pl,updateAssetTypeFieldValues:Al,updateAssetTypeFieldValuesMany:fl,deleteAssetTypeFieldValues:Sl,deleteAssetTypeFieldValuesMany:Tl}=Hs.actions,Il=t=>t.assetTypeFieldValuesReducer.instances,Mt=l.createSelector([Il],t=>Object.values(t)),nP=A(l.createSelector([Mt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),aP=A(l.createSelector([ht,Mt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.asset_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),Ol=t=>s=>s.assetTypeFieldValuesReducer.instances[t],Pl=A(l.createSelector([Mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Fl=Hs.reducer,he=F(t=>t.uuid),_l={instances:{}},Ws=l.createSlice({name:"assetTypeIdentifiers",initialState:_l,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,_l)),reducers:{initializeAssetTypeIdentifiers:he.initialize,addAssetTypeIdentifier:he.addOne,addAssetTypeIdentifiers:he.addMany,setAssetTypeIdentifier:he.setOne,setAssetTypeIdentifiers:he.setMany,updateAssetTypeIdentifier:he.updateOne,updateAssetTypeIdentifiers:he.updateMany,deleteAssetTypeIdentifier:he.deleteOne,deleteAssetTypeIdentifiers:he.deleteMany}}),{initializeAssetTypeIdentifiers:bl,addAssetTypeIdentifier:gl,addAssetTypeIdentifiers:Ml,setAssetTypeIdentifier:Rl,setAssetTypeIdentifiers:wl,updateAssetTypeIdentifier:El,updateAssetTypeIdentifiers:Bl,deleteAssetTypeIdentifier:Vl,deleteAssetTypeIdentifiers:vl}=Ws.actions,zl=t=>t.assetTypeIdentifierReducer.instances,Ks=l.createSelector([zl],t=>Object.values(t)),jl=t=>s=>s.assetTypeIdentifierReducer.instances[t],ql=A(l.createSelector([Ks,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),cP=A(l.createSelector([Ks,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Dl=Ws.reducer,me=F(t=>t.uuid),$l={instances:{}},Ys=l.createSlice({name:"assetTypeIdentifierValues",initialState:$l,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,$l)),reducers:{initializeAssetTypeIdentifierValues:me.initialize,addAssetTypeIdentifierValue:me.addOne,addAssetTypeIdentifierValues:me.addMany,setAssetTypeIdentifierValue:me.setOne,setAssetTypeIdentifierValues:me.setMany,updateAssetTypeIdentifierValue:me.updateOne,updateAssetTypeIdentifierValues:me.updateMany,deleteAssetTypeIdentifierValue:me.deleteOne,deleteAssetTypeIdentifierValues:me.deleteMany}}),{initializeAssetTypeIdentifierValues:Cl,addAssetTypeIdentifierValue:Ul,addAssetTypeIdentifierValues:Ll,setAssetTypeIdentifierValue:kl,setAssetTypeIdentifierValues:Nl,updateAssetTypeIdentifierValue:Gl,updateAssetTypeIdentifierValues:Hl,deleteAssetTypeIdentifierValue:Wl,deleteAssetTypeIdentifierValues:Kl}=Ys.actions,Yl=t=>t.assetTypeIdentifierValueReducer.instances,Rt=l.createSelector([Yl],t=>Object.values(t)),Zl=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],Jl=A(l.createSelector([Rt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),dP=A(l.createSelector([Rt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),rP=A(l.createSelector([Rt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type_identifier===s)))),Xl=Ys.reducer,ye=F(t=>t.uuid),Ql={instances:{}},Zs=l.createSlice({name:"assetTypes",initialState:Ql,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Ql)),reducers:{initializeAssetTypes:ye.initialize,setAssetType:ye.setOne,setAssetTypes:ye.setMany,addAssetType:ye.addOne,addAssetTypes:ye.addMany,updateAssetType:ye.updateOne,updateAssetTypes:ye.updateMany,deleteAssetType:ye.deleteOne,deleteAssetTypes:ye.deleteMany}}),{initializeAssetTypes:xl,setAssetType:eo,setAssetTypes:to,addAssetType:so,addAssetTypes:io,updateAssetType:no,updateAssetTypes:ao,deleteAssetType:co,deleteAssetTypes:ro}=Zs.actions,uo=t=>t.assetTypeReducer.instances,Js=l.createSelector([uo],t=>Object.values(t)),lo=t=>s=>s.assetTypeReducer.instances[t],oo=A(l.createSelector([Js,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),uP=A(l.createSelector([Js,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),ho=Zs.reducer,pe=F(t=>t.uuid),mo={instances:{}},Xs=l.createSlice({name:"assetTypeStatuses",initialState:mo,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,mo)),reducers:{initializeAssetTypeStatuses:pe.initialize,addAssetTypeStatus:pe.addOne,addAssetTypeStatuses:pe.addMany,setAssetTypeStatus:pe.setOne,setAssetTypeStatuses:pe.setMany,updateAssetTypeStatus:pe.updateOne,updateAssetTypeStatuses:pe.updateMany,deleteAssetTypeStatus:pe.deleteOne,deleteAssetTypeStatuses:pe.deleteMany}}),{initializeAssetTypeStatuses:yo,addAssetTypeStatus:po,addAssetTypeStatuses:Ao,setAssetTypeStatus:fo,setAssetTypeStatuses:So,updateAssetTypeStatus:To,updateAssetTypeStatuses:Io,deleteAssetTypeStatus:Oo,deleteAssetTypeStatuses:Po}=Xs.actions,Fo=t=>t.assetTypeStatusReducer.instances,Qs=l.createSelector([Fo],t=>f(Object.values(t).toSorted(Qn))),_o=t=>s=>s.assetTypeStatusReducer.instances[t],bo=A(l.createSelector([Qs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),lP=A(l.createSelector([Qs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),go=Xs.reducer,Mo={accessToken:"",refreshToken:"",isLoggedIn:!1},wt=l.createSlice({name:"auth",initialState:Mo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Mo)),reducers:{setTokens:(t,s)=>{t.accessToken=s.payload.accessToken,t.refreshToken=s.payload.refreshToken},clearTokens:t=>{t.accessToken="",t.refreshToken=""},setLoggedIn:(t,s)=>{s.payload||wt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:oP,clearTokens:hP,setLoggedIn:Ro}=wt.actions,mP=t=>t.authReducer.accessToken,yP=t=>t.authReducer.isLoggedIn,wo=wt.reducer,Ae=F(t=>t.uuid),Eo={instances:{}},xs=l.createSlice({name:"documentAttachments",initialState:Eo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Eo)),reducers:{initializeDocumentAttachments:Ae.initialize,addDocumentAttachment:Ae.addOne,addDocumentAttachments:Ae.addMany,setDocumentAttachment:Ae.setOne,setDocumentAttachments:Ae.setMany,updateDocumentAttachment:Ae.updateOne,updateDocumentAttachments:Ae.updateMany,deleteDocumentAttachment:Ae.deleteOne,deleteDocumentAttachments:Ae.deleteMany}}),{initializeDocumentAttachments:Bo,addDocumentAttachment:Vo,addDocumentAttachments:vo,setDocumentAttachment:zo,setDocumentAttachments:jo,updateDocumentAttachment:qo,updateDocumentAttachments:Do,deleteDocumentAttachment:$o,deleteDocumentAttachments:Co}=xs.actions,Uo=t=>t.documentAttachmentReducer.instances,ei=l.createSelector([Uo],t=>Object.values(t)),Lo=t=>s=>s.documentAttachmentReducer.instances[t],ko=A(l.createSelector([ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),pP=A(l.createSelector([ei,(t,s)=>s],(t,s)=>f(t.filter(({document:e})=>s===e)))),No=xs.reducer,fe=F(({uuid:t})=>t),Go={instances:{}},ti=l.createSlice({name:"documents",initialState:Go,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>{Object.assign(s,Go)}),reducers:{initializeDocuments:fe.initialize,addDocument:fe.addOne,addDocuments:fe.addMany,setDocument:fe.setOne,setDocuments:fe.setMany,updateDocument:fe.updateOne,updateDocuments:fe.updateMany,deleteDocument:fe.deleteOne,deleteDocuments:fe.deleteMany}}),{initializeDocuments:Ho,addDocument:Wo,addDocuments:Ko,setDocument:Yo,setDocuments:Zo,updateDocument:Jo,updateDocuments:Xo,deleteDocument:Qo,deleteDocuments:xo}=ti.actions,eh=ti.reducer,si=t=>t.documentsReducer.instances,Et=l.createSelector([si],t=>Object.values(t)),th=t=>s=>s.documentsReducer.instances[t],sh=A(l.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),AP=A(l.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),fP=A(l.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),ih=A(l.createSelector([si,(t,s)=>s],(t,s)=>{if(!t[s])return f([]);const a=ta(s,Object.values(t)).all().map(({model:c})=>c);return f(a)})),nh={s3Urls:{}},ah=1e3*60*60,SP=ah*24*7,ii=l.createSlice({name:"file",initialState:nh,extraReducers:t=>t.addCase(O,s=>Object.assign(s,nh)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:a}=s.payload,c=new Date,d=new Date(c.getTime()+SP);t.s3Urls[a]={url:e,fields:n,exp:d.getTime()}}}}),{setUploadUrl:TP}=ii.actions,IP=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<ah))return e},ch=ii.reducer,Se=F(t=>t.uuid),dh={instances:{}},ni=l.createSlice({name:"formIdentifiers",initialState:dh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,dh)),reducers:{initializeFormIdentifiers:Se.initialize,addFormIdentifier:Se.addOne,addFormIdentifiers:Se.addMany,setFormIdentifier:Se.setOne,setFormIdentifiers:Se.setMany,updateFormIdentifier:Se.updateOne,updateFormIdentifiers:Se.updateMany,deleteFormIdentifier:Se.deleteOne,deleteFormIdentifiers:Se.deleteMany}}),{initializeFormIdentifiers:rh,addFormIdentifier:uh,addFormIdentifiers:lh,setFormIdentifier:oh,setFormIdentifiers:hh,updateFormIdentifier:mh,updateFormIdentifiers:yh,deleteFormIdentifier:ph,deleteFormIdentifiers:Ah}=ni.actions,fh=t=>t.formIdentifierReducer.instances,ai=l.createSelector([fh],t=>Object.values(t)),Sh=t=>s=>s.formIdentifierReducer.instances[t],Th=A(l.createSelector([ai,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),OP=A(l.createSelector([ai,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),Ih=ni.reducer,Te=F(t=>t.uuid),Oh={instances:{}},ci=l.createSlice({name:"formIdentifierValues",initialState:Oh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Oh)),reducers:{initializeFormIdentifierValues:Te.initialize,addFormIdentifierValue:Te.addOne,addFormIdentifierValues:Te.addMany,setFormIdentifierValue:Te.setOne,setFormIdentifierValues:Te.setMany,updateFormIdentifierValue:Te.updateOne,updateFormIdentifierValues:Te.updateMany,deleteFormIdentifierValue:Te.deleteOne,deleteFormIdentifierValues:Te.deleteMany}}),{initializeFormIdentifierValues:Ph,addFormIdentifierValue:Fh,addFormIdentifierValues:_h,setFormIdentifierValue:bh,setFormIdentifierValues:gh,updateFormIdentifierValue:Mh,updateFormIdentifierValues:Rh,deleteFormIdentifierValue:wh,deleteFormIdentifierValues:Eh}=ci.actions,Bh=t=>t.formIdentifierValueReducer.instances,Bt=l.createSelector([Bh],t=>Object.values(t)),Vh=t=>s=>s.formIdentifierValueReducer.instances[t],vh=A(l.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),PP=A(l.createSelector([Bt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),FP=A(l.createSelector([Bt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_identifier===s)))),zh=ci.reducer,Ie=F(t=>t.uuid),jh={instances:{}},di=l.createSlice({name:"formRevisionAttachments",initialState:jh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,jh)),reducers:{initializeFormRevisionAttachments:Ie.initialize,addFormRevisionAttachment:Ie.addOne,addFormRevisionAttachments:Ie.addMany,setFormRevisionAttachment:Ie.setOne,setFormRevisionAttachments:Ie.setMany,updateFormRevisionAttachment:Ie.updateOne,updateFormRevisionAttachments:Ie.updateMany,deleteFormRevisionAttachment:Ie.deleteOne,deleteFormRevisionAttachments:Ie.deleteMany}}),{initializeFormRevisionAttachments:qh,addFormRevisionAttachment:Dh,addFormRevisionAttachments:$h,setFormRevisionAttachment:Ch,setFormRevisionAttachments:Uh,updateFormRevisionAttachment:Lh,updateFormRevisionAttachments:kh,deleteFormRevisionAttachment:Nh,deleteFormRevisionAttachments:Gh}=di.actions,Vt=t=>t.formRevisionAttachmentReducer.instances,Hh=l.createSelector([Vt],t=>Object.values(t)),Wh=A(l.createSelector([Vt,(t,s)=>s],(t,s)=>t[s])),Kh=A(l.createSelector([Hh,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),_P=A(l.createSelector([Vt,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.form_revision===s)))),Yh=di.reducer,Oe=F(t=>t.uuid),Zh={instances:{}},ri=l.createSlice({name:"formRevisions",initialState:Zh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Zh)),reducers:{initializeFormRevisions:Oe.initialize,addFormRevision:Oe.addOne,addFormRevisions:Oe.addMany,setFormRevision:Oe.setOne,setFormRevisions:Oe.setMany,updateFormRevision:Oe.updateOne,updateFormRevisions:Oe.updateMany,deleteFormRevision:Oe.deleteOne,deleteFormRevisions:Oe.deleteMany}}),{initializeFormRevisions:Jh,addFormRevision:Xh,addFormRevisions:ui,setFormRevision:Qh,setFormRevisions:xh,updateFormRevision:em,updateFormRevisions:tm,deleteFormRevision:sm,deleteFormRevisions:li}=ri.actions,im=t=>t.formRevisionReducer.instances,vt=l.createSelector([im],t=>Object.values(t)),nm=t=>s=>s.formRevisionReducer.instances[t],am=A(l.createSelector([vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),bP=A(l.createSelector([vt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),cm=A(l.createSelector([vt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),dm=ri.reducer,Pe=F(t=>t.uuid),rm={instances:{}},oi=l.createSlice({name:"forms",initialState:rm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,rm)),reducers:{initializeForms:Pe.initialize,addForm:Pe.addOne,addForms:Pe.addMany,setForm:Pe.setOne,setForms:Pe.setMany,updateForm:Pe.updateOne,updateForms:Pe.updateMany,deleteForm:Pe.deleteOne,deleteForms:Pe.deleteMany}}),{initializeForms:um,addForm:lm,addForms:om,setForm:hm,setForms:mm,updateForm:ym,updateForms:pm,deleteForm:Am,deleteForms:fm}=oi.actions,Sm=oi.reducer,Tm=t=>t.formReducer.instances,hi=l.createSelector([Tm],t=>Object.values(t)),Im=t=>s=>s.formReducer.instances[t],Om=A(l.createSelector([hi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),gP=A(l.createSelector([hi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Fe=F(t=>t.uuid),Pm={instances:{}},mi=l.createSlice({name:"formSubmissionAttachments",initialState:Pm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Pm)),reducers:{initializeFormSubmissionAttachments:Fe.initialize,addFormSubmissionAttachment:Fe.addOne,addFormSubmissionAttachments:Fe.addMany,setFormSubmissionAttachment:Fe.setOne,setFormSubmissionAttachments:Fe.setMany,updateFormSubmissionAttachment:Fe.updateOne,updateFormSubmissionAttachments:Fe.updateMany,deleteFormSubmissionAttachment:Fe.deleteOne,deleteFormSubmissionAttachments:Fe.deleteMany}}),{initializeFormSubmissionAttachments:Fm,addFormSubmissionAttachment:_m,addFormSubmissionAttachments:yi,setFormSubmissionAttachment:bm,setFormSubmissionAttachments:gm,updateFormSubmissionAttachment:Mm,updateFormSubmissionAttachments:Rm,deleteFormSubmissionAttachment:wm,deleteFormSubmissionAttachments:pi}=mi.actions,Ai=t=>t.formSubmissionAttachmentReducer.instances,fi=l.createSelector([Ai],t=>Object.values(t)),Em=A(l.createSelector([Ai,(t,s)=>s],(t,s)=>t[s])),Si=A(l.createSelector([fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.uuid)))})),Bm=Si,Vm=A(l.createSelector([fi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),vm=mi.reducer,_e=F(t=>t.uuid),zm={instances:{}},Ti=l.createSlice({name:"formSubmissions",initialState:zm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,zm)),reducers:{initializeFormSubmissions:_e.initialize,setFormSubmission:_e.setOne,setFormSubmissions:_e.setMany,addFormSubmission:_e.addOne,addFormSubmissions:_e.addMany,updateFormSubmission:_e.updateOne,updateFormSubmissions:_e.updateMany,deleteFormSubmission:_e.deleteOne,deleteFormSubmissions:_e.deleteMany}}),{initializeFormSubmissions:jm,setFormSubmission:qm,setFormSubmissions:Dm,addFormSubmission:$m,addFormSubmissions:Ii,updateFormSubmission:Cm,updateFormSubmissions:Um,deleteFormSubmission:Lm,deleteFormSubmissions:Oi}=Ti.actions,km=t=>t.formSubmissionReducer.instances,Pi=l.createSelector([km],t=>Object.values(t)),Nm=t=>s=>s.formSubmissionReducer.instances[t],Gm=A(l.createSelector([Pi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Hm=A(l.createSelector([Pi,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s))),Wm=Ti.reducer,be=F(t=>t.uuid),Km={instances:{}},Fi=l.createSlice({name:"geoImages",initialState:Km,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Km)),reducers:{initializeGeoImages:be.initialize,setGeoImage:be.setOne,setGeoImages:be.setMany,addGeoImage:be.addOne,addGeoImages:be.addMany,updateGeoImage:be.updateOne,updateGeoImages:be.updateMany,deleteGeoImage:be.deleteOne,deleteGeoImages:be.deleteMany}}),{initializeGeoImages:Ym,setGeoImage:Zm,setGeoImages:Jm,addGeoImage:Xm,addGeoImages:Qm,updateGeoImage:xm,updateGeoImages:ey,deleteGeoImage:ty,deleteGeoImages:sy}=Fi.actions,iy=t=>t.geoImageReducer.instances,_i=l.createSelector([iy],t=>Object.values(t)),ny=t=>s=>s.geoImageReducer.instances[t],ay=A(l.createSelector([_i,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),MP=A(l.createSelector([_i,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),cy=Fi.reducer,ge=F(t=>t.uuid),dy={instances:{}},bi=l.createSlice({name:"issueAssociations",initialState:dy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,dy)),reducers:{initializeIssueAssociations:ge.initialize,addIssueAssociation:ge.addOne,addIssueAssociations:ge.addMany,setIssueAssociation:ge.setOne,setIssueAssociations:ge.setMany,updateIssueAssociation:ge.updateOne,updateIssueAssociations:ge.updateMany,deleteIssueAssociation:ge.deleteOne,deleteIssueAssociations:ge.deleteMany}}),{initializeIssueAssociations:ry,setIssueAssociations:uy,setIssueAssociation:ly,updateIssueAssociation:oy,updateIssueAssociations:hy,addIssueAssociation:my,addIssueAssociations:Qe,deleteIssueAssociation:yy,deleteIssueAssociations:xe}=bi.actions,py=t=>t.issueAssociationReducer.instances,et=l.createSelector([py],t=>Object.values(t)),Ay=t=>s=>s.issueAssociationReducer.instances[t],fy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Sy=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({associated_issue:e})=>e===s)))),Ty=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({associated_issue:n})=>e.has(n)))})),Iy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({issue:n})=>n&&e.has(n)))})),Oy=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>e===s)))),Py=A(l.createSelector([et,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>e===s)))),Fy=A(l.createSelector([et,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({asset:n})=>n&&e.has(n)))})),_y=bi.reducer,Me=F(t=>t.uuid),by={instances:{}},gi=l.createSlice({name:"issueAttachments",initialState:by,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,by)),reducers:{initializeIssueAttachments:Me.initialize,addIssueAttachment:Me.addOne,addIssueAttachments:Me.addMany,setIssueAttachment:Me.setOne,setIssueAttachments:Me.setMany,updateIssueAttachment:Me.updateOne,updateIssueAttachments:Me.updateMany,deleteIssueAttachment:Me.deleteOne,deleteIssueAttachments:Me.deleteMany}}),{initializeIssueAttachments:gy,addIssueAttachment:My,addIssueAttachments:Mi,setIssueAttachment:Ry,setIssueAttachments:wy,updateIssueAttachment:Ey,updateIssueAttachments:By,deleteIssueAttachment:Vy,deleteIssueAttachments:Ri}=gi.actions,vy=t=>t.issueAttachmentReducer.instances,wi=l.createSelector([vy],t=>Object.values(t)),zy=A(l.createSelector([wi,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>s===e)))),jy=t=>s=>s.issueAttachmentReducer.instances[t],qy=A(l.createSelector([wi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Dy=gi.reducer,Re=F(t=>t.uuid),$y={instances:{}},Ei=l.createSlice({name:"issueCommentAttachments",initialState:$y,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,$y)),reducers:{initializeIssueCommentAttachments:Re.initialize,addIssueCommentAttachment:Re.addOne,addIssueCommentAttachments:Re.addMany,setIssueCommentAttachment:Re.setOne,setIssueCommentAttachments:Re.setMany,updateIssueCommentAttachment:Re.updateOne,updateIssueCommentAttachments:Re.updateMany,deleteIssueCommentAttachment:Re.deleteOne,deleteIssueCommentAttachments:Re.deleteMany}}),{initializeIssueCommentAttachments:Cy,addIssueCommentAttachment:Uy,addIssueCommentAttachments:Ly,setIssueCommentAttachment:ky,setIssueCommentAttachments:Ny,updateIssueCommentAttachment:Gy,updateIssueCommentAttachments:Hy,deleteIssueCommentAttachment:Wy,deleteIssueCommentAttachments:Ky}=Ei.actions,Yy=t=>t.issueCommentAttachmentReducer.instances,Bi=l.createSelector([Yy],t=>Object.values(t)),Zy=t=>s=>s.issueCommentAttachmentReducer.instances[t],Jy=A(l.createSelector([Bi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),RP=A(l.createSelector([Bi,(t,s)=>s],(t,s)=>f(t.filter(({issue_comment:e})=>s===e)))),Xy=Ei.reducer,we=F(t=>t.uuid),Qy={instances:{}},Vi=l.createSlice({name:"issueComments",initialState:Qy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Qy)),reducers:{initializeIssueComments:we.initialize,addIssueComment:we.addOne,addIssueComments:we.addMany,setIssueComment:we.setOne,setIssueComments:we.setMany,updateIssueComment:we.updateOne,updateIssueComments:we.updateMany,deleteIssueComment:we.deleteOne,deleteIssueComments:we.deleteMany}}),{initializeIssueComments:xy,addIssueComment:ep,addIssueComments:tp,setIssueComment:sp,setIssueComments:ip,updateIssueComment:np,updateIssueComments:ap,deleteIssueComment:cp,deleteIssueComments:dp}=Vi.actions,vi=t=>t.issueCommentReducer.instances,rp=t=>s=>s.issueCommentReducer.instances[t],up=A(l.createSelector([vi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),wP=A(l.createSelector([vi,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.issue===s)))),lp=Vi.reducer,Ee=F(t=>t.uuid),op={instances:{}},zi=l.createSlice({name:"issues",initialState:op,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,op)),reducers:{initializeIssues:Ee.initialize,addIssue:Ee.addOne,addIssues:Ee.addMany,setIssue:Ee.setOne,setIssues:Ee.setMany,updateIssue:Ee.updateOne,updateIssues:Ee.updateMany,deleteIssue:Ee.deleteOne,deleteIssues:Ee.deleteMany}}),{initializeIssues:hp,addIssue:mp,addIssues:ji,setIssue:yp,setIssues:pp,updateIssue:Ap,updateIssues:fp,deleteIssue:Sp,deleteIssues:qi}=zi.actions,Tp=t=>t.issueReducer.instances,zt=l.createSelector([Tp],t=>Object.values(t)),Ip=t=>s=>s.issueReducer.instances[t],Op=A(l.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),EP=A(l.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),Pp=A(l.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),Fp=zi.reducer,Be=F(t=>t.uuid),_p={instances:{}},Di=l.createSlice({name:"issueTypeAttachments",initialState:_p,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,_p)),reducers:{initializeIssueTypeAttachments:Be.initialize,addIssueTypeAttachment:Be.addOne,addIssueTypeAttachments:Be.addMany,setIssueTypeAttachment:Be.setOne,setIssueTypeAttachments:Be.setMany,updateIssueTypeAttachment:Be.updateOne,updateIssueTypeAttachments:Be.updateMany,deleteIssueTypeAttachment:Be.deleteOne,deleteIssueTypeAttachments:Be.deleteMany}}),{initializeIssueTypeAttachments:bp,addIssueTypeAttachment:gp,addIssueTypeAttachments:Mp,setIssueTypeAttachment:Rp,setIssueTypeAttachments:wp,updateIssueTypeAttachment:Ep,updateIssueTypeAttachments:Bp,deleteIssueTypeAttachment:Vp,deleteIssueTypeAttachments:vp}=Di.actions,zp=t=>t.issueTypeAttachmentReducer.instances,$i=l.createSelector([zp],t=>Object.values(t)),jp=t=>s=>s.issueTypeAttachmentReducer.instances[t],qp=A(l.createSelector([$i,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),BP=A(l.createSelector([$i,(t,s)=>s],(t,s)=>f(t.filter(({issue_type:e})=>s===e)))),Dp=Di.reducer,Ve=F(t=>t.uuid),$p={instances:{}},Ci=l.createSlice({name:"issueTypeFieldsAttachments",initialState:$p,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,$p)),reducers:{initializeIssueTypeFieldsAttachments:Ve.initialize,addIssueTypeFieldsAttachment:Ve.addOne,addIssueTypeFieldsAttachments:Ve.addMany,setIssueTypeFieldsAttachment:Ve.setOne,setIssueTypeFieldsAttachments:Ve.setMany,updateIssueTypeFieldsAttachment:Ve.updateOne,updateIssueTypeFieldsAttachments:Ve.updateMany,deleteIssueTypeFieldsAttachment:Ve.deleteOne,deleteIssueTypeFieldsAttachments:Ve.deleteMany}}),{initializeIssueTypeFieldsAttachments:Cp,addIssueTypeFieldsAttachment:Up,addIssueTypeFieldsAttachments:Lp,setIssueTypeFieldsAttachment:kp,setIssueTypeFieldsAttachments:Np,updateIssueTypeFieldsAttachment:Gp,updateIssueTypeFieldsAttachments:Hp,deleteIssueTypeFieldsAttachment:Wp,deleteIssueTypeFieldsAttachments:Kp}=Ci.actions,Yp=t=>t.issueTypeFieldsAttachmentReducer.instances,Ui=l.createSelector([Yp],t=>Object.values(t)),VP=A(l.createSelector([Ui,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Zp=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],Jp=A(l.createSelector([Ui,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Xp=Ci.reducer,ve=F(t=>t.uuid),Qp={instances:{}},Li=l.createSlice({name:"issueTypeFieldValues",initialState:Qp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Qp)),reducers:{initializeIssueTypeFieldValues:ve.initialize,addIssueTypeFieldValues:ve.addOne,addIssueTypeFieldValuesMany:ve.addMany,setIssueTypeFieldValues:ve.setOne,setIssueTypeFieldValuesMany:ve.setMany,updateIssueTypeFieldValues:ve.updateOne,updateIssueTypeFieldValuesMany:ve.updateMany,deleteIssueTypeFieldValues:ve.deleteOne,deleteIssueTypeFieldValuesMany:ve.deleteMany}}),{initializeIssueTypeFieldValues:xp,addIssueTypeFieldValues:eA,addIssueTypeFieldValuesMany:tA,setIssueTypeFieldValues:sA,setIssueTypeFieldValuesMany:iA,updateIssueTypeFieldValues:nA,updateIssueTypeFieldValuesMany:aA,deleteIssueTypeFieldValues:cA,deleteIssueTypeFieldValuesMany:dA}=Li.actions,rA=t=>t.issueTypeFieldValuesReducer.instances,jt=l.createSelector([rA],t=>Object.values(t)),vP=A(l.createSelector([jt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),uA=t=>s=>s.issueTypeFieldValuesReducer.instances[t],lA=A(l.createSelector([jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),oA=Li.reducer,ze=F(t=>t.uuid),hA={instances:{}},ki=l.createSlice({name:"issueTypeFields",initialState:hA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,hA)),reducers:{initializeIssueTypeFields:ze.initialize,addIssueTypeFields:ze.addOne,addIssueTypeFieldsMany:ze.addMany,setIssueTypeFields:ze.setOne,setIssueTypeFieldsMany:ze.setMany,updateIssueTypeFields:ze.updateOne,updateIssueTypeFieldsMany:ze.updateMany,deleteIssueTypeFields:ze.deleteOne,deleteIssueTypeFieldsMany:ze.deleteMany}}),{initializeIssueTypeFields:mA,addIssueTypeFields:yA,addIssueTypeFieldsMany:pA,setIssueTypeFields:AA,setIssueTypeFieldsMany:fA,updateIssueTypeFields:SA,updateIssueTypeFieldsMany:TA,deleteIssueTypeFields:IA,deleteIssueTypeFieldsMany:OA}=ki.actions,PA=t=>t.issueTypeFieldsReducer.instances,mt=l.createSelector([PA],t=>Object.values(t)),zP=A(l.createSelector([mt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),jP=A(l.createSelector([mt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),qP=A(l.createSelector([mt,jt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.issue_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),FA=t=>s=>s.issueTypeFieldsReducer.instances[t],_A=A(l.createSelector([mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),bA=ki.reducer,je=F(t=>t.uuid),gA={instances:{}},Ni=l.createSlice({name:"issueTypeFieldValuesAttachments",initialState:gA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,gA)),reducers:{initializeIssueTypeFieldValuesAttachments:je.initialize,addIssueTypeFieldValuesAttachment:je.addOne,addIssueTypeFieldValuesAttachments:je.addMany,setIssueTypeFieldValuesAttachment:je.setOne,setIssueTypeFieldValuesAttachments:je.setMany,updateIssueTypeFieldValuesAttachment:je.updateOne,updateIssueTypeFieldValuesAttachments:je.updateMany,deleteIssueTypeFieldValuesAttachment:je.deleteOne,deleteIssueTypeFieldValuesAttachments:je.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:MA,addIssueTypeFieldValuesAttachment:RA,addIssueTypeFieldValuesAttachments:Gi,setIssueTypeFieldValuesAttachment:wA,setIssueTypeFieldValuesAttachments:EA,updateIssueTypeFieldValuesAttachment:BA,updateIssueTypeFieldValuesAttachments:VA,deleteIssueTypeFieldValuesAttachment:vA,deleteIssueTypeFieldValuesAttachments:Hi}=Ni.actions,zA=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Wi=l.createSelector([zA],t=>Object.values(t)),jA=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],qA=A(l.createSelector([Wi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),DA=A(l.createSelector([Wi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),$A=Ni.reducer,qe=F(t=>t.uuid),CA={instances:{}},Ki=l.createSlice({name:"issueTypeIdentifiers",initialState:CA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,CA)),reducers:{initializeIssueTypeIdentifiers:qe.initialize,addIssueTypeIdentifier:qe.addOne,addIssueTypeIdentifiers:qe.addMany,setIssueTypeIdentifier:qe.setOne,setIssueTypeIdentifiers:qe.setMany,updateIssueTypeIdentifier:qe.updateOne,updateIssueTypeIdentifiers:qe.updateMany,deleteIssueTypeIdentifier:qe.deleteOne,deleteIssueTypeIdentifiers:qe.deleteMany}}),{initializeIssueTypeIdentifiers:UA,addIssueTypeIdentifier:LA,addIssueTypeIdentifiers:kA,setIssueTypeIdentifier:NA,setIssueTypeIdentifiers:GA,updateIssueTypeIdentifier:HA,updateIssueTypeIdentifiers:WA,deleteIssueTypeIdentifier:KA,deleteIssueTypeIdentifiers:YA}=Ki.actions,ZA=t=>t.issueTypeIdentifierReducer.instances,Yi=l.createSelector([ZA],t=>Object.values(t)),JA=t=>s=>s.issueTypeIdentifierReducer.instances[t],XA=A(l.createSelector([Yi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),DP=A(l.createSelector([Yi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),QA=Ki.reducer,De=F(t=>t.uuid),xA={instances:{}},Zi=l.createSlice({name:"issueTypeIdentifierValues",initialState:xA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,xA)),reducers:{initializeIssueTypeIdentifierValues:De.initialize,addIssueTypeIdentifierValue:De.addOne,addIssueTypeIdentifierValues:De.addMany,setIssueTypeIdentifierValue:De.setOne,setIssueTypeIdentifierValues:De.setMany,updateIssueTypeIdentifierValue:De.updateOne,updateIssueTypeIdentifierValues:De.updateMany,deleteIssueTypeIdentifierValue:De.deleteOne,deleteIssueTypeIdentifierValues:De.deleteMany}}),{initializeIssueTypeIdentifierValues:ef,addIssueTypeIdentifierValue:tf,addIssueTypeIdentifierValues:sf,setIssueTypeIdentifierValue:nf,setIssueTypeIdentifierValues:af,updateIssueTypeIdentifierValue:cf,updateIssueTypeIdentifierValues:df,deleteIssueTypeIdentifierValue:rf,deleteIssueTypeIdentifierValues:uf}=Zi.actions,lf=t=>t.issueTypeIdentifierValueReducer.instances,qt=l.createSelector([lf],t=>Object.values(t)),of=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],hf=A(l.createSelector([qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),$P=A(l.createSelector([qt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),CP=A(l.createSelector([qt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type_identifier===s)))),mf=Zi.reducer,$e=F(t=>t.uuid),yf={instances:{}},Ji=l.createSlice({name:"issueTypes",initialState:yf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,yf)),reducers:{initializeIssueTypes:$e.initialize,addIssueType:$e.addOne,addIssueTypes:$e.addMany,setIssueType:$e.setOne,setIssueTypes:$e.setMany,updateIssueType:$e.updateOne,updateIssueTypes:$e.updateMany,deleteIssueType:$e.deleteOne,deleteIssueTypes:$e.deleteMany}}),{initializeIssueTypes:pf,addIssueType:Af,addIssueTypes:ff,setIssueType:Sf,setIssueTypes:Tf,updateIssueType:If,updateIssueTypes:Of,deleteIssueType:Pf,deleteIssueTypes:Ff}=Ji.actions,_f=t=>t.issueTypeReducer.instances,Xi=l.createSelector(_f,t=>Object.values(t)),bf=t=>s=>s.issueTypeReducer.instances[t],gf=A(l.createSelector([Xi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),UP=A(l.createSelector([Xi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Mf=Ji.reducer,Ce=F(t=>t.uuid),Rf={instances:{}},Qi=l.createSlice({name:"issueTypeStatuses",initialState:Rf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,Rf)),reducers:{initializeIssueTypeStatuses:Ce.initialize,addIssueTypeStatus:Ce.addOne,addIssueTypeStatuses:Ce.addMany,setIssueTypeStatus:Ce.setOne,setIssueTypeStatuses:Ce.setMany,updateIssueTypeStatus:Ce.updateOne,updateIssueTypeStatuses:Ce.updateMany,deleteIssueTypeStatus:Ce.deleteOne,deleteIssueTypeStatuses:Ce.deleteMany}}),{initializeIssueTypeStatuses:wf,addIssueTypeStatus:Ef,addIssueTypeStatuses:Bf,setIssueTypeStatus:Vf,setIssueTypeStatuses:vf,updateIssueTypeStatus:zf,updateIssueTypeStatuses:jf,deleteIssueTypeStatus:qf,deleteIssueTypeStatuses:Df}=Qi.actions,$f=t=>t.issueTypeStatusReducer.instances,xi=l.createSelector([$f],t=>f(Object.values(t).toSorted(xn))),en=t=>s=>s.issueTypeStatusReducer.instances[t],Cf=A(l.createSelector([xi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),LP=A(l.createSelector([xi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),Uf=Qi.reducer,Ue=F(t=>t.uuid),Lf={instances:{}},tn=l.createSlice({name:"issueUpdates",initialState:Lf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,Lf)),reducers:{initializeIssueUpdates:Ue.initialize,addIssueUpdate:Ue.addOne,addIssueUpdates:Ue.addMany,setIssueUpdate:Ue.setOne,setIssueUpdates:Ue.setMany,updateIssueUpdate:Ue.updateOne,updateIssueUpdates:Ue.updateMany,deleteIssueUpdate:Ue.deleteOne,deleteIssueUpdates:Ue.deleteMany}}),{initializeIssueUpdates:kf,addIssueUpdate:sn,addIssueUpdates:nn,setIssueUpdate:Nf,setIssueUpdates:Gf,updateIssueUpdate:Hf,updateIssueUpdates:Wf,deleteIssueUpdate:an,deleteIssueUpdates:cn}=tn.actions,dn=t=>t.issueUpdateReducer.instances,rn=l.createSelector([dn],t=>Object.values(t)),Kf=A(l.createSelector([dn,(t,s)=>s],(t,s)=>t[s])),Yf=A(l.createSelector([rn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Zf=A(l.createSelector([rn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),Jf=tn.reducer,Le=F(t=>t.uuid),Xf={instances:{},currentUser:null},un=l.createSlice({name:"users",initialState:Xf,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Xf)).addCase(_,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:Le.initialize,setUsers:Le.setMany,setUser:Le.setOne,addUsers:Le.addMany,addUser:Le.addOne,updateUsers:Le.updateMany,updateUser:Le.updateOne,deleteUser:Le.deleteOne,deleteUsers:Le.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload}}}),{initializeUsers:Qf,setUsers:xf,setUser:eS,addUsers:tS,addUser:ln,updateUsers:sS,updateUser:iS,deleteUser:on,deleteUsers:nS,setCurrentUser:kP}=un.actions,aS=un.reducer,cS=t=>t.userReducer.currentUser,hn=t=>t.userReducer.instances,Dt=l.createSelector([hn],t=>Object.values(t)),$t=t=>s=>s.userReducer.instances[t],dS=A(l.createSelector([Dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ke=F(t=>t.uuid),rS={instances:{}},mn=l.createSlice({name:"organizationAccess",initialState:rS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,rS)),reducers:{initializeOrganizationAccesses:ke.initialize,addOrganizationAccess:ke.addOne,addOrganizationAccesses:ke.addMany,setOrganizationAccess:ke.setOne,setOrganizationAccesses:ke.setMany,updateOrganizationAccess:ke.updateOne,updateOrganizationAccesses:ke.updateMany,deleteOrganizationAccess:ke.deleteOne,deleteOrganizationAccesses:ke.deleteMany}}),{initializeOrganizationAccesses:uS,addOrganizationAccess:lS,addOrganizationAccesses:oS,setOrganizationAccess:hS,setOrganizationAccesses:mS,updateOrganizationAccess:yS,updateOrganizationAccesses:pS,deleteOrganizationAccess:AS,deleteOrganizationAccesses:fS}=mn.actions,SS=mn.reducer,Ct=t=>t.organizationAccessReducer.instances,TS=t=>s=>s.organizationAccessReducer.instances[t],IS=A(l.createSelector([Ct,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),NP=l.createSelector([cS,Ct],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.uuid))??null),OS=l.createSelector([Ct],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return St(s)}),GP=A(l.createSelector([hn,OS,(t,s)=>s],(t,s,e)=>f(Object.values(t).filter(n=>{const a=s[n.uuid];return!!a&&a.organization===e})))),Ne=F(t=>t.uuid),PS={instances:{}},yn=l.createSlice({name:"organizations",initialState:PS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,PS)),reducers:{initializeOrganizations:Ne.initialize,setOrganizations:Ne.setMany,setOrganization:Ne.setOne,addOrganizations:Ne.addMany,addOrganization:Ne.addOne,updateOrganizations:Ne.updateMany,updateOrganization:Ne.updateOne,deleteOrganization:Ne.deleteOne,deleteOrganizations:Ne.deleteMany}}),{initializeOrganizations:FS,setOrganizations:_S,setOrganization:bS,addOrganizations:gS,addOrganization:MS,updateOrganizations:RS,updateOrganization:wS,deleteOrganization:ES,deleteOrganizations:BS}=yn.actions,VS=t=>t.organizationReducer.instances,vS=l.createSelector([VS],t=>Object.values(t)),zS=t=>s=>s.organizationReducer.instances[t],jS=A(l.createSelector([vS,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),qS=yn.reducer,DS=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:Xe.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},$S={deletedRequests:[],latestRetryTime:0},pn=l.createSlice({name:"outbox",initialState:$S,extraReducers:t=>t.addCase(O,s=>Object.assign(s,$S)),reducers:{enqueueRequest:{reducer:(t,s)=>t,prepare:t=>{console.debug("Preparing to enqueue request",t.url);const{BASE_URL:s,serviceName:e,...n}=t;return DS(n,s,e)}},markForDeletion(t,s){t.deletedRequests.push(s.payload)},markAsDeleted(t,s){const e=t.deletedRequests.indexOf(s.payload);e!==-1&&t.deletedRequests.splice(e,1)},_setLatestRetryTime:(t,s)=>{t.latestRetryTime=s.payload}}}),HP=t=>t.outboxReducer.deletedRequests,WP=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:CS,markForDeletion:KP,markAsDeleted:US,_setLatestRetryTime:LS}=pn.actions,kS=pn.reducer,Ge=F(t=>t.uuid),NS={instances:{}},An=l.createSlice({name:"projectAccess",initialState:NS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,NS)),reducers:{initializeProjectAccesses:Ge.initialize,addProjectAccess:Ge.addOne,addProjectAccesses:Ge.addMany,setProjectAccess:Ge.setOne,setProjectAccesses:Ge.setMany,updateProjectAccess:Ge.updateOne,updateProjectAccesses:Ge.updateMany,deleteProjectAccess:Ge.deleteOne,deleteProjectAccesses:Ge.deleteMany}}),{initializeProjectAccesses:GS,addProjectAccess:HS,addProjectAccesses:WS,setProjectAccess:KS,setProjectAccesses:YS,updateProjectAccess:ZS,updateProjectAccesses:JS,deleteProjectAccess:XS,deleteProjectAccesses:QS}=An.actions,xS=An.reducer,fn=t=>t.projectAccessReducer.instances,yt=l.createSelector(fn,t=>Object.values(t)),eT=t=>s=>s.projectAccessReducer.instances[t],tT=A(l.createSelector([yt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),YP=A(l.createSelector([fn,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.project===s)))),ZP=A(l.createSelector([yt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.project===s))e[n.user]=n;return e})),JP=A(l.createSelector([Dt,yt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.project===e).map(a=>a.user));return f(t.filter(a=>n.has(a.uuid)))})),He=F(t=>t.uuid),sT={instances:{}},Sn=l.createSlice({name:"projectAttachments",initialState:sT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,sT)),reducers:{initializeProjectAttachments:He.initialize,addProjectAttachment:He.addOne,addProjectAttachments:He.addMany,setProjectAttachment:He.setOne,setProjectAttachments:He.setMany,updateProjectAttachment:He.updateOne,updateProjectAttachments:He.updateMany,deleteProjectAttachment:He.deleteOne,deleteProjectAttachments:He.deleteMany}}),{initializeProjectAttachments:iT,addProjectAttachment:nT,addProjectAttachments:aT,setProjectAttachment:cT,setProjectAttachments:dT,updateProjectAttachment:rT,updateProjectAttachments:uT,deleteProjectAttachment:lT,deleteProjectAttachments:oT}=Sn.actions,hT=t=>t.projectAttachmentReducer.instances,Tn=l.createSelector([hT],t=>Object.values(t)),mT=t=>s=>s.projectAttachmentReducer.instances[t],yT=A(l.createSelector([Tn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),XP=A(l.createSelector([Tn,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>s===e)))),pT=Sn.reducer,We=F(t=>t.uuid),AT={instances:{}},In=l.createSlice({name:"projectFiles",initialState:AT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,j,_),s=>Object.assign(s,AT)),reducers:{initializeProjectFiles:We.initialize,setProjectFile:We.setOne,setProjectFiles:We.setMany,addProjectFile:We.addOne,addProjectFiles:We.addMany,updateProjectFile:We.updateOne,updateProjectFiles:We.updateMany,deleteProjectFile:We.deleteOne,deleteProjectFiles:We.deleteMany}}),{initializeProjectFiles:fT,setProjectFile:ST,setProjectFiles:TT,addProjectFile:IT,addProjectFiles:OT,updateProjectFile:PT,updateProjectFiles:FT,deleteProjectFile:_T,deleteProjectFiles:bT}=In.actions,gT=t=>t.projectFileReducer.instances,MT=l.createSelector([gT],t=>f(Object.values(t).sort((s,e)=>s.z_index-e.z_index))),RT=t=>s=>s.projectFileReducer.instances[t],wT=A(l.createSelector([MT,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ET=In.reducer,Ke=F(t=>t.uuid),BT={instances:{}},On=l.createSlice({name:"projects",initialState:BT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,BT)),reducers:{initializeProjects:Ke.initialize,setProjects:Ke.setMany,setProject:Ke.setOne,addProjects:Ke.addMany,addProject:Ke.addOne,updateProjects:Ke.updateMany,updateProject:Ke.updateOne,deleteProject:Ke.deleteOne,deleteProjects:Ke.deleteMany}}),{initializeProjects:VT,setProjects:vT,setProject:zT,addProjects:jT,addProject:qT,updateProjects:DT,updateProject:$T,deleteProject:CT,deleteProjects:UT}=On.actions,LT=On.reducer,kT=t=>t.projectReducer.instances,Ut=l.createSelector([kT],t=>Object.values(t)),NT=t=>s=>s.projectReducer.instances[t],GT=A(l.createSelector([Ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),QP=A(l.createSelector([Ut,yt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.user===e).map(a=>a.project));return f(t.filter(a=>n.has(a.uuid)))})),xP=A(l.createSelector([Ut,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),eF={isRehydrated:!1},Pn=l.createSlice({name:"rehydrated",initialState:eF,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:tF}=Pn.actions,sF=t=>t.rehydratedReducer.isRehydrated,HT=Pn.reducer,Ye=F(t=>t.uuid),WT={instances:{}},Fn=l.createSlice({name:"teamMemberships",initialState:WT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,WT)),reducers:{initializeTeamMemberships:Ye.initialize,addTeamMembership:Ye.addOne,addTeamMemberships:Ye.addMany,setTeamMembership:Ye.setOne,setTeamMemberships:Ye.setMany,updateTeamMembership:Ye.updateOne,updateTeamMemberships:Ye.updateMany,deleteTeamMembership:Ye.deleteOne,deleteTeamMemberships:Ye.deleteMany}}),{initializeTeamMemberships:KT,addTeamMembership:YT,addTeamMemberships:ZT,setTeamMembership:JT,setTeamMemberships:XT,updateTeamMembership:QT,updateTeamMemberships:xT,deleteTeamMembership:eI,deleteTeamMemberships:tI}=Fn.actions,sI=Fn.reducer,iI=t=>t.teamMembershipReducer.instances,Lt=l.createSelector([iI],t=>Object.values(t)),nI=t=>s=>s.teamMembershipReducer.instances[t],aI=A(l.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),iF=A(l.createSelector([Lt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.team===s))e[n.user]=n;return e})),nF=A(l.createSelector([Dt,Lt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.team===e).map(a=>a.user));return f(t.filter(a=>n.has(a.uuid)))})),Ze=F(t=>t.uuid),cI={instances:{}},_n=l.createSlice({name:"teams",initialState:cI,extraReducers:t=>t.addMatcher(l.isAnyOf(O,_),s=>Object.assign(s,cI)),reducers:{initializeTeams:Ze.initialize,addTeam:Ze.addOne,addTeams:Ze.addMany,setTeam:Ze.setOne,setTeams:Ze.setMany,updateTeam:Ze.updateOne,updateTeams:Ze.updateMany,deleteTeam:Ze.deleteOne,deleteTeams:Ze.deleteMany}}),{initializeTeams:dI,addTeam:rI,addTeams:uI,setTeam:lI,setTeams:oI,updateTeam:hI,updateTeams:mI,deleteTeam:yI,deleteTeams:pI}=_n.actions,AI=t=>t.teamReducer.instances,bn=l.createSelector([AI],t=>Object.values(t)),fI=t=>s=>s.teamReducer.instances[t],SI=A(l.createSelector([bn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),aF=A(l.createSelector([bn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),TI=_n.reducer,cF={version:0},II=l.createSlice({name:"versioning",initialState:cF,reducers:{}}),OI=II.reducer,gn={outboxReducer:kS,fileReducer:ch,authReducer:wo},dF=l.combineReducers(gn),PI={...gn,[lt]:OI,assetReducer:jr,assetAttachmentReducer:Ia,assetStageCompletionReducer:Wr,assetStageReducer:du,assetTypeReducer:ho,assetTypeAttachmentReducer:Pu,issueReducer:Fp,issueAttachmentReducer:Dy,issueTypeReducer:Mf,issueTypeAttachmentReducer:Dp,organizationReducer:qS,projectReducer:LT,projectAttachmentReducer:pT,projectAccessReducer:xS,organizationAccessReducer:SS,projectFileReducer:ET,rehydratedReducer:HT,formReducer:Sm,formRevisionReducer:dm,formRevisionAttachmentReducer:Yh,formSubmissionAttachmentReducer:vm,formSubmissionReducer:Wm,formIdentifierReducer:Ih,formIdentifierValueReducer:zh,userReducer:aS,documentsReducer:eh,documentAttachmentReducer:No,teamReducer:TI,agentsReducer:da,issueCommentReducer:lp,issueCommentAttachmentReducer:Xy,issueUpdateReducer:Jf,geoImageReducer:cy,issueAssociationReducer:_y,issueTypeFieldsReducer:bA,issueTypeFieldValuesReducer:oA,issueTypeFieldsAttachmentReducer:Xp,issueTypeFieldValuesAttachmentReducer:$A,issueTypeIdentifierReducer:QA,issueTypeIdentifierValueReducer:mf,issueTypeStatusReducer:Uf,assetTypeFieldsReducer:Ju,assetTypeFieldValuesReducer:Fl,assetTypeFieldsAttachmentReducer:qu,assetTypeFieldValuesAttachmentReducer:ul,assetTypeIdentifierReducer:Dl,assetTypeIdentifierValueReducer:Xl,assetTypeStatusReducer:go,assetProcedureTypeReducer:ad,assetProcedureReducer:Gc,assetProcedureTypeFieldsReducer:ac,assetProcedureTypeFieldValuesReducer:Vc,assetProcedureTypeFieldsAttachmentReducer:Ha,assetProcedureTypeFieldValuesAttachmentReducer:fc,assetProcedureTypeAttachmentReducer:Ba,assetProcedureStepFieldsAttachmentReducer:Pd,assetProcedureStepFieldsReducer:jd,assetProcedureStepFieldValuesAttachmentReducer:Yd,assetProcedureStepFieldValuesReducer:rr,assetProcedureStepReducer:Tr,teamMembershipReducer:sI},rF=l.combineReducers(PI),FI=1e4,_I=200,Mn=[400,409,403,404,405,500],Je=1e4,bI={};class gI{constructor(s){m(this,"client");m(this,"pageSize",FI);bI[this.constructor.name]=this,this.client=s}async performRequest(s,e){return this.client.performRequest(this.host,s,this,e)}async enqueueRequest(s){return this.client.enqueueRequest(s,this.host,this.constructor.name)}async performPagination(s,e){return this.client.performPagination(this.host,s,this.pageSize,this,e)}dispatch(s){this.client.store.dispatch(s)}select(s){return s(this.client.store.getState())}}const MI=()=>EI.length-1,RI=t=>(t[lt]={version:MI()},t),wI=()=>RI({}),uF=t=>(t.outboxReducer&&(t.outboxReducer.deletedRequests=[]),t),lF=t=>s=>{var e;return s===void 0&&(s={}),((e=s[lt])==null?void 0:e.version)===MI()?s:t(s)},EI=[RI,wI,wI,uF],oF=Object.fromEntries(EI.map((t,s)=>[s,lF(t)])),hF=t=>{if(t)throw t;const s=rt();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},BI=(t,s,e)=>{const n=it();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},VI=(t,s,e)=>{const n=it();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const c=s.meta.offlineAction.payload.uuid;return n.remove(c),n.getQueue()};async function mF(t,s){if(!s.payload)throw new Error("Received empty payload");return WI(s)}const yF={...zn,effect:mF,discard:zI,returnPromises:!0,persistCallback:hF,retry:SF,persistOptions:{storage:xI},queue:{...zn.queue,enqueue:BI,dequeue:VI,peek:(...t)=>fF(...t)}},pF=eO(oF,lt),AF=l.compose(QI.offline(yF),pF);async function vI(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=bI[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return wn(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,a,e)}function zI(t,s,e=0){var y;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
|
|
2
2
|
Url:`,s.payload.url,`
|
|
3
|
-
Retries:`,e),!(t instanceof Error))throw console.error("ENCOUNTERED NON-ERROR ERROR:",t,"(throwing immediately, which may lead to unexpected behavior)"),t;const n=
|
|
4
|
-
Action:`,s);const p=it();if(!p)throw new Error("Outbox coordinator not set");p.remove(s.payload.uuid),t.options.discard=!0,u()}}console.debug("Registering a retry for request:",s.payload.uuid);const r=it();if(!r)throw new Error("Outbox coordinator not set");return r.registerRetry(s.payload.uuid),!1}function
|
|
3
|
+
Retries:`,e),!(t instanceof Error))throw console.error("ENCOUNTERED NON-ERROR ERROR:",t,"(throwing immediately, which may lead to unexpected behavior)"),t;const n=rt(),c=n.getState().outboxReducer.deletedRequests,d=s.payload.uuid;function u(){n.dispatch(US(d));const o=it();if(!o)throw new Error("Outbox coordinator not set");o.remove(s.payload.uuid);const p=s.meta.offline.rollback;throw p&&(console.warn("Rolling back request due to SDK error:",s),n.dispatch(p)),t}if(t instanceof U&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",s.payload.url),u()),c.includes(d)&&(console.debug("Discarding request due to deletion:",s.payload.url),u()),t instanceof U){const o=t.status||((y=t.response)==null?void 0:y.status);if(o||console.warn("Error has no status code:",t),t.options.discard!==!1&&o!==void 0&&Mn.includes(o)){console.warn("Discarding request due to error:",t,`
|
|
4
|
+
Action:`,s);const p=it();if(!p)throw new Error("Outbox coordinator not set");p.remove(s.payload.uuid),t.options.discard=!0,u()}}console.debug("Registering a retry for request:",s.payload.uuid);const r=it();if(!r)throw new Error("Outbox coordinator not set");return r.registerRetry(s.payload.uuid),!1}function fF(t,s,e){var n;return(n=it())==null?void 0:n.peek()}function SF(t,s){return rt().dispatch(LS(new Date().getTime())),Ln}const ct="An unknown error occurred",TF=500,jI=["non_field_errors","detail"];function IF(t,s){let e;if(t!=null&&t.body)if(typeof t.body=="object"){const n=t.body;if(typeof n.error=="string")e=n.error;else if(typeof n.message=="string")e=n.message;else try{e=Object.entries(n).map(([a,c])=>typeof c=="string"?jI.includes(a)?c:`${a}: ${c}`:Array.isArray(c)?jI.includes(a)?c.join(`
|
|
5
5
|
`):c.map(d=>`${a}: ${d}`).join(`
|
|
6
6
|
`):`${a}: ${JSON.stringify(c)}`).join(`
|
|
7
|
-
`)}catch(a){console.error("Failed to extract error message from response body",a)}}else typeof t.body=="string"&&(e=t.body);else t!=null&&t.text?e=t.text:s instanceof Error&&(e=s.message);return!e||e.length>fF?at:e}class L extends Error{constructor(e){super(at);m(this,"status");m(this,"response");m(this,"message");m(this,"options");const{response:n,innerError:a}=e;this.message=e.message??SF(n,a)??at,this.status=(n==null?void 0:n.status)??0,this.response=n,this.options=e}}function zI(t){function s(e){return typeof e=="object"&&e!==null&&["ok","redirect","clientError","serverError","error"].every(a=>a in e)}if(s(t))return t;if(typeof t=="object"&&t!==null){const e=t;if(s(e.response))return e.response;if(e.response&&s(e.response.response))return e.response.response}}class jI extends _I{constructor(s){super(s)}applyAuth(s){const e=this.getAuthHeader();return e?s.set("Authorization",e):s}isAuthFailure(s){return s.status===401}}class st extends _I{constructor(e,n){super(e);m(this,"auth");this.auth=n}}class TF extends st{async startConversation(s,e){return this.enqueueRequest({description:"Start agent conversation",method:h.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:e},blockers:["prompt"],blocks:["prompt"]}).then(n=>(this.dispatch(sa(n)),n))}async continueConversation(s,e,n){return this.enqueueRequest({description:"Prompt agent",method:h.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:n},blockers:["prompt"],blocks:["prompt"],queryParams:{conversation_id:e}}).then(a=>{this.dispatch(na(a))})}async fetchDetails(s){return this.enqueueRequest({description:"Get agent conversation",method:h.GET,url:`/agents/conversations/${s}/`,blockers:["conversation"],blocks:["conversation"]}).then(e=>{this.dispatch(ia(e))})}async rate(s,e){return this.enqueueRequest({description:"Rate agent response",method:h.PUT,url:`/agents/responses/${s}/rate/`,payload:{rating:e},blockers:["rate"],blocks:["rate"]})}async list(s,e){return this.performRequest({method:h.GET,url:"/agents/conversations/",...s},e)}async refreshStore(s,e){const n=await this.list({queryParams:{project:s}},e);return this.dispatch(ta(n)),n}}function tt(t,s){const e=[];let n=0;const a=t.length;for(;n<a;)e.push(t.slice(n,n+=s));return e}function S(t,s,e){const n=`${s}${e?"s":""}`;switch(t){case h.GET:return`Get ${n}`;case h.POST:return`Create ${n}`;case h.PATCH:return`Update ${n}`;case h.PUT:return`Update ${n}`;case h.DELETE:return`Delete ${n}`}}class E extends st{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:h.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:h.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:h.GET,...s},e)}}class q extends E{constructor(){super(...arguments);m(this,"pageSize",PI)}async add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions;let d,u=null,r=null;if("file"in e){const{file:g,...b}=e;u=await this.client.files.getFilePayload(g),r=URL.createObjectURL(g),d={...b,file_sha1:u.sha1,file_type:u.file_type,file_name:g.name,file_extension:u.extension,file_url:r}}else d=e;const y=this.buildModel(d),o=this.buildPayload(y);this.dispatch(n(y));const p=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:{...o,...u?{file:u}:{}},blockers:this.getBlockers(y),blocks:this.getBlocks(y)});p.then(({instance:g})=>{this.dispatch(a(g))}).catch(g=>{throw this.dispatch(c(this.getId(y))),g}).finally(()=>{r&&URL.revokeObjectURL(r)});const T=p.then(({instance:g})=>g),B=p.then(async({instance:g,presigned_url:b})=>{try{return b&&await this.client.files.processPresignedUrl(g.file_sha1,b),g.file_sha1}catch(I){throw console.error("Upload to s3 using presigned url failed.",I),I}});return[y,T,B]}async bulkAdd(e,n){const{addMany:a,updateMany:c,deleteMany:d}=this.actions,u=new Date().toISOString(),r=[],y=new Set,o=tt(e,Math.min(n??e.length,Je)),p=[];for(const b of o){const I=[],M={},w=[],C=[];for(const D of b){let j;if("file"in D){const{file:Bn,...z_}=D,rt=await this.client.files.getFilePayload(Bn);rt.sha1 in M||(M[rt.sha1]=rt);const KI=URL.createObjectURL(Bn);y.add(KI),j={...z_,file_sha1:rt.sha1,file_type:rt.file_type,file_name:Bn.name,file_extension:rt.extension,file_url:KI}}else j=D;const $=this.buildModel(j);r.push($);const k=this.buildBulkPayload($);I.push(k);const Lt=this.getBlockers($);w.push(...Lt);const v_=this.getBlocks($);C.push(...v_)}const v={payloads:I,submittedAt:u,files:Object.values(M),blockers:w,blocks:C};p.push(v)}this.dispatch(a(r));const T=p.map(b=>{const{submittedAt:I,files:M,payloads:w,blocks:C,blockers:v}=b;return this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:I,files:M,payloads:w},blockers:v,blocks:C})});Promise.all(T).then(b=>{const I=b.flatMap(M=>M.instances);this.dispatch(c(I))}).catch(b=>{throw this.dispatch(d(r.map(I=>this.getId(I)))),console.error(b),b}).finally(()=>{for(const b of y)URL.revokeObjectURL(b)});const B=Promise.all(T).then(b=>b.flatMap(({instances:I})=>I)),g=Promise.all(T).then(async b=>{const I=[];for(const{presigned_urls:M}of b){const w=this.client.files.processPresignedUrls(M);for(const[C,v]of Object.entries(w))try{await v,I.push(C)}catch(D){throw console.error("Upload to s3 using presigned url failed.",D),D}}return I});return[r,B,g]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Attempting to delete ${this.name} with pk ${e} that does not exist in the store`);this.dispatch(a(this.getId(d)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(d)),u}}}class IF extends q{constructor(){super(...arguments);m(this,"name","Asset attachment");m(this,"url","/asset-attachments");m(this,"actions",{addOne:ra,addMany:Xt,setOne:ua,setMany:la,updateOne:oa,updateMany:ha,deleteOne:ma,deleteMany:Qt,initialize:da});m(this,"selectors",{selectById:pa,selectByIds:Aa})}getId(e){return e.uuid}getBlockers(e){const{asset:n}=e;return[n]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(a(d)),d}}class OF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure");m(this,"url","/asset-procedures");m(this,"actions",{addOne:qc,addMany:os,setOne:Uc,setMany:Lc,updateOne:Dc,updateMany:$c,deleteOne:Cc,deleteMany:hs,initialize:jc});m(this,"selectors",{selectById:Hc,selectByIds:Wc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset_procedure_type,e.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset procedure with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset procedure with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class PF extends q{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Field Values Attachment");m(this,"url","/asset-procedure-step-field-values-attachments");m(this,"actions",{addOne:qd,addMany:Is,setOne:Dd,setMany:$d,updateOne:Cd,updateMany:Ud,deleteOne:Ld,deleteMany:Os,initialize:jd});m(this,"selectors",{selectById:Nd,selectByIds:Gd})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class FF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Field Values");m(this,"url","/asset-procedure-step-field-values");m(this,"actions",{addOne:Zd,addMany:Jd,setOne:Xd,setMany:Qd,updateOne:xd,updateMany:er,deleteOne:tr,deleteMany:sr,initialize:Yd});m(this,"selectors",{selectById:nr,selectByIds:ar})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision,e.asset_procedure],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{payloads:a,values:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=this.select(b=>{var I;return((I=b.userReducer.currentUser)==null?void 0:I.uuid)??null}),p=[],T=tt(a,Math.min(n??a.length,Je)),B=[];for(const b of T){const I=[];for(const M of b){const w=P({...M,values:M.values,created_by:o,submitted_at:y});p.push(w),I.push({uuid:w.uuid,asset:M.asset,fields_revision:M.fields_revision,asset_procedure:M.asset_procedure,asset_procedure_step:M.asset_procedure_step,published_at:M.published_at,values:w.values})}B.push({submitted_at:y,values:c,field_values:I})}this.dispatch(d(p));const g=[];for(const b of B){const{field_values:I}=b,M=I.map(({asset:j})=>j),w=I.map(({fields_revision:j})=>j),C=I.map(({asset_procedure:j})=>j),v=I.map(({uuid:j})=>j),D=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:b,blockers:M.concat(w).concat(C),blocks:v});g.push(D)}return Promise.all(g).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(r(V(p)))}),[p,g]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetProcedureStepFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.fields_revision,d.asset,d.asset_procedure],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Hd(e));this.dispatch(n(e)),this.dispatch(Os(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(Is(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class _F extends q{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Fields Attachment");m(this,"url","/asset-procedure-step-fields-attachments");m(this,"actions",{addOne:ud,addMany:ld,setOne:od,setMany:hd,updateOne:md,updateMany:yd,deleteOne:pd,deleteMany:Ad,initialize:rd});m(this,"selectors",{selectById:Sd,selectByIds:Td})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,field_identifier:e.field_identifier,fields_revision:e.fields_revision,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension}}buildBulkPayload(e){return{uuid:e.uuid,field_identifier:e.field_identifier,fields_revision:e.fields_revision,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_procedure_step__organization:e}},n);return this.dispatch(a(c)),c}}class bF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Fields");m(this,"url","/asset-procedure-step-fields");m(this,"actions",{addOne:Fd,addMany:_d,setOne:bd,setMany:gd,updateOne:Md,updateMany:Rd,deleteOne:wd,deleteMany:Ed,initialize:Pd});m(this,"selectors",{selectById:Bd,selectByIds:Vd})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_step],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`AssetProcedureStepFields with uuid ${e.uuid} not found`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`AssetProcedureStepFields with uuid ${e} not found`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_step__asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class gF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step");m(this,"url","/asset-procedure-steps");m(this,"actions",{addOne:or,addMany:hr,setOne:ur,setMany:lr,updateOne:mr,updateMany:yr,deleteOne:pr,deleteMany:Ar,initialize:rr});m(this,"selectors",{selectById:Sr,selectByIds:Tr})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset procedure step with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:{name:e.name,description:e.description,priority:e.order,color:e.color},blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteMany:n,addMany:a,addOne:c,deleteOne:d}=this.actions,{selectById:u}=this.selectors,r=this.select(u(e));if(!r)throw new Error(`No asset procedure step with uuid ${e} found in the store`);const y=this.select(Ir(e));this.dispatch(d(e)),this.dispatch(n(V(y)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(c(r)),this.dispatch(a(y)),o}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class MF extends q{constructor(){super(...arguments);m(this,"name","Asset Procedure Attachment");m(this,"url","/asset-procedure-type-attachments");m(this,"actions",{addOne:Oa,addMany:Pa,setOne:Fa,setMany:_a,updateOne:ba,updateMany:ga,deleteOne:Ma,deleteMany:Ra,initialize:Ia});m(this,"selectors",{selectById:Ba,selectByIds:Va})}getId(e){return e.uuid}getBlockers(e){return[e.asset_procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const{asset_procedure_type:n,file_sha1:a,file_extension:c,file_name:d,file_type:u,file_url:r}=e,y=this.select(p=>{var T;return((T=p.userReducer.currentUser)==null?void 0:T.uuid)??null}),o=new Date().toISOString();return P({file_url:r,file_sha1:a,file_extension:c,file_name:d,file_type:u,created_by:y,submitted_at:o,asset_procedure_type:n})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_procedure_type:e.asset_procedure_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_procedure_type:e.asset_procedure_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class RF extends q{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Field Values Attachment");m(this,"url","/asset-procedure-type-field-values-attachments");m(this,"actions",{addOne:uc,addMany:cs,setOne:lc,setMany:oc,updateOne:hc,updateMany:mc,deleteOne:yc,deleteMany:ds,initialize:rc});m(this,"selectors",{selectById:fc,selectByIds:Sc})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class wF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Field Values");m(this,"url","/asset-procedure-type-field-values");m(this,"actions",{addOne:Pc,addMany:Fc,setOne:_c,setMany:bc,updateOne:gc,updateMany:Mc,deleteOne:Rc,deleteMany:wc,initialize:Oc});m(this,"selectors",{selectById:Vc,selectByIds:vc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision,e.asset_procedure],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{values:a,payloads:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=this.select(b=>{var I;return((I=b.userReducer.currentUser)==null?void 0:I.uuid)??null}),p=[],T=tt(c,Math.min(n??c.length,Je)),B=[];for(const b of T){const I=[];for(const M of b){const w=P({...M,values:M.values,created_by:o,submitted_at:y});p.push(w),I.push({uuid:w.uuid,asset:M.asset,fields_revision:M.fields_revision,asset_procedure:M.asset_procedure,published_at:M.published_at,values:w.values})}B.push({submitted_at:y,values:a,field_values:I})}this.dispatch(d(p));const g=[];for(const b of B){const{field_values:I}=b,M=I.map(({asset:j})=>j),w=I.map(({fields_revision:j})=>j),C=I.map(({asset_procedure:j})=>j),v=I.map(({uuid:j})=>j),D=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:b,blockers:M.concat(w).concat(C),blocks:v});g.push(D)}return Promise.all(g).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(r(V(p)))}),[p,g]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetProcedureTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.fields_revision,d.asset,d.asset_procedure],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Tc(e));this.dispatch(n(e)),this.dispatch(ds(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(cs(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class EF extends q{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Fields Attachment");m(this,"url","/asset-procedure-type-fields-attachments");m(this,"actions",{addOne:ja,addMany:qa,setOne:Da,setMany:$a,updateOne:Ca,updateMany:Ua,deleteOne:La,deleteMany:ka,initialize:za});m(this,"selectors",{selectById:Ha,selectByIds:Wa})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class BF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Fields");m(this,"url","/asset-procedure-type-fields");m(this,"actions",{addOne:Za,addMany:Ja,setOne:Xa,setMany:Qa,updateOne:xa,updateMany:ec,deleteOne:tc,deleteMany:sc,initialize:Ya});m(this,"selectors",{selectById:ac,selectByIds:cc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class VF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type");m(this,"url","/asset-procedure-types");m(this,"actions",{addOne:Zc,addMany:Jc,setOne:td,setMany:sd,updateOne:Xc,updateMany:Qc,deleteOne:xc,deleteMany:ed,initialize:Yc});m(this,"selectors",{selectById:ad,selectByIds:cd})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset procedure type with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset procedure type with uuid ${e} to exist`);const u=this.select(Gc(e));this.dispatch(n(e)),this.dispatch(hs(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(os(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class vF extends E{constructor(){super(...arguments);m(this,"url","/assets");m(this,"name","Asset");m(this,"actions",{addOne:Fr,addMany:Ms,setOne:Mr,setMany:Rr,updateOne:_r,updateMany:br,deleteOne:gr,deleteMany:Rs,initialize:Pr});m(this,"selectors",{selectById:Br,selectByIds:Vr})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset with uuid ${e} found in the store`);const u=this.select(fa(e)),r=this.select(Iy(e));this.dispatch(a(e)),this.dispatch(Qt(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(n(d)),this.dispatch(Xt(u)),this.dispatch(Qe(r)),y}}bulkAdd(e,n){const{addMany:a}=this.actions,c=new Date().toISOString(),d=Xe.v4(),u=tt(e,Math.min(n??e.length,Je)).map(o=>{const p=o.map(T=>P(T));return{batchId:Xe.v4(),payload:{transaction_id:d,submitted_at:c,assets:p}}}),r=[];let y=null;for(const o of u){const{batchId:p,payload:T}=o,B=T.assets.map(({uuid:w})=>w),g=T.assets.map(({asset_type:w})=>w),b=T.assets.map(({project:w})=>w),I=T.assets.map(({status:w})=>w),M=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:T,blockers:(y?[y]:[]).concat(g).concat(b).concat(I),blocks:[p].concat(B)});y=o.batchId,r.push(M)}return Promise.all(r).then(o=>{const p=o.flat();this.dispatch(a(p))}),r}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:c}=this.selectors,d=V(e).toSorted(Tt);if(d.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(c(d)).toSorted(Kt);if(d.length!=u.length)throw new Error(`Attempting to bulk update ${d.length-u.length} assets that dont exist in the store`);const r=[];for(let T=0;T<d.length;T++)r.push({...u[T],...e[T]});this.dispatch(a(r));const y=tt(e,Math.min(n??e.length,Je)),o=[];let p=null;for(const T of y){const B=Xe.v4(),g=V(T),b=T.map(({status:M})=>M).filter(Boolean),I=this.enqueueRequest({description:S(h.PATCH,this.name,!0),method:h.PATCH,url:`${this.url}/bulk/`,payload:{payloads:T},blockers:(p?[p]:[]).concat(g).concat(b),blocks:[B].concat(g)});o.push(I),p=B}return Promise.all(o).then(T=>{this.dispatch(a(T.flat()))}).catch(()=>{this.dispatch(a(u))}),[r,o]}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e)),u=this.select(Oy(e));this.dispatch(a(e)),this.dispatch(xe(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(r){throw this.dispatch(n(d)),this.dispatch(Qe(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class zF extends E{constructor(){super(...arguments);m(this,"name","Asset Stage Completion");m(this,"url","/asset-stage-completions");m(this,"actions",{addOne:qr,addMany:Dr,setOne:$r,setMany:Cr,updateOne:Ur,updateMany:Lr,deleteOne:kr,deleteMany:Nr,initialize:jr});m(this,"selectors",{selectById:Kr,selectByIds:Yr})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.asset_stage],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset stage completion with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}bulkAdd(e){const{addMany:n,setMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),u=this.select(T=>{var B;return((B=T.userReducer.currentUser)==null?void 0:B.uuid)??null}),r=e.map(T=>P(T)),y=r.map(T=>({...T,created_by:u,submitted_at:d})),o=y.map(({uuid:T})=>T);this.dispatch(n(y));const p=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:d,completions:r},blockers:[...e.map(T=>T.asset_procedure),...e.map(T=>T.asset_stage),...e.map(T=>T.asset)],blocks:o});return p.then(T=>{this.dispatch(a(T))}).catch(()=>{this.dispatch(c(o))}),[y,p]}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e}},n)).flat();return this.dispatch(a(d)),d}}class jF extends E{constructor(){super(...arguments);m(this,"name","Asset Stage");m(this,"url","/asset-stages");m(this,"actions",{addOne:xr,addMany:eu,setOne:Xr,setMany:Qr,updateOne:tu,updateMany:su,deleteOne:iu,deleteMany:nu,initialize:Jr});m(this,"selectors",{selectById:cu,selectByIds:du})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset stage with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset stage with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class qF extends q{constructor(){super(...arguments);m(this,"name","Asset Type Attachment");m(this,"url","/asset-type-attachments");m(this,"actions",{addOne:lu,addMany:zs,setOne:ou,setMany:hu,updateOne:mu,updateMany:yu,deleteOne:pu,deleteMany:js,initialize:uu});m(this,"selectors",{selectById:fu,selectByIds:Su})}getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class DF extends q{constructor(){super(...arguments);m(this,"name","Asset Type Field Values Attachment");m(this,"url","/asset-type-field-values-attachments");m(this,"actions",{addOne:Xu,addMany:Ls,setOne:Qu,setMany:xu,updateOne:el,updateMany:tl,deleteOne:sl,deleteMany:ks,initialize:Ju});m(this,"selectors",{selectById:nl,selectByIds:al})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class $F extends E{constructor(){super(...arguments);m(this,"name","Asset Type Field Values");m(this,"url","/asset-type-field-values");m(this,"actions",{addOne:ll,addMany:ol,setOne:hl,setMany:ml,updateOne:yl,updateMany:pl,deleteOne:Al,deleteMany:fl,initialize:ul});m(this,"selectors",{selectById:Tl,selectByIds:Il})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{payloads:a,values:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=[],p=tt(a,Math.min(n??a.length,Je)),T=[];for(const g of p){const b=[];for(const I of g){const M=P({...I,values:I.values,created_by:this.select(w=>{var C;return((C=w.userReducer.currentUser)==null?void 0:C.uuid)??null}),submitted_at:y});o.push(M),b.push({uuid:M.uuid,asset:I.asset,fields_revision:I.fields_revision,published_at:I.published_at,values:M.values})}T.push({submitted_at:y,values:c,field_values:b})}this.dispatch(d(o));const B=[];for(const g of T){const{field_values:b}=g,I=b.map(({asset:v})=>v),M=b.map(({fields_revision:v})=>v),w=b.map(({uuid:v})=>v),C=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:g,blockers:I.concat(M),blocks:w});B.push(C)}return Promise.all(B).then(g=>{this.dispatch(u(g.flat()))}).catch(()=>{this.dispatch(r(V(o)))}),[o,B]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.uuid,d.fields_revision,d.asset],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(cl(e));this.dispatch(n(e)),this.dispatch(ks(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(Ls(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class CF extends q{constructor(){super(...arguments);m(this,"name","Asset Type Fields Attachment");m(this,"url","/asset-type-fields-attachments");m(this,"actions",{addOne:Fu,addMany:_u,setOne:bu,setMany:gu,updateOne:Mu,updateMany:Ru,deleteOne:wu,deleteMany:Eu,initialize:Pu});m(this,"selectors",{selectById:Vu,selectByIds:vu})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class UF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Fields");m(this,"url","/asset-type-fields");m(this,"actions",{addOne:Du,addMany:$u,setOne:Cu,setMany:Uu,updateOne:Lu,updateMany:ku,deleteOne:Nu,deleteMany:Gu,initialize:qu});m(this,"selectors",{selectById:Wu,selectByIds:Ku})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class LF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Identifier");m(this,"url","/asset-type-identifiers");m(this,"actions",{addOne:_l,addMany:bl,setOne:gl,setMany:Ml,updateOne:Rl,updateMany:wl,deleteOne:El,deleteMany:Bl,initialize:Fl});m(this,"selectors",{selectById:vl,selectByIds:zl})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class kF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Identifier Value");m(this,"url","/asset-type-identifier-values");m(this,"actions",{addOne:$l,addMany:Cl,setOne:Ul,setMany:Ll,updateOne:kl,updateMany:Nl,deleteOne:Gl,deleteMany:Hl,initialize:Dl});m(this,"selectors",{selectById:Kl,selectByIds:Yl})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.asset_type_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{addMany:a,updateMany:c,deleteMany:d}=this.actions,u=new Date().toISOString(),r=this.select(g=>{var b;return((b=g.userReducer.currentUser)==null?void 0:b.uuid)??null}),y=tt(e,Math.min(n??e.length,Je)),o=[],p=[];for(const g of y){const b=[],I=[],M=[];for(const C of g){const v=P({...C,submitted_at:u,created_by:r});p.push(v);const D={uuid:v.uuid,asset:v.asset,asset_type_identifier:v.asset_type_identifier,value:v.value};b.push(D),I.push(v.asset),I.push(v.asset_type_identifier),M.push(v.uuid)}const w={payloads:b,submitted_at:u,blockers:I,blocks:M};o.push(w)}this.dispatch(a(p));const T=o.map(g=>{const{payloads:b,submitted_at:I,blockers:M,blocks:w}=g;return this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:I,payloads:b},blockers:M,blocks:w})});Promise.all(T).then(g=>{this.dispatch(c(g.flat()))}).catch(g=>{throw this.dispatch(d(V(p))),g});const B=Promise.all(T).then(g=>g.flat());return[p,B]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class NF extends E{constructor(){super(...arguments);m(this,"name","Asset Type");m(this,"url","/asset-types");m(this,"actions",{addOne:eo,addMany:to,setOne:Ql,setMany:xl,updateOne:so,updateMany:io,deleteOne:no,deleteMany:ao,initialize:Xl});m(this,"selectors",{selectById:ro,selectByIds:uo})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type with uuid ${e} to exist`);const u=this.select(Er(e)),r=this.select(Tu(e));this.dispatch(n(e)),this.dispatch(Rs(V(u))),this.dispatch(js(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(a(d)),this.dispatch(Ms(u)),this.dispatch(zs(r)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class GF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Status");m(this,"url","/asset-type-statuses");m(this,"actions",{addOne:mo,addMany:yo,setOne:po,setMany:Ao,updateOne:fo,updateMany:So,deleteOne:To,deleteMany:Io,initialize:ho});m(this,"selectors",{selectById:Po,selectByIds:Fo})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class HF extends q{constructor(){super(...arguments);m(this,"name","Document Attachment");m(this,"url","/document-attachments");m(this,"actions",{addOne:Eo,addMany:Bo,setOne:Vo,setMany:vo,updateOne:zo,updateMany:jo,deleteOne:qo,deleteMany:Do,initialize:wo});m(this,"selectors",{selectById:Co,selectByIds:Uo})}getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}async bulkAdd(e,n){const[a,c,d]=await super.bulkAdd(e,n),u={};for(const{file_sha1:r,uuid:y}of a)r in u||(u[r]=[]),u[r].push(y);return d.then(r=>{const y=r.flatMap(o=>u[o]??[]);for(const o of y)this.makeReadable(o)}),[a,c,d]}makeReadable(e){this.enqueueRequest({description:"Add attachment to AI assistant",method:h.PATCH,url:`${this.url}/${e}/`,payload:{readable_to_assistant:!0},blockers:["index-document-attachment",e],blocks:["index-document-attachment"]})}async refreshStore(e,n){const{initialize:a}=this.actions,c=this.list({queryParams:{document__project__organization:e}},n),d=this.list({queryParams:{document__organization:e}},n),r=(await Promise.all([c,d])).flat();return this.dispatch(a(r)),r}}class WF extends E{constructor(){super(...arguments);m(this,"name","Document");m(this,"url","/documents");m(this,"actions",{addOne:Go,addMany:Ho,setOne:Wo,setMany:Ko,updateOne:Yo,updateMany:Zo,deleteOne:Jo,deleteMany:Xo,initialize:No});m(this,"selectors",{selectById:xo,selectByIds:eh})}add(e){const{addOne:n,deleteOne:a,updateOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:r.parent_document?[r.parent_document]:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(c(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a,addMany:c,deleteMany:d}=this.actions,{selectById:u}=this.selectors,r=this.select(u(e));if(!r)throw new Error(`attempting to delete a document with uuid ${e} that does not exist in store.documents`);const y=this.select(th(e));this.dispatch(n(e)),this.dispatch(d(V(y)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(a(r)),this.dispatch(c(y)),o}}async refreshStore(e,n){const{initialize:a}=this.actions,c=this.list({queryParams:{project__organization:e}},n),d=this.list({queryParams:{organization:e}},n),r=(await Promise.all([c,d])).flat();return this.dispatch(a(r)),r}}class KF extends st{async getVerificationCode(s){return this.enqueueRequest({description:"Get verification code",method:h.GET,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,blockers:[],blocks:[]})}validateVerificationCode(s,e=void 0){return this.enqueueRequest({description:"Validate verification code",method:h.POST,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,payload:e,blockers:[],blocks:[]})}}const yt={},Mn=new Set;class YF extends st{constructor(){super(...arguments);m(this,"host");m(this,"dbPromise",xI.openDB("fileCache",1,{upgrade(e){e.createObjectStore("files")}}))}async getDB(){return await this.dbPromise}async addCache(e){if(!e.name)throw new Error(`Cant add a file without a name to cache: ${e.name}`);if(!e.type)throw new Error(`Cant add a file without a type to cache: ${e.name}`);if(!e.size)throw new Error(`Cant add an empty file to cache: ${e.name}`);const n=await St(e);if(Mn.has(n))return;const a=await this.getDB();!!await a.get("files",n)?console.warn(`Attempting to add a file already cached, ${e.name}`):await a.put("files",e,n),Mn.add(n)}async removeCache(e){await(await this.getDB()).delete("files",e),Mn.delete(e)}async fetchCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,n,a=n){const c=e.split("?")[0]??e,d=await this.fetchCache(n);if(d)return d;let u;c in yt?u=yt[c]:Hn(e)?(u=Gn(e,a),yt[c]=u):(u=new Promise(o=>{this.performRequest({method:h.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1}).then(p=>{const T=new File([p],a,{type:p.type});o(T)})}),yt[c]=u);let r;try{r=await u}catch(o){throw o instanceof L&&delete yt[c],o}const y=await St(r);if(y!==n){const o=`The hash of the file returned from the server (${y}) does not match the
|
|
7
|
+
`)}catch(a){console.error("Failed to extract error message from response body",a)}}else typeof t.body=="string"&&(e=t.body);else t!=null&&t.text?e=t.text:s instanceof Error&&(e=s.message);return!e||e.length>TF?ct:e}class U extends Error{constructor(e){super(ct);m(this,"status");m(this,"response");m(this,"message");m(this,"options");const{response:n,innerError:a}=e;this.message=e.message??IF(n,a)??ct,this.status=(n==null?void 0:n.status)??0,this.response=n,this.options=e}}function qI(t){function s(e){return typeof e=="object"&&e!==null&&["ok","redirect","clientError","serverError","error"].every(a=>a in e)}if(s(t))return t;if(typeof t=="object"&&t!==null){const e=t;if(s(e.response))return e.response;if(e.response&&s(e.response.response))return e.response.response}}class DI extends gI{constructor(s){super(s)}applyAuth(s){const e=this.getAuthHeader();return e?s.set("Authorization",e):s}isAuthFailure(s){return s.status===401}}class st extends gI{constructor(e,n){super(e);m(this,"auth");this.auth=n}}class OF extends st{async startConversation(s,e){return this.enqueueRequest({description:"Start agent conversation",method:h.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:e},blockers:["prompt"],blocks:["prompt"]}).then(n=>(this.dispatch(na(n)),n))}async continueConversation(s,e,n){return this.enqueueRequest({description:"Prompt agent",method:h.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:n},blockers:["prompt"],blocks:["prompt"],queryParams:{conversation_id:e}}).then(a=>{this.dispatch(ca(a))})}async fetchDetails(s){return this.enqueueRequest({description:"Get agent conversation",method:h.GET,url:`/agents/conversations/${s}/`,blockers:["conversation"],blocks:["conversation"]}).then(e=>{this.dispatch(aa(e))})}async rate(s,e){return this.enqueueRequest({description:"Rate agent response",method:h.PUT,url:`/agents/responses/${s}/rate/`,payload:{rating:e},blockers:["rate"],blocks:["rate"]})}async list(s,e){return this.performRequest({method:h.GET,url:"/agents/conversations/",...s},e)}async refreshStore(s,e){const n=await this.list({queryParams:{project:s}},e);return this.dispatch(ia(n)),n}}function tt(t,s){const e=[];let n=0;const a=t.length;for(;n<a;)e.push(t.slice(n,n+=s));return e}function S(t,s,e){const n=`${s}${e?"s":""}`;switch(t){case h.GET:return`Get ${n}`;case h.POST:return`Create ${n}`;case h.PATCH:return`Update ${n}`;case h.PUT:return`Update ${n}`;case h.DELETE:return`Delete ${n}`}}class E extends st{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:h.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:h.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:h.GET,...s},e)}}class D extends E{constructor(){super(...arguments);m(this,"pageSize",_I)}async add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions;let d,u=null,r=null;if("file"in e){const{file:g,...b}=e;u=await this.client.files.getFilePayload(g),r=URL.createObjectURL(g),d={...b,file_sha1:u.sha1,file_type:u.file_type,file_name:g.name,file_extension:u.extension,file_url:r}}else d=e;const y=this.buildModel(d),o=this.buildPayload(y);this.dispatch(n(y));const p=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:{...o,...u?{file:u}:{}},blockers:this.getBlockers(y),blocks:this.getBlocks(y)});p.then(({instance:g})=>{this.dispatch(a(g))}).catch(g=>{throw this.dispatch(c(this.getId(y))),g}).finally(()=>{r&&URL.revokeObjectURL(r)});const T=p.then(({instance:g})=>g),B=p.then(async({instance:g,presigned_url:b})=>{try{return b&&await this.client.files.processPresignedUrl(g.file_sha1,b),g.file_sha1}catch(I){throw console.error("Upload to s3 using presigned url failed.",I),I}});return[y,T,B]}async bulkAdd(e,n){const{addMany:a,updateMany:c,deleteMany:d}=this.actions,u=new Date().toISOString(),r=[],y=new Set,o=tt(e,Math.min(n??e.length,Je)),p=[];for(const b of o){const I=[],M={},w=[],q=[];for(const L of b){let v;if("file"in L){const{file:Vn,...j_}=L,ut=await this.client.files.getFilePayload(Vn);ut.sha1 in M||(M[ut.sha1]=ut);const ZI=URL.createObjectURL(Vn);y.add(ZI),v={...j_,file_sha1:ut.sha1,file_type:ut.file_type,file_name:Vn.name,file_extension:ut.extension,file_url:ZI}}else v=L;const nt=this.buildModel(v);r.push(nt);const $=this.buildBulkPayload(nt);I.push($);const k=this.getBlockers(nt);w.push(...k);const kt=this.getBlocks(nt);q.push(...kt)}const z={payloads:I,submittedAt:u,files:Object.values(M),blockers:w,blocks:q};p.push(z)}this.dispatch(a(r));const T=p.map(b=>{const{submittedAt:I,files:M,payloads:w,blocks:q,blockers:z}=b;return this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:I,files:M,payloads:w},blockers:z,blocks:q})});Promise.all(T).then(b=>{const I=b.flatMap(M=>M.instances);this.dispatch(c(I))}).catch(b=>{throw this.dispatch(d(r.map(I=>this.getId(I)))),console.error(b),b}).finally(()=>{for(const b of y)URL.revokeObjectURL(b)});const B=Promise.all(T).then(b=>b.flatMap(({instances:I})=>I)),g=Promise.all(T).then(async b=>{const I=[];for(const{presigned_urls:M}of b){const w=this.client.files.processPresignedUrls(M);for(const[q,z]of Object.entries(w))try{await z,I.push(q)}catch(L){throw console.error("Upload to s3 using presigned url failed.",L),L}}return I});return[r,B,g]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Attempting to delete ${this.name} with pk ${e} that does not exist in the store`);this.dispatch(a(this.getId(d)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(d)),u}}}class PF extends D{constructor(){super(...arguments);m(this,"name","Asset attachment");m(this,"url","/asset-attachments");m(this,"actions",{addOne:la,addMany:Qt,setOne:oa,setMany:ha,updateOne:ma,updateMany:ya,deleteOne:pa,deleteMany:xt,initialize:ua});m(this,"selectors",{selectById:fa,selectByIds:Sa})}getId(e){return e.uuid}getBlockers(e){const{asset:n}=e;return[n]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(a(d)),d}}class FF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure");m(this,"url","/asset-procedures");m(this,"actions",{addOne:$c,addMany:hs,setOne:kc,setMany:Nc,updateOne:Cc,updateMany:Uc,deleteOne:Lc,deleteMany:ms,initialize:Dc});m(this,"selectors",{selectById:Kc,selectByIds:Yc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset_procedure_type,e.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset procedure with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset procedure with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class _F extends D{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Field Values Attachment");m(this,"url","/asset-procedure-step-field-values-attachments");m(this,"actions",{addOne:$d,addMany:Os,setOne:Cd,setMany:Ud,updateOne:Ld,updateMany:kd,deleteOne:Nd,deleteMany:Ps,initialize:Dd});m(this,"selectors",{selectById:Hd,selectByIds:Wd})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class bF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Field Values");m(this,"url","/asset-procedure-step-field-values");m(this,"actions",{addOne:Xd,addMany:Qd,setOne:xd,setMany:er,updateOne:tr,updateMany:sr,deleteOne:ir,deleteMany:nr,initialize:Jd});m(this,"selectors",{selectById:cr,selectByIds:dr})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision,e.asset_procedure],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{payloads:a,values:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=this.select(b=>{var I;return((I=b.userReducer.currentUser)==null?void 0:I.uuid)??null}),p=[],T=tt(a,Math.min(n??a.length,Je)),B=[];for(const b of T){const I=[];for(const M of b){const w=P({...M,values:M.values,created_by:o,submitted_at:y});p.push(w),I.push({uuid:w.uuid,asset:M.asset,fields_revision:M.fields_revision,asset_procedure:M.asset_procedure,asset_procedure_step:M.asset_procedure_step,published_at:M.published_at,values:w.values})}B.push({submitted_at:y,values:c,field_values:I})}this.dispatch(d(p));const g=[];for(const b of B){const{field_values:I}=b,M=I.map(({asset:v})=>v),w=I.map(({fields_revision:v})=>v),q=I.map(({asset_procedure:v})=>v),z=I.map(({uuid:v})=>v),L=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:b,blockers:M.concat(w).concat(q),blocks:z});g.push(L)}return Promise.all(g).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(r(V(p)))}),[p,g]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetProcedureStepFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.fields_revision,d.asset,d.asset_procedure],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Kd(e));this.dispatch(n(e)),this.dispatch(Ps(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(Os(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class gF extends D{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Fields Attachment");m(this,"url","/asset-procedure-step-fields-attachments");m(this,"actions",{addOne:od,addMany:hd,setOne:md,setMany:yd,updateOne:pd,updateMany:Ad,deleteOne:fd,deleteMany:Sd,initialize:ld});m(this,"selectors",{selectById:Id,selectByIds:Od})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,field_identifier:e.field_identifier,fields_revision:e.fields_revision,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension}}buildBulkPayload(e){return{uuid:e.uuid,field_identifier:e.field_identifier,fields_revision:e.fields_revision,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_procedure_step__organization:e}},n);return this.dispatch(a(c)),c}}class MF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step Fields");m(this,"url","/asset-procedure-step-fields");m(this,"actions",{addOne:bd,addMany:gd,setOne:Md,setMany:Rd,updateOne:wd,updateMany:Ed,deleteOne:Bd,deleteMany:Vd,initialize:_d});m(this,"selectors",{selectById:vd,selectByIds:zd})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_step],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`AssetProcedureStepFields with uuid ${e.uuid} not found`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`AssetProcedureStepFields with uuid ${e} not found`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_step__asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class RF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Step");m(this,"url","/asset-procedure-steps");m(this,"actions",{addOne:mr,addMany:yr,setOne:or,setMany:hr,updateOne:pr,updateMany:Ar,deleteOne:fr,deleteMany:Sr,initialize:lr});m(this,"selectors",{selectById:Ir,selectByIds:Or})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset procedure step with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:{name:e.name,description:e.description,priority:e.order,color:e.color},blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteMany:n,addMany:a,addOne:c,deleteOne:d}=this.actions,{selectById:u}=this.selectors,r=this.select(u(e));if(!r)throw new Error(`No asset procedure step with uuid ${e} found in the store`);const y=this.select(Pr(e));this.dispatch(d(e)),this.dispatch(n(V(y)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(c(r)),this.dispatch(a(y)),o}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class wF extends D{constructor(){super(...arguments);m(this,"name","Asset Procedure Attachment");m(this,"url","/asset-procedure-type-attachments");m(this,"actions",{addOne:Fa,addMany:_a,setOne:ba,setMany:ga,updateOne:Ma,updateMany:Ra,deleteOne:wa,deleteMany:Ea,initialize:Pa});m(this,"selectors",{selectById:va,selectByIds:za})}getId(e){return e.uuid}getBlockers(e){return[e.asset_procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const{asset_procedure_type:n,file_sha1:a,file_extension:c,file_name:d,file_type:u,file_url:r}=e,y=this.select(p=>{var T;return((T=p.userReducer.currentUser)==null?void 0:T.uuid)??null}),o=new Date().toISOString();return P({file_url:r,file_sha1:a,file_extension:c,file_name:d,file_type:u,created_by:y,submitted_at:o,asset_procedure_type:n})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_procedure_type:e.asset_procedure_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_procedure_type:e.asset_procedure_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class EF extends D{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Field Values Attachment");m(this,"url","/asset-procedure-type-field-values-attachments");m(this,"actions",{addOne:oc,addMany:ds,setOne:hc,setMany:mc,updateOne:yc,updateMany:pc,deleteOne:Ac,deleteMany:rs,initialize:lc});m(this,"selectors",{selectById:Tc,selectByIds:Ic})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class BF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Field Values");m(this,"url","/asset-procedure-type-field-values");m(this,"actions",{addOne:_c,addMany:bc,setOne:gc,setMany:Mc,updateOne:Rc,updateMany:wc,deleteOne:Ec,deleteMany:Bc,initialize:Fc});m(this,"selectors",{selectById:zc,selectByIds:jc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision,e.asset_procedure],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{values:a,payloads:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=this.select(b=>{var I;return((I=b.userReducer.currentUser)==null?void 0:I.uuid)??null}),p=[],T=tt(c,Math.min(n??c.length,Je)),B=[];for(const b of T){const I=[];for(const M of b){const w=P({...M,values:M.values,created_by:o,submitted_at:y});p.push(w),I.push({uuid:w.uuid,asset:M.asset,fields_revision:M.fields_revision,asset_procedure:M.asset_procedure,published_at:M.published_at,values:w.values})}B.push({submitted_at:y,values:a,field_values:I})}this.dispatch(d(p));const g=[];for(const b of B){const{field_values:I}=b,M=I.map(({asset:v})=>v),w=I.map(({fields_revision:v})=>v),q=I.map(({asset_procedure:v})=>v),z=I.map(({uuid:v})=>v),L=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:b,blockers:M.concat(w).concat(q),blocks:z});g.push(L)}return Promise.all(g).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(r(V(p)))}),[p,g]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetProcedureTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.fields_revision,d.asset,d.asset_procedure],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Oc(e));this.dispatch(n(e)),this.dispatch(rs(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(ds(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class VF extends D{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Fields Attachment");m(this,"url","/asset-procedure-type-fields-attachments");m(this,"actions",{addOne:Da,addMany:$a,setOne:Ca,setMany:Ua,updateOne:La,updateMany:ka,deleteOne:Na,deleteMany:Ga,initialize:qa});m(this,"selectors",{selectById:Ka,selectByIds:Ya})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class vF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type Fields");m(this,"url","/asset-procedure-type-fields");m(this,"actions",{addOne:Xa,addMany:Qa,setOne:xa,setMany:ec,updateOne:tc,updateMany:sc,deleteOne:ic,deleteMany:nc,initialize:Ja});m(this,"selectors",{selectById:dc,selectByIds:rc})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class zF extends E{constructor(){super(...arguments);m(this,"name","Asset Procedure Type");m(this,"url","/asset-procedure-types");m(this,"actions",{addOne:Xc,addMany:Qc,setOne:id,setMany:nd,updateOne:xc,updateMany:ed,deleteOne:td,deleteMany:sd,initialize:Jc});m(this,"selectors",{selectById:dd,selectByIds:rd})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset procedure type with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset procedure type with uuid ${e} to exist`);const u=this.select(Wc(e));this.dispatch(n(e)),this.dispatch(ms(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(hs(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class jF extends E{constructor(){super(...arguments);m(this,"url","/assets");m(this,"name","Asset");m(this,"actions",{addOne:br,addMany:Rs,setOne:wr,setMany:Er,updateOne:gr,updateMany:Mr,deleteOne:Rr,deleteMany:ws,initialize:_r});m(this,"selectors",{selectById:vr,selectByIds:zr})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset with uuid ${e} found in the store`);const u=this.select(Ta(e)),r=this.select(Py(e));this.dispatch(a(e)),this.dispatch(xt(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(n(d)),this.dispatch(Qt(u)),this.dispatch(Qe(r)),y}}bulkAdd(e,n){const{addMany:a}=this.actions,c=new Date().toISOString(),d=Xe.v4(),u=tt(e,Math.min(n??e.length,Je)).map(o=>{const p=o.map(T=>P(T));return{batchId:Xe.v4(),payload:{transaction_id:d,submitted_at:c,assets:p}}}),r=[];let y=null;for(const o of u){const{batchId:p,payload:T}=o,B=T.assets.map(({uuid:w})=>w),g=T.assets.map(({asset_type:w})=>w),b=T.assets.map(({project:w})=>w),I=T.assets.map(({status:w})=>w),M=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:T,blockers:(y?[y]:[]).concat(g).concat(b).concat(I),blocks:[p].concat(B)});y=o.batchId,r.push(M)}return Promise.all(r).then(o=>{const p=o.flat();this.dispatch(a(p))}),r}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:c}=this.selectors,d=V(e).toSorted(It);if(d.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(c(d)).toSorted(Yt);if(d.length!=u.length)throw new Error(`Attempting to bulk update ${d.length-u.length} assets that dont exist in the store`);const r=[];for(let T=0;T<d.length;T++)r.push({...u[T],...e[T]});this.dispatch(a(r));const y=tt(e,Math.min(n??e.length,Je)),o=[];let p=null;for(const T of y){const B=Xe.v4(),g=V(T),b=T.map(({status:M})=>M).filter(Boolean),I=this.enqueueRequest({description:S(h.PATCH,this.name,!0),method:h.PATCH,url:`${this.url}/bulk/`,payload:{payloads:T},blockers:(p?[p]:[]).concat(g).concat(b),blocks:[B].concat(g)});o.push(I),p=B}return Promise.all(o).then(T=>{this.dispatch(a(T.flat()))}).catch(()=>{this.dispatch(a(u))}),[r,o]}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e)),u=this.select(Fy(e));this.dispatch(a(e)),this.dispatch(xe(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(r){throw this.dispatch(n(d)),this.dispatch(Qe(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class qF extends E{constructor(){super(...arguments);m(this,"name","Asset Stage Completion");m(this,"url","/asset-stage-completions");m(this,"actions",{addOne:$r,addMany:Cr,setOne:Ur,setMany:Lr,updateOne:kr,updateMany:Nr,deleteOne:Gr,deleteMany:Hr,initialize:Dr});m(this,"selectors",{selectById:Zr,selectByIds:Jr})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.asset_stage],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset stage completion with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}bulkAdd(e){const{addMany:n,setMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),u=this.select(T=>{var B;return((B=T.userReducer.currentUser)==null?void 0:B.uuid)??null}),r=e.map(T=>P(T)),y=r.map(T=>({...T,created_by:u,submitted_at:d})),o=y.map(({uuid:T})=>T);this.dispatch(n(y));const p=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:d,completions:r},blockers:[...e.map(T=>T.asset_procedure),...e.map(T=>T.asset_stage),...e.map(T=>T.asset)],blocks:o});return p.then(T=>{this.dispatch(a(T))}).catch(()=>{this.dispatch(c(o))}),[y,p]}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset_procedure__project:e}},n)).flat();return this.dispatch(a(d)),d}}class DF extends E{constructor(){super(...arguments);m(this,"name","Asset Stage");m(this,"url","/asset-stages");m(this,"actions",{addOne:tu,addMany:su,setOne:xr,setMany:eu,updateOne:iu,updateMany:nu,deleteOne:au,deleteMany:cu,initialize:Qr});m(this,"selectors",{selectById:ru,selectByIds:uu})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_procedure_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`No asset stage with uuid ${e.uuid} found in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset stage with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_procedure_type__organization:e}},n);return this.dispatch(a(c)),c}}class $F extends D{constructor(){super(...arguments);m(this,"name","Asset Type Attachment");m(this,"url","/asset-type-attachments");m(this,"actions",{addOne:hu,addMany:js,setOne:mu,setMany:yu,updateOne:pu,updateMany:Au,deleteOne:fu,deleteMany:qs,initialize:ou});m(this,"selectors",{selectById:Tu,selectByIds:Iu})}getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class CF extends D{constructor(){super(...arguments);m(this,"name","Asset Type Field Values Attachment");m(this,"url","/asset-type-field-values-attachments");m(this,"actions",{addOne:xu,addMany:ks,setOne:el,setMany:tl,updateOne:sl,updateMany:il,deleteOne:nl,deleteMany:Ns,initialize:Qu});m(this,"selectors",{selectById:cl,selectByIds:dl})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class UF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Field Values");m(this,"url","/asset-type-field-values");m(this,"actions",{addOne:hl,addMany:ml,setOne:yl,setMany:pl,updateOne:Al,updateMany:fl,deleteOne:Sl,deleteMany:Tl,initialize:ol});m(this,"selectors",{selectById:Ol,selectByIds:Pl})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.fields_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{payloads:a,values:c}=e,{addMany:d,setMany:u,deleteMany:r}=this.actions,y=new Date().toISOString(),o=[],p=tt(a,Math.min(n??a.length,Je)),T=[];for(const g of p){const b=[];for(const I of g){const M=P({...I,values:I.values,created_by:this.select(w=>{var q;return((q=w.userReducer.currentUser)==null?void 0:q.uuid)??null}),submitted_at:y});o.push(M),b.push({uuid:M.uuid,asset:I.asset,fields_revision:I.fields_revision,published_at:I.published_at,values:M.values})}T.push({submitted_at:y,values:c,field_values:b})}this.dispatch(d(o));const B=[];for(const g of T){const{field_values:b}=g,I=b.map(({asset:z})=>z),M=b.map(({fields_revision:z})=>z),w=b.map(({uuid:z})=>z),q=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:g,blockers:I.concat(M),blocks:w});B.push(q)}return Promise.all(B).then(g=>{this.dispatch(u(g.flat()))}).catch(()=>{this.dispatch(r(V(o)))}),[o,B]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.uuid,d.fields_revision,d.asset],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(rl(e));this.dispatch(n(e)),this.dispatch(Ns(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(ks(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class LF extends D{constructor(){super(...arguments);m(this,"name","Asset Type Fields Attachment");m(this,"url","/asset-type-fields-attachments");m(this,"actions",{addOne:bu,addMany:gu,setOne:Mu,setMany:Ru,updateOne:wu,updateMany:Eu,deleteOne:Bu,deleteMany:Vu,initialize:_u});m(this,"selectors",{selectById:zu,selectByIds:ju})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class kF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Fields");m(this,"url","/asset-type-fields");m(this,"actions",{addOne:Cu,addMany:Uu,setOne:Lu,setMany:ku,updateOne:Nu,updateMany:Gu,deleteOne:Hu,deleteMany:Wu,initialize:$u});m(this,"selectors",{selectById:Yu,selectByIds:Zu})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class NF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Identifier");m(this,"url","/asset-type-identifiers");m(this,"actions",{addOne:gl,addMany:Ml,setOne:Rl,setMany:wl,updateOne:El,updateMany:Bl,deleteOne:Vl,deleteMany:vl,initialize:bl});m(this,"selectors",{selectById:jl,selectByIds:ql})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class GF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Identifier Value");m(this,"url","/asset-type-identifier-values");m(this,"actions",{addOne:Ul,addMany:Ll,setOne:kl,setMany:Nl,updateOne:Gl,updateMany:Hl,deleteOne:Wl,deleteMany:Kl,initialize:Cl});m(this,"selectors",{selectById:Zl,selectByIds:Jl})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset,e.asset_type_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e,n){const{addMany:a,updateMany:c,deleteMany:d}=this.actions,u=new Date().toISOString(),r=this.select(g=>{var b;return((b=g.userReducer.currentUser)==null?void 0:b.uuid)??null}),y=tt(e,Math.min(n??e.length,Je)),o=[],p=[];for(const g of y){const b=[],I=[],M=[];for(const q of g){const z=P({...q,submitted_at:u,created_by:r});p.push(z);const L={uuid:z.uuid,asset:z.asset,asset_type_identifier:z.asset_type_identifier,value:z.value};b.push(L),I.push(z.asset),I.push(z.asset_type_identifier),M.push(z.uuid)}const w={payloads:b,submitted_at:u,blockers:I,blocks:M};o.push(w)}this.dispatch(a(p));const T=o.map(g=>{const{payloads:b,submitted_at:I,blockers:M,blocks:w}=g;return this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{submitted_at:I,payloads:b},blockers:M,blocks:w})});Promise.all(T).then(g=>{this.dispatch(c(g.flat()))}).catch(g=>{throw this.dispatch(d(V(p))),g});const B=Promise.all(T).then(g=>g.flat());return[p,B]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class HF extends E{constructor(){super(...arguments);m(this,"name","Asset Type");m(this,"url","/asset-types");m(this,"actions",{addOne:so,addMany:io,setOne:eo,setMany:to,updateOne:no,updateMany:ao,deleteOne:co,deleteMany:ro,initialize:xl});m(this,"selectors",{selectById:lo,selectByIds:oo})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected asset type with uuid ${e} to exist`);const u=this.select(Vr(e)),r=this.select(Ou(e));this.dispatch(n(e)),this.dispatch(ws(V(u))),this.dispatch(qs(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(a(d)),this.dispatch(Rs(u)),this.dispatch(js(r)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class WF extends E{constructor(){super(...arguments);m(this,"name","Asset Type Status");m(this,"url","/asset-type-statuses");m(this,"actions",{addOne:po,addMany:Ao,setOne:fo,setMany:So,updateOne:To,updateMany:Io,deleteOne:Oo,deleteMany:Po,initialize:yo});m(this,"selectors",{selectById:_o,selectByIds:bo})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.asset_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No asset type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(c)),c}}class KF extends D{constructor(){super(...arguments);m(this,"name","Document Attachment");m(this,"url","/document-attachments");m(this,"actions",{addOne:Vo,addMany:vo,setOne:zo,setMany:jo,updateOne:qo,updateMany:Do,deleteOne:$o,deleteMany:Co,initialize:Bo});m(this,"selectors",{selectById:Lo,selectByIds:ko})}getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}async bulkAdd(e,n){const[a,c,d]=await super.bulkAdd(e,n),u={};for(const{file_sha1:r,uuid:y}of a)r in u||(u[r]=[]),u[r].push(y);return d.then(r=>{const y=r.flatMap(o=>u[o]??[]);for(const o of y)this.makeReadable(o)}),[a,c,d]}makeReadable(e){this.enqueueRequest({description:"Add attachment to AI assistant",method:h.PATCH,url:`${this.url}/${e}/`,payload:{readable_to_assistant:!0},blockers:["index-document-attachment",e],blocks:["index-document-attachment"]})}async refreshStore(e,n){const{initialize:a}=this.actions,c=this.list({queryParams:{document__project__organization:e}},n),d=this.list({queryParams:{document__organization:e}},n),r=(await Promise.all([c,d])).flat();return this.dispatch(a(r)),r}}class YF extends E{constructor(){super(...arguments);m(this,"name","Document");m(this,"url","/documents");m(this,"actions",{addOne:Wo,addMany:Ko,setOne:Yo,setMany:Zo,updateOne:Jo,updateMany:Xo,deleteOne:Qo,deleteMany:xo,initialize:Ho});m(this,"selectors",{selectById:th,selectByIds:sh})}add(e){const{addOne:n,deleteOne:a,updateOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:r.parent_document?[r.parent_document]:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(c(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a,addMany:c,deleteMany:d}=this.actions,{selectById:u}=this.selectors,r=this.select(u(e));if(!r)throw new Error(`attempting to delete a document with uuid ${e} that does not exist in store.documents`);const y=this.select(ih(e));this.dispatch(n(e)),this.dispatch(d(V(y)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(a(r)),this.dispatch(c(y)),o}}async refreshStore(e,n){const{initialize:a}=this.actions,c=this.list({queryParams:{project__organization:e}},n),d=this.list({queryParams:{organization:e}},n),r=(await Promise.all([c,d])).flat();return this.dispatch(a(r)),r}}class ZF extends st{async getVerificationCode(s){return this.enqueueRequest({description:"Get verification code",method:h.GET,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,blockers:[],blocks:[]})}validateVerificationCode(s,e=void 0){return this.enqueueRequest({description:"Validate verification code",method:h.POST,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,payload:e,blockers:[],blocks:[]})}}const pt={},Rn=new Set;class JF extends st{constructor(){super(...arguments);m(this,"host");m(this,"dbPromise",tO.openDB("fileCache",1,{upgrade(e){e.createObjectStore("files")}}))}async getDB(){return await this.dbPromise}async addCache(e){if(!e.name)throw new Error(`Cant add a file without a name to cache: ${e.name}`);if(!e.type)throw new Error(`Cant add a file without a type to cache: ${e.name}`);if(!e.size)throw new Error(`Cant add an empty file to cache: ${e.name}`);const n=await Tt(e);if(Rn.has(n))return;const a=await this.getDB();!!await a.get("files",n)?console.warn(`Attempting to add a file already cached, ${e.name}`):await a.put("files",e,n),Rn.add(n)}async removeCache(e){await(await this.getDB()).delete("files",e),Rn.delete(e)}async fetchCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,n,a=n){const c=e.split("?")[0]??e,d=await this.fetchCache(n);if(d)return d;let u;c in pt?u=pt[c]:Kn(e)?(u=Wn(e,a),pt[c]=u):(u=new Promise(o=>{this.performRequest({method:h.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1}).then(p=>{const T=new File([p],a,{type:p.type});o(T)})}),pt[c]=u);let r;try{r=await u}catch(o){throw o instanceof U&&delete pt[c],o}const y=await Tt(r);if(y!==n){const o=`The hash of the file returned from the server (${y}) does not match the
|
|
8
8
|
expected hash (${n}). This can happen if you're using a local development server and the
|
|
9
9
|
isExternalUrl flag in the request details is set to true, because instead of requesting the local
|
|
10
10
|
REST API, you will be requesting localhost:80 (where this app runs), resulting in a transformed blob
|
|
11
11
|
(with an uuid attached) being returned. Alternatively, you may be running with
|
|
12
12
|
import.meta.env.PROD, which will result in some file requests being treated as
|
|
13
|
-
external URLs and therefore not prepended with VITE_API_URL.`;throw new Error(o)}return await this.addCache(r),r}processPresignedUrl(e,n){if("warning"in n){if(n.warning==="already_uploaded")return Promise.resolve(void 0);throw console.error(n.warning),new Error(n.warning)}return this.enqueueRequest({url:n.url,description:"Upload file to S3",method:h.POST,isExternalUrl:!0,isAuthNeeded:!1,attachmentHash:e,blockers:[`s3-${n.fields.key}`],blocks:[e],s3url:n})}processPresignedUrls(e){const n={};for(const[a,c]of Object.entries(e))n[a]=this.processPresignedUrl(a,c);return n}async getFilePayload(e){const a={sha1:await St(e),file_type:e.type,extension:kn(e),size:e.size};return await this.client.files.addCache(e),a}}class ZF extends E{constructor(){super(...arguments);m(this,"name","Form Identifier");m(this,"url","/form-identifiers");m(this,"actions",{addOne:dh,addMany:rh,setOne:uh,setMany:lh,updateOne:oh,updateMany:hh,deleteOne:mh,deleteMany:yh,initialize:ch});m(this,"selectors",{selectById:Ah,selectByIds:fh})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.form],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected form identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(c)),c}}class JF extends E{constructor(){super(...arguments);m(this,"name","Form Identifier Value");m(this,"url","/form-identifier-values");m(this,"actions",{addOne:Oh,addMany:Ph,setOne:Fh,setMany:_h,updateOne:bh,updateMany:gh,deleteOne:Mh,deleteMany:Rh,initialize:Ih});m(this,"selectors",{selectById:Eh,selectByIds:Bh})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form_submission,e.form_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected form identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class XF extends q{constructor(){super(...arguments);m(this,"name","Form Revision Attachment");m(this,"url","/form-revision-attachments");m(this,"actions",{addOne:jh,addMany:qh,setOne:Dh,setMany:$h,updateOne:Ch,updateMany:Uh,deleteOne:Lh,deleteMany:kh,initialize:zh});m(this,"selectors",{selectById:Gh,selectByIds:Hh})}getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form_revision__form__organization:e}},n);return this.dispatch(a(c)),c}}class QF extends E{constructor(){super(...arguments);m(this,"name","Form Revision");m(this,"url","/form-revisions");m(this,"actions",{addOne:Zh,addMany:ri,setOne:Jh,setMany:Xh,updateOne:Qh,updateMany:xh,deleteOne:em,deleteMany:ui,initialize:Yh});m(this,"selectors",{selectById:sm,selectByIds:im})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(c)),c}}class xF extends E{constructor(){super(...arguments);m(this,"name","Form");m(this,"url","/forms");m(this,"actions",{addOne:rm,addMany:um,setOne:lm,setMany:om,updateOne:hm,updateMany:mm,deleteOne:ym,deleteMany:pm,initialize:dm});m(this,"selectors",{selectById:Sm,selectByIds:Tm})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error("Expected form to exist");const u=this.select(Nm(e)),r=this.select(nm(e));this.dispatch(n(e)),this.dispatch(Ii(V(u))),this.dispatch(ui(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(a(d)),this.dispatch(ri(r)),this.dispatch(Ti(u)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class e_ extends q{constructor(){super(...arguments);m(this,"name","Form Submission Attachment");m(this,"url","/form-submission-attachments");m(this,"actions",{addOne:Pm,addMany:mi,setOne:Fm,setMany:_m,updateOne:bm,updateMany:gm,deleteOne:Mm,deleteMany:yi,initialize:Om});m(this,"selectors",{selectById:Rm,selectByIds:wm})}getId(e){return e.uuid}getBlockers(e){return[e.form_submission]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,c=this.select(fi(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(a(c)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e}},n)).flat();return this.dispatch(a(d)),d}}class t_ extends E{constructor(){super(...arguments);m(this,"name","Form Submission");m(this,"url","/form-submissions");m(this,"actions",{addOne:qm,addMany:Ti,setOne:zm,setMany:jm,updateOne:Dm,updateMany:$m,deleteOne:Cm,deleteMany:Ii,initialize:vm});m(this,"selectors",{selectById:Lm,selectByIds:km})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${d.uuid}/`,payload:e,blockers:[d.uuid],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Em(e));this.dispatch(n(e)),this.dispatch(yi(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(mi(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_revision__form_organization:e}},n)).flat();return this.dispatch(a(d)),d}}class s_ extends q{constructor(){super(...arguments);m(this,"name","Geo Image");m(this,"url","/geo-images");m(this,"actions",{addOne:Zm,addMany:Jm,setOne:Km,setMany:Ym,updateOne:Xm,updateMany:Qm,deleteOne:xm,deleteMany:ey,initialize:Wm});m(this,"selectors",{selectById:sy,selectByIds:iy})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,title:e.title,description:e.description,geo_marker:e.geo_marker,canvas_marker:e.canvas_marker,direction:e.direction,original_date:e.original_date,project:e.project}}buildBulkPayload(e){return{uuid:e.uuid,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,title:e.title,description:e.description,geo_marker:e.geo_marker,canvas_marker:e.canvas_marker,direction:e.direction,original_date:e.original_date,project:e.project}}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project:e}},n);return this.dispatch(a(c)),c}}class i_ extends E{constructor(){super(...arguments);m(this,"name","Issue Association");m(this,"url","/issue-associations");m(this,"actions",{addOne:oy,addMany:Qe,setOne:ry,setMany:dy,updateOne:uy,updateMany:ly,deleteOne:hy,deleteMany:xe,initialize:cy});m(this,"selectors",{selectById:yy,selectByIds:py})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.associated_issue,...e.issue?[e.issue]:[],...e.asset?[e.asset]:[]],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=e.map(o=>P({...o,submitted_at:u,created_by:d}));this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{payloads:r.map(o=>R(o)),submitted_at:u},blockers:r.flatMap(o=>[o.associated_issue,...o.issue?[o.issue]:[],...o.asset?[o.asset]:[]]),blocks:V(r)});return y.then(o=>{this.dispatch(c(o))}).catch(()=>{this.dispatch(a(V(r)))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Issue association with uuid ${e} not found in store.`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{associated_issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class n_ extends q{constructor(){super(...arguments);m(this,"name","Issue Attachment");m(this,"url","/issue-attachments");m(this,"actions",{addOne:by,addMany:gi,setOne:gy,setMany:My,updateOne:Ry,updateMany:wy,deleteOne:Ey,deleteMany:Mi,initialize:_y});m(this,"selectors",{selectById:vy,selectByIds:zy})}getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class a_ extends q{constructor(){super(...arguments);m(this,"name","Issue Comment Attachment");m(this,"url","/issue-comment-attachments");m(this,"actions",{addOne:$y,addMany:Cy,setOne:Uy,setMany:Ly,updateOne:ky,updateMany:Ny,deleteOne:Gy,deleteMany:Hy,initialize:Dy});m(this,"selectors",{selectById:Ky,selectByIds:Yy})}getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class c_ extends E{constructor(){super(...arguments);m(this,"name","Issue Comment");m(this,"url","/issue-comments");m(this,"actions",{addOne:Qy,addMany:xy,setOne:ep,setMany:tp,updateOne:sp,updateMany:ip,deleteOne:np,deleteMany:ap,initialize:Xy});m(this,"selectors",{selectById:cp,selectByIds:dp})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=P({...e,author:this.select(r=>r.userReducer.currentUser.uuid),submitted_at:new Date().toISOString()});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[e.issue],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{setMany:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class d_ extends E{constructor(){super(...arguments);m(this,"name","Issue");m(this,"url","/issues");m(this,"actions",{addOne:op,addMany:zi,setOne:hp,setMany:mp,updateOne:yp,updateMany:pp,deleteOne:Ap,deleteMany:ji,initialize:lp});m(this,"selectors",{selectById:Sp,selectByIds:Tp})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.project,r.issue_type,r.status],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const d={...c,...e};this.dispatch(n(d));const u={};for(const o of[U.TITLE,U.DESCRIPTION,U.STATUS,U.PRIORITY,U.ASSIGNED_TO,U.DUE_DATE])if(o in e&&e[o]!==c[o])switch(o){case U.PRIORITY:u[o]=e[o];break;case U.DUE_DATE:u[o]=e[o];break;case U.DESCRIPTION:u[o]=e[o];break;case U.TITLE:u[o]=e[o];break;case U.STATUS:{const p=e[o],T=this.select(xi(p));if(!T)throw new Error(`Trying to update issue type status with ${p} which does not exist in store`);u[o]={name:T.name,color:T.color,uuid:T.uuid};break}case U.ASSIGNED_TO:{const p=e[o];if(p===null)u[o]=null;else{const T=this.select(Dt(p));if(!T)throw new Error(`Trying to update assigned to with ${p} which does not exist in store.`);u[o]={email:T.email,uuid:T.uuid}}break}}const r=P({created_by:this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),submitted_at:new Date().toISOString(),issue:c.uuid,changes:u});this.dispatch(tn(r));const y=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return y.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(n(c)),this.dispatch(nn(r.uuid))}),[d,y]}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:c}=this.selectors,d=V(e).toSorted(Tt);if(d.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(c(d)).toSorted(Kt);if(d.length!=u.length)throw new Error(`Attempting to bulk update ${d.length-u.length} issues that dont exist in the store`);const r=[];for(let T=0;T<d.length;T++)r.push({...u[T],...e[T]});this.dispatch(a(r));const y=tt(e,Math.min(n??e.length,Je)),o=[];let p=null;for(const T of y){const B=Xe.v4(),g=V(T),b=T.map(({status:M})=>M).filter(Boolean),I=this.enqueueRequest({description:S(h.PATCH,this.name,!0),method:h.PATCH,url:`${this.url}/bulk/`,payload:{payloads:T},blockers:(p?[p]:[]).concat(g).concat(b),blocks:[B].concat(g)});o.push(I),p=B}return Promise.all(o).then(T=>{this.dispatch(a(T.flat()))}).catch(()=>{this.dispatch(a(u))}),[r,o]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No issue with uuid ${e} found in the store`);const u=this.select(Ay(e)),r=this.select(Ty(e)),y=this.select(Vy(e)),o=this.select(Kf(e));this.dispatch(n(e)),this.dispatch(Mi(V(y))),this.dispatch(an(V(o))),this.dispatch(xe(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(a(d)),this.dispatch(gi(y)),this.dispatch(sn(o)),this.dispatch(Qe(u)),this.dispatch(Qe(r)),p}}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e)),u=this.select(fy(e)),r=this.select(Sy(e));this.dispatch(a(e)),this.dispatch(xe(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(y){throw this.dispatch(n(d)),this.dispatch(Qe(u)),this.dispatch(Qe(r)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class r_ extends q{constructor(){super(...arguments);m(this,"name","Issue Type Attachment");m(this,"url","/issue-type-attachments");m(this,"actions",{addOne:_p,addMany:bp,setOne:gp,setMany:Mp,updateOne:Rp,updateMany:wp,deleteOne:Ep,deleteMany:Bp,initialize:Fp});m(this,"selectors",{selectById:vp,selectByIds:zp})}getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class u_ extends q{constructor(){super(...arguments);m(this,"name","Issue Type Field Values Attachment");m(this,"url","/issue-type-field-values-attachments");m(this,"actions",{addOne:gA,addMany:Ni,setOne:MA,setMany:RA,updateOne:wA,updateMany:EA,deleteOne:BA,deleteMany:Gi,initialize:bA});m(this,"selectors",{selectById:vA,selectByIds:zA})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class l_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Field Values");m(this,"url","/issue-type-field-values");m(this,"actions",{addOne:Qp,addMany:xp,setOne:eA,setMany:tA,updateOne:sA,updateMany:iA,deleteOne:nA,deleteMany:aA,initialize:Xp});m(this,"selectors",{selectById:dA,selectByIds:rA})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue,e.fields_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.uuid,d.fields_revision,d.issue],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(jA(e));this.dispatch(n(e)),this.dispatch(Gi(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(Ni(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class o_ extends q{constructor(){super(...arguments);m(this,"name","Issue Type Fields Attachment");m(this,"url","/issue-type-fields-attachments");m(this,"actions",{addOne:$p,addMany:Cp,setOne:Up,setMany:Lp,updateOne:kp,updateMany:Np,deleteOne:Gp,deleteMany:Hp,initialize:Dp});m(this,"selectors",{selectById:Kp,selectByIds:Yp})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class h_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Fields");m(this,"url","/issue-type-fields");m(this,"actions",{addOne:hA,addMany:mA,setOne:yA,setMany:pA,updateOne:AA,updateMany:fA,deleteOne:SA,deleteMany:TA,initialize:oA});m(this,"selectors",{selectById:OA,selectByIds:PA})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class m_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Identifier");m(this,"url","/issue-type-identifiers");m(this,"actions",{addOne:CA,addMany:UA,setOne:LA,setMany:kA,updateOne:NA,updateMany:GA,deleteOne:HA,deleteMany:WA,initialize:$A});m(this,"selectors",{selectById:YA,selectByIds:ZA})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected issue type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class y_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Identifier Value");m(this,"url","/issue-type-identifier-values");m(this,"actions",{addOne:xA,addMany:ef,setOne:tf,setMany:sf,updateOne:nf,updateMany:af,deleteOne:cf,deleteMany:df,initialize:QA});m(this,"selectors",{selectById:uf,selectByIds:lf})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue,e.issue_type_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected issue type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class p_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type");m(this,"url","/issue-types");m(this,"actions",{addOne:yf,addMany:pf,setOne:Af,setMany:ff,updateOne:Sf,updateMany:Tf,deleteOne:If,deleteMany:Of,initialize:mf});m(this,"selectors",{selectById:Ff,selectByIds:_f})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,submitted_at:u,created_by:d});this.dispatch(n(r));const y=this.enqueueRequest({method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const u=this.select(Ip(e));this.dispatch(n(e)),this.dispatch(ji(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(zi(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class A_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Status");m(this,"url","/issue-type-statuses");m(this,"actions",{addOne:Rf,addMany:wf,setOne:Ef,setMany:Bf,updateOne:Vf,updateMany:vf,deleteOne:zf,deleteMany:jf,initialize:Mf});m(this,"selectors",{selectById:xi,selectByIds:Df})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No issue type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class f_ extends E{constructor(){super(...arguments);m(this,"name","Issue Update");m(this,"url","/issue-updates");m(this,"actions",{addOne:tn,addMany:sn,setOne:Lf,setMany:kf,updateOne:Nf,updateMany:Gf,deleteOne:nn,deleteMany:an,initialize:Uf});m(this,"selectors",{selectById:Hf,selectByIds:Wf})}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}const S_=1800;function T_(t){if(!t.access)throw new Error("Missing access token");if(!t.refresh)throw new Error("Missing refresh token");return{accessToken:t.access,refreshToken:t.refresh}}class I_ extends jI{constructor(){super(...arguments);m(this,"_getRenewedTokens",async e=>{const n=this.performRequest({method:h.POST,url:this.refreshTokensUrl,payload:{refresh:e},isAuthNeeded:!1,checkAuth:!1});let a;try{a=await n}catch(c){console.error("Could not renew tokens; clearing auth",c),this.clearAuth();return}if(!a.access)throw new Error("Missing access token");return{accessToken:a.access,refreshToken:a.refresh??this.getRefreshToken()}})}clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(go(!1)),this.clearTokens(),this.dispatch(O()),this.dispatch(O())}async renewTokens(){const e=this.getRefreshToken();if(!e)throw new Error("No refresh token found");console.debug(this.constructor.name,"renewing tokens");try{const n=await this._getRenewedTokens(e);if(!n)return;console.debug("Got renewed tokens"),this.setTokens(n)}catch(n){throw console.error("Could not renew tokens; clearing auth",n),this.clearAuth(),n}}tokenIsExpiringSoon(){const e=this.getAccessToken();if(!e)return!1;const n=Date.now()/1e3;let a;try{a=eO(e).exp??n}catch{a=n}return a-n<S_}getAuthHeader(){return`Bearer ${this.getAccessToken()}`}async prepareAuth(){if(this.tokenIsExpiringSoon()){console.debug(this.constructor.name,"preparing auth");try{await this.renewTokens()}catch(e){return e instanceof L&&this.clearAuth(),e instanceof Error?Promise.reject(e):Promise.reject(new Error((e??at).toString()))}}}async handleUnauthorized(e,n){if(e.url.endsWith("/token/refresh/"))throw this.select(a=>a.authReducer.isLoggedIn)&&console.warn("No signed-in user to sign out."),this.clearAuth(),new L({message:"You have been signed out due to inactivity.",response:n,discard:!0});if(this.select(a=>a.authReducer.isLoggedIn))await this.renewTokens();else throw console.debug("Forbidden; user is not logged in."),new L({message:"Incorrect username or password.",response:n,discard:!0})}async initAuth(e){const n=Xe.v4();return console.debug(this.constructor.name,"Initiating auth"),this.performRequest({uuid:n,method:h.POST,url:this.initTokensUrl,payload:e,isAuthNeeded:!1,checkAuth:!1}).then(a=>{this.setTokens(T_(a))})}}class pt extends st{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:h.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:h.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:h.GET,...s},e)}}class O_ extends pt{constructor(){super(...arguments);m(this,"name","Organization Access");m(this,"url","/organization-accesses");m(this,"actions",{addOne:rS,addMany:uS,setOne:lS,setMany:oS,updateOne:hS,updateMany:mS,deleteOne:yS,deleteMany:pS,initialize:dS});m(this,"selectors",{selectById:fS,selectByIds:SS})}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid)),d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e)),u=this.select(Dt(d.user));this.dispatch(n(d.uuid)),this.dispatch(ln(d.user));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${d.uuid}/`,blockers:[d.uuid],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(un(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class P_ extends pt{constructor(){super(...arguments);m(this,"name","Organization");m(this,"url","/organizations");m(this,"actions",{addOne:bS,addMany:_S,setOne:FS,setMany:PS,updateOne:MS,updateMany:gS,deleteOne:RS,deleteMany:wS,initialize:OS});m(this,"selectors",{selectById:VS,selectByIds:vS})}async add(e){const{addOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(n(a)),a}async update(e){const{setOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return this.dispatch(n(a)),a}async invite(e,n){return this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/${e}/invite/${n}/`,blockers:[],blocks:[]})}async refreshStore(e){const{initialize:n}=this.actions,a=await this.list({},e);return this.dispatch(n(a)),a}}class F_ extends E{constructor(){super(...arguments);m(this,"name","Project Access");m(this,"url","/project-accesses");m(this,"actions",{addOne:NS,addMany:GS,setOne:HS,setMany:WS,updateOne:KS,updateMany:YS,deleteOne:ZS,deleteMany:JS,initialize:kS});m(this,"selectors",{selectById:QS,selectByIds:xS})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[d.organization_access,d.project],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(r=>{throw this.dispatch(c(d.uuid)),r}),[d,u]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:c}=this.actions,d=this.select(y=>{var o;return((o=y.userReducer.currentUser)==null?void 0:o.uuid)??null}),u=e.map(y=>P({...y,created_by:d}));this.dispatch(n(u));const r=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{project_accesses:u.map(y=>R(y))},blockers:u.flatMap(y=>[y.project,y.organization_access]),blocks:u.map(y=>y.uuid)});return r.then(y=>{this.dispatch(c(y))}).catch(y=>{throw this.dispatch(a(u.map(o=>o.uuid))),y}),[u,r]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid)),d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(c)),c}}class __ extends q{constructor(){super(...arguments);m(this,"name","Project Attachment");m(this,"url","/project-attachments");m(this,"actions",{addOne:sT,addMany:iT,setOne:nT,setMany:aT,updateOne:cT,updateMany:dT,deleteOne:rT,deleteMany:uT,initialize:tT});m(this,"selectors",{selectById:oT,selectByIds:hT})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(c)),c}}class b_ extends q{constructor(){super(...arguments);m(this,"name","Project File");m(this,"url","/project-files");m(this,"actions",{addOne:ST,addMany:TT,setOne:AT,setMany:fT,updateOne:IT,updateMany:OT,deleteOne:PT,deleteMany:FT,initialize:pT});m(this,"selectors",{selectById:gT,selectByIds:MT})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,project:e.project,z_index:e.z_index,canvas_bounds:e.canvas_bounds,bounds:e.bounds}}buildBulkPayload(e){return{uuid:e.uuid,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,project:e.project,z_index:e.z_index,canvas_bounds:e.canvas_bounds,bounds:e.bounds}}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class g_ extends pt{constructor(){super(...arguments);m(this,"name","Project");m(this,"url","/projects");m(this,"actions",{addOne:zT,addMany:vT,setOne:VT,setMany:BT,updateOne:qT,updateMany:jT,deleteOne:DT,deleteMany:$T,initialize:ET});m(this,"selectors",{selectById:LT,selectByIds:kT})}async add(e){const{addOne:n}=this.actions,a=await this.performRequest({method:h.POST,url:`${this.url}/`,payload:R(e)});return this.dispatch(n(a)),a}async update(e){const{updateOne:n}=this.actions,a=await this.performRequest({method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e)});return this.dispatch(n(a)),a}async delete(e){const{deleteOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(n(e)),a}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class M_ extends E{constructor(){super(...arguments);m(this,"name","Team Membership");m(this,"url","/team-memberships");m(this,"actions",{addOne:WT,addMany:KT,setOne:YT,setMany:ZT,updateOne:JT,updateMany:XT,deleteOne:QT,deleteMany:xT,initialize:HT});m(this,"selectors",{selectById:sI,selectByIds:iI})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[e.team],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}bulkAdd(e){const{addMany:n,setMany:a,deleteMany:c}=this.actions,d=this.select(y=>{var o;return((o=y.userReducer.currentUser)==null?void 0:o.uuid)??null}),u=e.map(y=>P({...y,created_by:d}));this.dispatch(n(u));const r=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{team_memberships:u.map(y=>R(y))},blockers:u.map(y=>y.team),blocks:u.map(y=>y.uuid)});return r.then(y=>{this.dispatch(a(y))}).catch(()=>{this.dispatch(c(u.map(y=>y.uuid)))}),[u,r]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{team__organization:e}},n);return this.dispatch(a(c)),c}}class R_ extends E{constructor(){super(...arguments);m(this,"name","Team");m(this,"url","/teams");m(this,"actions",{addOne:cI,addMany:dI,setOne:rI,setMany:uI,updateOne:lI,updateMany:oI,deleteOne:hI,deleteMany:mI,initialize:aI});m(this,"selectors",{selectById:pI,selectByIds:AI})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,submitted_at:new Date().toISOString(),created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e),blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class w_ extends pt{constructor(){super(...arguments);m(this,"name","User");m(this,"url","/user");m(this,"actions",{addOne:un,addMany:xf,setOne:Qf,setMany:Xf,updateOne:tS,updateMany:eS,deleteOne:ln,deleteMany:sS,initialize:Jf});m(this,"selectors",{selectById:Dt,selectByIds:aS})}async list(e,n){const{organizationUuid:a,...c}=e,d=a?`/organizations/${a}${this.url}s/`:`/${this.url}`;return this.performRequest({method:h.GET,url:d,...c},n)}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({organizationUuid:e},n);return this.dispatch(a(c)),c}}async function Rn(t,s,e,n,a){const c=n instanceof st;c&&s.checkAuth!==!1&&await n.auth.prepareAuth();const d={queryParams:"",isAuthNeeded:!0},{s3url:u,payload:r,headers:y,method:o,queryParams:p,attachmentHash:T,isExternalUrl:B,isAuthNeeded:g,isResponseBlob:b}={...d,...s};let I=s.url;const M=T?await e.files.fetchCache(T):void 0;if(T&&!M)throw new Error(`Cannot upload file ${T} because it's not cached.`);!B&&!I.startsWith("http")&&(!I.startsWith("/")&&!I.startsWith("blob:")&&(I="/"+I),I=t+I);const w=$=>{if(T){if(!u)throw new Error(`No S3 URL for file ${T}`);if("warning"in u)throw new Error(`S3 URL warning for file ${T}`);if(!M)throw new Error(`No file for file ${T}`);const k=u.fields["x-amz-checksum-sha1"];if(!k)throw new Error(`No checksum for file ${T}`);return $.set("x-amz-checksum-sha1",k).field({...r,...u.fields}).attach("file",M)}return $.send(r)},v={[h.GET]:()=>b?nt.get(I.toString()).responseType("blob"):nt.get(I.toString()),[h.POST]:()=>{const $=nt.post(I.toString());return w($)},[h.PATCH]:()=>{const $=nt.patch(I.toString());return w($)},[h.PUT]:()=>{const $=nt.put(I.toString());return w($)},[h.DELETE]:()=>{const $=nt.delete(I.toString());return w($)}}[o];let D=v();const j=()=>{console.debug("aborting request:",s.url),D.abort()};a==null||a.addEventListener("abort",j),g&&c&&(D=n.auth.applyAuth(D)),y&&(D=D.set(y));try{return await D.query(p)}catch($){const k=zI($);if(c&&k&&n.auth.isAuthFailure(k))throw await n.auth.handleUnauthorized(D,k),new L({response:k,innerError:$,discard:!1});const Lt=k==null?void 0:k.status;throw new L({response:k,innerError:$,discard:Lt!==void 0&&gn.includes(Lt)})}finally{a==null||a.removeEventListener("abort",j)}}class E_{constructor(s){m(this,"store");this.store=s}_performRequest(s,e,n,a){const c=new Nt,d={...e,uuid:e.uuid??Xe.v4()};return Rn(s,d,this,n,a).then(u=>{c.resolve(u.body)}).catch(u=>{u instanceof Error?c.reject(u):c.reject(new Error((u??at).toString()))}),c}async performRequest(s,e,n,a){return this._performRequest(s,e,n,a).then(c=>{if(c instanceof L)throw c;return c})}async enqueueRequest(s,e,n){return this._enqueueRequest(s,e,n).then(a=>{if(a instanceof L)throw a;return a})}_enqueueRequest(s,e,n){const a=new Nt,c={...s,BASE_URL:e,serviceName:n},d=this.store.dispatch(DS(c)),u=y=>{if(y)a.resolve(y.body);else{const o=new L({message:"Could not get a response from the server.",response:y,discard:!0});a.reject(o)}},r=y=>{y instanceof L?y.options.discard=!0:(console.error("Received an unexpected error while processing a request:",y,`
|
|
14
|
-
Converting error to APIError and discarding.`),y=new L({message:"An error occurred while processing the request.",innerError:y,discard:!0})),a.reject(y)};return d.then(u,r),a}async performPagination(s,e,n,a,c){const d={...e,queryParams:{...e.queryParams,paginate:!0,limit:n}},{method:u}=d,r=[];let y=await this.performRequest(s,d,a,c);for(r.push(y.results);y.next;)y=await this.performRequest(s,{url:y.next,method:u},a,c),r.push(y.results);return r}}class ct{constructor(){m(this,"graph");m(this,"requestAttemptCounter");this.graph=new tO.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(s){const e=new ct;for(let n=0;n<s.length;n++){const a=s[n];if(!a){console.error("Outbox item was undefined");continue}e.sneakRequest(a);for(let c=0;c<n;c++){const d=s[c];if(!d){console.error("Previous outbox item was undefined");continue}d.payload.uuid!==a.payload.uuid&&d.payload.blocks.some(u=>a.payload.blockers.includes(u))&&ct._addDependency(a.payload.uuid,d.payload.uuid,e.graph)}}return e}_addDependency(s,e){ct._addDependency(s,e,this.graph)}static _addDependency(s,e,n){if(s===e)throw new Error(`Tried to add dependency from node to itself: ${s}`);if(!n.hasNode(s))throw new Error(`Tried to add dependency from non-existent node: ${s} (to node: ${e})`);if(!n.hasNode(e))throw new Error(`Tried to add dependency to non-existent node: ${e} (from node: ${s})`);n.addDependency(s,e)}addRequest(s){if(this.graph.addNode(s.payload.uuid,s),!(s.payload.blockers.length===0||this.graph.size()===1))for(const e of this.graph.overallOrder()){if(e===s.payload.uuid)continue;const n=this.graph.getNodeData(e),a=new Set(n.payload.blocks);s.payload.blockers.some(c=>a.has(c))&&this._addDependency(s.payload.uuid,e)}}insertRequest(s){this.graph.addNode(s.payload.uuid,s);for(const e of this.graph.overallOrder()){if(e===s.payload.uuid)continue;const n=this.graph.getNodeData(e),a=new Set(s.payload.blocks);n.payload.blockers.some(c=>a.has(c))&&this._addDependency(e,s.payload.uuid)}}sneakRequest(s){this.graph.addNode(s.payload.uuid,s)}_getNextNode(){const s=this.graph.overallOrder(!0);let e=1/0,n;for(const a of s){const c=this.requestAttemptCounter[a]||0;c<e&&(e=c,n=a)}return n}peek(){const s=this._getNextNode();if(s)return this.graph.getNodeData(s)}remove(s){this.graph.removeNode(s),delete this.requestAttemptCounter[s]}pop(){const s=this.peek();return s&&this.graph.removeNode(s.payload.uuid),s}getQueue(){const s=this.graph.overallOrder().map(n=>this.graph.getNodeData(n)),e=this._getNextNode();if(e){const n=this.graph.getNodeData(e),a=s.findIndex(c=>c.payload.uuid===n.payload.uuid);a!==-1&&(s.splice(a,1),s.unshift(n))}return s}getReady(){let s=this.graph.overallOrder(!0).map(e=>this.graph.getNodeData(e));return s=s.sort((e,n)=>e.meta.offline.effect.timestamp.localeCompare(n.meta.offline.effect.timestamp)),s=s.sort((e,n)=>{const a=this.requestAttemptCounter[e.payload.uuid]||0,c=this.requestAttemptCounter[n.payload.uuid]||0;return a-c}),s}registerRetry(s){this.requestAttemptCounter[s]=(this.requestAttemptCounter[s]||0)+1}}let qI;function DI(t){qI=t}function dt(){return qI}let $I;function CI(t){$I=t}function UI(){return $I}let wn=null;function it(){const t=dt();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(wn)return wn;const s=t.getState().offline.outbox,e=ct._fromOutbox(s);return wn=e,e}const B_=(t,s)=>{const e=new s(t);return CI(e),DI(t),e};class V_{constructor(s){m(this,"_all");m(this,"_previous");this._all=[s],this._previous=s,this.then=this.then.bind(this),this.compile=this.compile.bind(this)}then(s){return this._previous&&(this._previous.next=s),this._all.push(s),this._previous=s,{then:this.then,compile:this.compile}}compile(){return this._all}}class En{constructor(){m(this,"next");this.next=null}then(s){return new V_(this).then(s)}async run(s){if(this.next)return this.next.run(s);{if(console.debug("Middleware finished. Performing request:",s.payload.url),!dt())throw new Error("Client store not set");const n=UI();if(!n)throw new Error("Client SDK not set");return BI(s,n)}}}class LI extends En{async run(s){return super.run(s)}}class kI extends En{async run(s){return super.run(s)}}const NI=new LI().then(new kI).compile();function GI(t){var s;return(s=NI[0])==null?void 0:s.run(t)}var HI=(t=>(t[t.USER_REGISTRATION=0]="USER_REGISTRATION",t[t.APPLICATION_INVITE=2]="APPLICATION_INVITE",t[t.PROJECT_INVITE=4]="PROJECT_INVITE",t[t.ORGANIZATION_INVITE=6]="ORGANIZATION_INVITE",t[t.ADD_EMAIL_DOMAIN=8]="ADD_EMAIL_DOMAIN",t[t.RESET_PASSWORD=10]="RESET_PASSWORD",t))(HI||{});i.ALL_MIDDLEWARE=NI,i.APIError=L,i.AgentService=TF,i.AssetAttachmentService=IF,i.AssetProcedureService=OF,i.AssetProcedureStepFieldValuesAttachmentService=PF,i.AssetProcedureStepFieldValuesService=FF,i.AssetProcedureStepFieldsAttachmentService=_F,i.AssetProcedureStepFieldsService=bF,i.AssetProcedureStepService=gF,i.AssetProcedureTypeAttachmentService=MF,i.AssetProcedureTypeFieldValuesAttachmentService=RF,i.AssetProcedureTypeFieldValuesService=wF,i.AssetProcedureTypeFieldsAttachmentService=EF,i.AssetProcedureTypeFieldsService=BF,i.AssetProcedureTypeService=VF,i.AssetService=vF,i.AssetStageCompletionService=zF,i.AssetStageService=jF,i.AssetStatusType=Dn,i.AssetTypeAttachmentService=qF,i.AssetTypeFieldValuesAttachmentService=DF,i.AssetTypeFieldValuesService=$F,i.AssetTypeFieldsAttachmentService=CF,i.AssetTypeFieldsService=UF,i.AssetTypeIdentifierService=LF,i.AssetTypeIdentifierValueService=kF,i.AssetTypeService=NF,i.AssetTypeStatusService=GF,i.AttachmentModel=$n,i.BaseApiService=st,i.BaseAuthService=jI,i.BaseModelApiService=pt,i.BaseOfflineFileModelApiService=q,i.BaseOfflineModelApiService=E,i.BaseSDK=E_,i.COMMON_AUTO_FIELDS=Kn,i.DEFAULT_ISSUE_PRIORITY=sO,i.DEFAULT_PAGE_SIZE=OI,i.DISCARD_HTTP_STATUSES=gn,i.DeferredPromise=Nt,i.DocumentAttachmentService=HF,i.DocumentService=WF,i.EMPTY_ARRAY=zn,i.EMPTY_OBJECT=jn,i.EmailVerificationService=KF,i.FILE_MODEL_DEFAULT_PAGE_SIZE=PI,i.FileService=YF,i.FormIdentifierService=ZF,i.FormIdentifierValueService=JF,i.FormRevisionAttachmentService=XF,i.FormRevisionService=QF,i.FormService=xF,i.FormSubmissionAttachmentService=e_,i.FormSubmissionService=t_,i.GeoImageService=s_,i.HttpMethod=h,i.IssueAssociationService=i_,i.IssueAttachmentService=n_,i.IssueCommentAttachmentService=a_,i.IssueCommentService=c_,i.IssuePriority=kt,i.IssueService=d_,i.IssueStatusType=Cn,i.IssueTypeAttachmentService=r_,i.IssueTypeFieldValuesAttachmentService=u_,i.IssueTypeFieldValuesService=l_,i.IssueTypeFieldsAttachmentService=o_,i.IssueTypeFieldsService=h_,i.IssueTypeIdentifierService=m_,i.IssueTypeIdentifierValueService=y_,i.IssueTypeService=p_,i.IssueTypeStatusService=A_,i.IssueUpdateChange=U,i.IssueUpdateService=f_,i.JWTService=I_,i.MAX_SERVICE_BATCH_SIZE=Je,i.OUTBOX_RETRY_DELAY=Un,i.OfflineAnalyticsMiddleware=LI,i.OfflineMiddleware=En,i.OrganizationAccessLevel=qn,i.OrganizationAccessService=O_,i.OrganizationService=P_,i.OutboxCoordinator=ct,i.ProjectAccessService=F_,i.ProjectAttachmentService=__,i.ProjectFileService=b_,i.ProjectService=g_,i.RESET_ORGANIZATION_STATE=_,i.RESET_PROJECT_STATE=z,i.RESET_STATE=O,i.RateLimitingMiddleware=kI,i.SelectorBuilder=bO,i.TeamMembershipService=M_,i.TeamService=R_,i.UNKNOWN_ERROR_MESSAGE=at,i.UserService=w_,i.VERSION_REDUCER_KEY=ut,i.VerificationCodeType=HI,i._setLatestRetryTime=CS,i.addAsset=Fr,i.addAssetAttachment=ra,i.addAssetAttachments=Xt,i.addAssetProcedure=qc,i.addAssetProcedureStep=or,i.addAssetProcedureStepFieldValues=Zd,i.addAssetProcedureStepFieldValuesAttachment=qd,i.addAssetProcedureStepFieldValuesAttachments=Is,i.addAssetProcedureStepFieldValuesMany=Jd,i.addAssetProcedureStepFields=Fd,i.addAssetProcedureStepFieldsAttachment=ud,i.addAssetProcedureStepFieldsAttachments=ld,i.addAssetProcedureStepFieldsMany=_d,i.addAssetProcedureSteps=hr,i.addAssetProcedureType=Zc,i.addAssetProcedureTypeAttachment=Oa,i.addAssetProcedureTypeAttachments=Pa,i.addAssetProcedureTypeFieldValues=Pc,i.addAssetProcedureTypeFieldValuesAttachment=uc,i.addAssetProcedureTypeFieldValuesAttachments=cs,i.addAssetProcedureTypeFieldValuesMany=Fc,i.addAssetProcedureTypeFields=Za,i.addAssetProcedureTypeFieldsAttachment=ja,i.addAssetProcedureTypeFieldsAttachments=qa,i.addAssetProcedureTypeFieldsMany=Ja,i.addAssetProcedureTypes=Jc,i.addAssetProcedures=os,i.addAssetStage=xr,i.addAssetStageCompletion=qr,i.addAssetStageCompletions=Dr,i.addAssetStages=eu,i.addAssetType=eo,i.addAssetTypeAttachment=lu,i.addAssetTypeAttachments=zs,i.addAssetTypeFieldValues=ll,i.addAssetTypeFieldValuesAttachment=Xu,i.addAssetTypeFieldValuesAttachments=Ls,i.addAssetTypeFieldValuesMany=ol,i.addAssetTypeFields=Du,i.addAssetTypeFieldsAttachment=Fu,i.addAssetTypeFieldsAttachments=_u,i.addAssetTypeFieldsMany=$u,i.addAssetTypeIdentifier=_l,i.addAssetTypeIdentifierValue=$l,i.addAssetTypeIdentifierValues=Cl,i.addAssetTypeIdentifiers=bl,i.addAssetTypeStatus=mo,i.addAssetTypeStatuses=yo,i.addAssetTypes=to,i.addAssets=Ms,i.addConversation=sa,i.addConversations=gO,i.addDocument=Go,i.addDocumentAttachment=Eo,i.addDocumentAttachments=Bo,i.addDocuments=Ho,i.addForm=rm,i.addFormIdentifier=dh,i.addFormIdentifierValue=Oh,i.addFormIdentifierValues=Ph,i.addFormIdentifiers=rh,i.addFormRevision=Zh,i.addFormRevisionAttachment=jh,i.addFormRevisionAttachments=qh,i.addFormRevisions=ri,i.addFormSubmission=qm,i.addFormSubmissionAttachment=Pm,i.addFormSubmissionAttachments=mi,i.addFormSubmissions=Ti,i.addForms=um,i.addGeoImage=Zm,i.addGeoImages=Jm,i.addIssue=op,i.addIssueAssociation=oy,i.addIssueAssociations=Qe,i.addIssueAttachment=by,i.addIssueAttachments=gi,i.addIssueComment=Qy,i.addIssueCommentAttachment=$y,i.addIssueCommentAttachments=Cy,i.addIssueComments=xy,i.addIssueType=yf,i.addIssueTypeAttachment=_p,i.addIssueTypeAttachments=bp,i.addIssueTypeFieldValues=Qp,i.addIssueTypeFieldValuesAttachment=gA,i.addIssueTypeFieldValuesAttachments=Ni,i.addIssueTypeFieldValuesMany=xp,i.addIssueTypeFields=hA,i.addIssueTypeFieldsAttachment=$p,i.addIssueTypeFieldsAttachments=Cp,i.addIssueTypeFieldsMany=mA,i.addIssueTypeIdentifier=CA,i.addIssueTypeIdentifierValue=xA,i.addIssueTypeIdentifierValues=ef,i.addIssueTypeIdentifiers=UA,i.addIssueTypeStatus=Rf,i.addIssueTypeStatuses=wf,i.addIssueTypes=pf,i.addIssueUpdate=tn,i.addIssueUpdates=sn,i.addIssues=zi,i.addOrganization=bS,i.addOrganizationAccess=rS,i.addOrganizationAccesses=uS,i.addOrganizations=_S,i.addProject=zT,i.addProjectAccess=NS,i.addProjectAccesses=GS,i.addProjectAttachment=sT,i.addProjectAttachments=iT,i.addProjectFile=ST,i.addProjectFiles=TT,i.addProjects=vT,i.addTeam=cI,i.addTeamMembership=WT,i.addTeamMemberships=KT,i.addTeams=dI,i.addUser=un,i.addUsers=xf,i.agentsReducer=aa,i.agentsSlice=Yt,i.areArraysEqual=cO,i.assetAttachmentReducer=Sa,i.assetAttachmentSlice=Jt,i.assetProcedureReducer=kc,i.assetProcedureSlice=ls,i.assetProcedureStepFieldValuesAttachmentReducer=Wd,i.assetProcedureStepFieldValuesAttachmentSlice=Ts,i.assetProcedureStepFieldValuesReducer=cr,i.assetProcedureStepFieldValuesSlice=Fs,i.assetProcedureStepFieldsAttachmentReducer=Id,i.assetProcedureStepFieldsAttachmentSlice=ps,i.assetProcedureStepFieldsReducer=vd,i.assetProcedureStepFieldsSlice=fs,i.assetProcedureStepReducer=fr,i.assetProcedureStepSlice=_s,i.assetProcedureTypeAttachmentReducer=wa,i.assetProcedureTypeAttachmentSlice=es,i.assetProcedureTypeFieldValuesAttachmentReducer=pc,i.assetProcedureTypeFieldValuesAttachmentSlice=as,i.assetProcedureTypeFieldValuesReducer=Ec,i.assetProcedureTypeFieldValuesSlice=us,i.assetProcedureTypeFieldsAttachmentReducer=Na,i.assetProcedureTypeFieldsAttachmentSlice=ss,i.assetProcedureTypeFieldsReducer=ic,i.assetProcedureTypeFieldsSlice=ns,i.assetProcedureTypeReducer=id,i.assetProcedureTypeSlice=ms,i.assetReducer=vr,i.assetSlice=gs,i.assetStageCompletionReducer=Gr,i.assetStageCompletionSlice=ws,i.assetStageReducer=au,i.assetStageSlice=Es,i.assetTypeAttachmentReducer=Iu,i.assetTypeAttachmentSlice=vs,i.assetTypeFieldValuesAttachmentReducer=dl,i.assetTypeFieldValuesAttachmentSlice=Us,i.assetTypeFieldValuesReducer=Ol,i.assetTypeFieldValuesSlice=Gs,i.assetTypeFieldsAttachmentReducer=zu,i.assetTypeFieldsAttachmentSlice=Ds,i.assetTypeFieldsReducer=Yu,i.assetTypeFieldsSlice=Cs,i.assetTypeIdentifierReducer=jl,i.assetTypeIdentifierSlice=Hs,i.assetTypeIdentifierValueReducer=Zl,i.assetTypeIdentifierValueSlice=Ks,i.assetTypeReducer=lo,i.assetTypeSlice=Ys,i.assetTypeStatusReducer=_o,i.assetTypeStatusSlice=Js,i.assetTypeStatusSortFn=Jn,i.authReducer=Mo,i.authSlice=Rt,i.baseReducer=aF,i.baseReducers=bn,i.clearTokens=lP,i.createModelAdapter=F,i.createOfflineAction=jS,i.createPayload=R,i.createSelectionAdapter=iO,i.deleteAsset=gr,i.deleteAssetAttachment=ma,i.deleteAssetAttachments=Qt,i.deleteAssetProcedure=Cc,i.deleteAssetProcedureStep=pr,i.deleteAssetProcedureStepFieldValues=tr,i.deleteAssetProcedureStepFieldValuesAttachment=Ld,i.deleteAssetProcedureStepFieldValuesAttachments=Os,i.deleteAssetProcedureStepFieldValuesMany=sr,i.deleteAssetProcedureStepFields=wd,i.deleteAssetProcedureStepFieldsAttachment=pd,i.deleteAssetProcedureStepFieldsAttachments=Ad,i.deleteAssetProcedureStepFieldsMany=Ed,i.deleteAssetProcedureSteps=Ar,i.deleteAssetProcedureType=xc,i.deleteAssetProcedureTypeAttachment=Ma,i.deleteAssetProcedureTypeAttachments=Ra,i.deleteAssetProcedureTypeFieldValues=Rc,i.deleteAssetProcedureTypeFieldValuesAttachment=yc,i.deleteAssetProcedureTypeFieldValuesAttachments=ds,i.deleteAssetProcedureTypeFieldValuesMany=wc,i.deleteAssetProcedureTypeFields=tc,i.deleteAssetProcedureTypeFieldsAttachment=La,i.deleteAssetProcedureTypeFieldsAttachments=ka,i.deleteAssetProcedureTypeFieldsMany=sc,i.deleteAssetProcedureTypes=ed,i.deleteAssetProcedures=hs,i.deleteAssetStage=iu,i.deleteAssetStageCompletion=kr,i.deleteAssetStageCompletions=Nr,i.deleteAssetStages=nu,i.deleteAssetType=no,i.deleteAssetTypeAttachment=pu,i.deleteAssetTypeAttachments=js,i.deleteAssetTypeFieldValues=Al,i.deleteAssetTypeFieldValuesAttachment=sl,i.deleteAssetTypeFieldValuesAttachments=ks,i.deleteAssetTypeFieldValuesMany=fl,i.deleteAssetTypeFields=Nu,i.deleteAssetTypeFieldsAttachment=wu,i.deleteAssetTypeFieldsAttachments=Eu,i.deleteAssetTypeFieldsMany=Gu,i.deleteAssetTypeIdentifier=El,i.deleteAssetTypeIdentifierValue=Gl,i.deleteAssetTypeIdentifierValues=Hl,i.deleteAssetTypeIdentifiers=Bl,i.deleteAssetTypeStatus=To,i.deleteAssetTypeStatuses=Io,i.deleteAssetTypes=ao,i.deleteAssets=Rs,i.deleteConversation=wO,i.deleteConversations=EO,i.deleteDocument=Jo,i.deleteDocumentAttachment=qo,i.deleteDocumentAttachments=Do,i.deleteDocuments=Xo,i.deleteForm=ym,i.deleteFormIdentifier=mh,i.deleteFormIdentifierValue=Mh,i.deleteFormIdentifierValues=Rh,i.deleteFormIdentifiers=yh,i.deleteFormRevision=em,i.deleteFormRevisionAttachment=Lh,i.deleteFormRevisionAttachments=kh,i.deleteFormRevisions=ui,i.deleteFormSubmission=Cm,i.deleteFormSubmissionAttachment=Mm,i.deleteFormSubmissionAttachments=yi,i.deleteFormSubmissions=Ii,i.deleteForms=pm,i.deleteGeoImage=xm,i.deleteGeoImages=ey,i.deleteIssue=Ap,i.deleteIssueAssociation=hy,i.deleteIssueAssociations=xe,i.deleteIssueAttachment=Ey,i.deleteIssueAttachments=Mi,i.deleteIssueComment=np,i.deleteIssueCommentAttachment=Gy,i.deleteIssueCommentAttachments=Hy,i.deleteIssueComments=ap,i.deleteIssueType=If,i.deleteIssueTypeAttachment=Ep,i.deleteIssueTypeAttachments=Bp,i.deleteIssueTypeFieldValues=nA,i.deleteIssueTypeFieldValuesAttachment=BA,i.deleteIssueTypeFieldValuesAttachments=Gi,i.deleteIssueTypeFieldValuesMany=aA,i.deleteIssueTypeFields=SA,i.deleteIssueTypeFieldsAttachment=Gp,i.deleteIssueTypeFieldsAttachments=Hp,i.deleteIssueTypeFieldsMany=TA,i.deleteIssueTypeIdentifier=HA,i.deleteIssueTypeIdentifierValue=cf,i.deleteIssueTypeIdentifierValues=df,i.deleteIssueTypeIdentifiers=WA,i.deleteIssueTypeStatus=zf,i.deleteIssueTypeStatuses=jf,i.deleteIssueTypes=Of,i.deleteIssueUpdate=nn,i.deleteIssueUpdates=an,i.deleteIssues=ji,i.deleteOrganization=RS,i.deleteOrganizationAccess=yS,i.deleteOrganizationAccesses=pS,i.deleteOrganizations=wS,i.deleteProject=DT,i.deleteProjectAccess=ZS,i.deleteProjectAccesses=JS,i.deleteProjectAttachment=rT,i.deleteProjectAttachments=uT,i.deleteProjectFile=PT,i.deleteProjectFiles=FT,i.deleteProjects=$T,i.deleteTeam=hI,i.deleteTeamMembership=QT,i.deleteTeamMemberships=xT,i.deleteTeams=mI,i.deleteUser=ln,i.deleteUsers=sS,i.dequeue=EI,i.discard=VI,i.documentAttachmentReducer=Lo,i.documentAttachmentSlice=Qs,i.documentSlice=ei,i.documentsReducer=Qo,i.downloadFile=yO,i.emailRegex=PO,i.enqueue=wI,i.enqueueRequest=DS,i.extractResponseFromError=zI,i.fallbackToEmptyArray=f,i.fallbackToEmptyObject=ft,i.fetchBlobFromObjectUrl=Nn,i.fetchFileFromObjectUrl=Gn,i.fileReducer=nh,i.fileSlice=si,i.formIdentifierReducer=Sh,i.formIdentifierSlice=ii,i.formIdentifierValueReducer=Vh,i.formIdentifierValueSlice=ai,i.formReducer=Am,i.formRevisionAttachmentReducer=Wh,i.formRevisionAttachmentSlice=ci,i.formRevisionReducer=am,i.formRevisionsSlice=di,i.formSlice=li,i.formSubmissionAttachmentReducer=Bm,i.formSubmissionAttachmentSlice=hi,i.formSubmissionReducer=Gm,i.formSubmissionSlice=Si,i.geoImageReducer=ny,i.geoImageSlice=Pi,i.getAssetProcedureStepSubTree=Zn,i.getAssetProcedureStepTrees=FO,i.getClientSDK=UI,i.getClientStore=dt,i.getDocumentSubTree=xn,i.getDocumentTrees=_O,i.getFileExtension=kn,i.getLocalDateString=Ln,i.getLocalRelativeDateString=lO,i.getOutboxCoordinator=it,i.getRenamedFile=mO,i.getRequestDescription=S,i.getS3FileKey=hO,i.hashFile=St,i.initSDK=B_,i.initializeAssetAttachments=da,i.initializeAssetProcedureStepFieldValues=Yd,i.initializeAssetProcedureStepFieldValuesAttachments=jd,i.initializeAssetProcedureStepFields=Pd,i.initializeAssetProcedureStepFieldsAttachments=rd,i.initializeAssetProcedureSteps=rr,i.initializeAssetProcedureTypeAttachments=Ia,i.initializeAssetProcedureTypeFieldValues=Oc,i.initializeAssetProcedureTypeFieldValuesAttachments=rc,i.initializeAssetProcedureTypeFields=Ya,i.initializeAssetProcedureTypeFieldsAttachments=za,i.initializeAssetProcedureTypes=Yc,i.initializeAssetProcedures=jc,i.initializeAssetStageCompletions=jr,i.initializeAssetStages=Jr,i.initializeAssetTypeAttachments=uu,i.initializeAssetTypeFieldValues=ul,i.initializeAssetTypeFieldValuesAttachments=Ju,i.initializeAssetTypeFields=qu,i.initializeAssetTypeFieldsAttachments=Pu,i.initializeAssetTypeIdentifierValues=Dl,i.initializeAssetTypeIdentifiers=Fl,i.initializeAssetTypeStatuses=ho,i.initializeAssetTypes=Xl,i.initializeAssets=Pr,i.initializeConversations=ta,i.initializeDocumentAttachments=wo,i.initializeDocuments=No,i.initializeFormIdentifierValues=Ih,i.initializeFormIdentifiers=ch,i.initializeFormRevisionAttachments=zh,i.initializeFormRevisions=Yh,i.initializeFormSubmissionAttachments=Om,i.initializeFormSubmissions=vm,i.initializeForms=dm,i.initializeGeoImages=Wm,i.initializeIssueAssociations=cy,i.initializeIssueAttachments=_y,i.initializeIssueCommentAttachments=Dy,i.initializeIssueComments=Xy,i.initializeIssueTypeAttachments=Fp,i.initializeIssueTypeFieldValues=Xp,i.initializeIssueTypeFieldValuesAttachments=bA,i.initializeIssueTypeFields=oA,i.initializeIssueTypeFieldsAttachments=Dp,i.initializeIssueTypeIdentifierValues=QA,i.initializeIssueTypeIdentifiers=$A,i.initializeIssueTypeStatuses=Mf,i.initializeIssueTypes=mf,i.initializeIssueUpdates=Uf,i.initializeIssues=lp,i.initializeOrganizationAccesses=dS,i.initializeOrganizations=OS,i.initializeProjectAccesses=kS,i.initializeProjectAttachments=tT,i.initializeProjectFiles=pT,i.initializeProjects=ET,i.initializeTeamMemberships=HT,i.initializeTeams=aI,i.initializeUsers=Jf,i.isImageFile=pO,i.isObjectUrl=Hn,i.isToday=uO,i.issueAssociationReducer=Py,i.issueAssociationSlice=_i,i.issueAttachmentReducer=jy,i.issueAttachmentSlice=bi,i.issueCommentAttachmentReducer=Zy,i.issueCommentAttachmentSlice=wi,i.issueCommentReducer=rp,i.issueCommentSlice=Bi,i.issueReducer=Op,i.issueSlice=vi,i.issueTypeAttachmentReducer=jp,i.issueTypeAttachmentSlice=qi,i.issueTypeFieldValuesAttachmentReducer=qA,i.issueTypeFieldValuesAttachmentSlice=ki,i.issueTypeFieldValuesReducer=uA,i.issueTypeFieldValuesSlice=Ui,i.issueTypeFieldsAttachmentReducer=Zp,i.issueTypeFieldsAttachmentSlice=$i,i.issueTypeFieldsReducer=FA,i.issueTypeFieldsSlice=Li,i.issueTypeIdentifierReducer=JA,i.issueTypeIdentifierSlice=Wi,i.issueTypeIdentifierValueReducer=of,i.issueTypeIdentifierValueSlice=Yi,i.issueTypeReducer=bf,i.issueTypeSlice=Zi,i.issueTypeStatusReducer=$f,i.issueTypeStatusSlice=Xi,i.issueTypeStatusSortFn=Xn,i.issueUpdateReducer=Yf,i.issueUpdateSlice=en,i.logOnlyOnce=AO,i.markAsDeleted=$S,i.markForDeletion=HP,i.memoize=Ht,i.organizationAccessReducer=AS,i.organizationAccessSlice=hn,i.organizationReducer=zS,i.organizationSlice=mn,i.outboxReducer=US,i.outboxSlice=yn,i.overmapEnhancer=yF,i.overmapReducer=cF,i.overmapReducers=II,i.performRequest=Rn,i.performRequestFromAction=BI,i.projectAccessReducer=XS,i.projectAccessSlice=pn,i.projectAttachmentReducer=mT,i.projectAttachmentSlice=fn,i.projectFileReducer=RT,i.projectFileSlice=Tn,i.projectReducer=CT,i.projectSlice=In,i.rehydratedReducer=NT,i.rehydratedSlice=On,i.restructureSelectorWithArgs=A,i.runMiddleware=GI,i.selectAccessToken=oP,i.selectAccessesByUserOfProject=KP,i.selectAccessibleProjects=JP,i.selectActiveOrganizationAccess=LP,i.selectAllDocumentAttachments=xs,i.selectAssetAttachmentById=pa,i.selectAssetAttachmentMapping=ya,i.selectAssetAttachments=xt,i.selectAssetAttachmentsByIds=Aa,i.selectAssetById=Br,i.selectAssetProcedureById=Hc,i.selectAssetProcedureStepById=Sr,i.selectAssetProcedureStepFieldValues=lt,i.selectAssetProcedureStepFieldValuesAttachmentById=Nd,i.selectAssetProcedureStepFieldValuesAttachments=Ps,i.selectAssetProcedureStepFieldValuesAttachmentsByIds=Gd,i.selectAssetProcedureStepFieldValuesAttachmentsMapping=kd,i.selectAssetProcedureStepFieldValuesById=nr,i.selectAssetProcedureStepFieldValuesByIds=ar,i.selectAssetProcedureStepFieldValuesMapping=ir,i.selectAssetProcedureStepFieldValuesOfAsset=HO,i.selectAssetProcedureStepFieldValuesOfAssetProcedure=WO,i.selectAssetProcedureStepFieldValuesOfAssetProcedureStep=KO,i.selectAssetProcedureStepFields=Ft,i.selectAssetProcedureStepFieldsAttachmentById=Sd,i.selectAssetProcedureStepFieldsAttachments=As,i.selectAssetProcedureStepFieldsAttachmentsByIds=Td,i.selectAssetProcedureStepFieldsAttachmentsMapping=fd,i.selectAssetProcedureStepFieldsById=Bd,i.selectAssetProcedureStepFieldsByIds=Vd,i.selectAssetProcedureStepFieldsMapping=Ss,i.selectAssetProcedureStepFieldsOfAssetProcedureStep=kO,i.selectAssetProcedureStepMapping=_t,i.selectAssetProcedureSteps=bs,i.selectAssetProcedureStepsByIds=Tr,i.selectAssetProcedureStepsMappingOfAssetProcedureType=YO,i.selectAssetProcedureStepsOfAssetProcedureType=ZO,i.selectAssetProcedureTypeAttachmentById=Ba,i.selectAssetProcedureTypeAttachmentMapping=Ea,i.selectAssetProcedureTypeAttachments=ts,i.selectAssetProcedureTypeAttachmentsByIds=Va,i.selectAssetProcedureTypeById=ad,i.selectAssetProcedureTypeFieldValues=Ot,i.selectAssetProcedureTypeFieldValuesAttachmentById=fc,i.selectAssetProcedureTypeFieldValuesAttachments=rs,i.selectAssetProcedureTypeFieldValuesAttachmentsByIds=Sc,i.selectAssetProcedureTypeFieldValuesAttachmentsMapping=Ac,i.selectAssetProcedureTypeFieldValuesById=Vc,i.selectAssetProcedureTypeFieldValuesByIds=vc,i.selectAssetProcedureTypeFieldValuesMapping=Bc,i.selectAssetProcedureTypeFieldValuesOfAsset=DO,i.selectAssetProcedureTypeFields=It,i.selectAssetProcedureTypeFieldsAttachmentById=Ha,i.selectAssetProcedureTypeFieldsAttachments=is,i.selectAssetProcedureTypeFieldsAttachmentsByIds=Wa,i.selectAssetProcedureTypeFieldsAttachmentsMapping=Ga,i.selectAssetProcedureTypeFieldsById=ac,i.selectAssetProcedureTypeFieldsByIds=cc,i.selectAssetProcedureTypeFieldsMapping=nc,i.selectAssetProcedureTypeFieldsOfAssetProcedureType=jO,i.selectAssetProcedureTypes=ys,i.selectAssetProcedureTypesByIds=cd,i.selectAssetProcedureTypesMapping=nd,i.selectAssetProcedureTypesOfOrganization=UO,i.selectAssetProcedures=Pt,i.selectAssetProceduresByIds=Wc,i.selectAssetProceduresMapping=Nc,i.selectAssetProceduresOfAssetProcedureType=Gc,i.selectAssetProceduresOfAssetType=CO,i.selectAssetStageById=cu,i.selectAssetStageCompletionById=Kr,i.selectAssetStageCompletionMapping=Hr,i.selectAssetStageCompletions=Wr,i.selectAssetStageCompletionsByIds=Yr,i.selectAssetStages=Vs,i.selectAssetStagesByIds=du,i.selectAssetStagesMappingOfAssetProcedureType=XO,i.selectAssetStagesOfAssetProcedureType=QO,i.selectAssetTypeAttachmentById=fu,i.selectAssetTypeAttachmentMapping=Au,i.selectAssetTypeAttachments=qs,i.selectAssetTypeAttachmentsByIds=Su,i.selectAssetTypeById=ro,i.selectAssetTypeFieldValues=gt,i.selectAssetTypeFieldValuesAttachmentById=nl,i.selectAssetTypeFieldValuesAttachments=Ns,i.selectAssetTypeFieldValuesAttachmentsByIds=al,i.selectAssetTypeFieldValuesAttachmentsMapping=il,i.selectAssetTypeFieldValuesById=Tl,i.selectAssetTypeFieldValuesByIds=Il,i.selectAssetTypeFieldValuesMapping=Sl,i.selectAssetTypeFieldValuesOfAsset=sP,i.selectAssetTypeFields=ot,i.selectAssetTypeFieldsAttachmentById=Vu,i.selectAssetTypeFieldsAttachments=$s,i.selectAssetTypeFieldsAttachmentsByIds=vu,i.selectAssetTypeFieldsAttachmentsMapping=Bu,i.selectAssetTypeFieldsById=Wu,i.selectAssetTypeFieldsByIds=Ku,i.selectAssetTypeFieldsMapping=Hu,i.selectAssetTypeFieldsOfAssetType=eP,i.selectAssetTypeIdentifierById=vl,i.selectAssetTypeIdentifierMapping=Vl,i.selectAssetTypeIdentifierValueById=Kl,i.selectAssetTypeIdentifierValueMapping=Wl,i.selectAssetTypeIdentifierValues=Mt,i.selectAssetTypeIdentifierValuesByIds=Yl,i.selectAssetTypeIdentifierValuesOfAsset=aP,i.selectAssetTypeIdentifierValuesOfIdentifier=cP,i.selectAssetTypeIdentifiers=Ws,i.selectAssetTypeIdentifiersByIds=zl,i.selectAssetTypeIdentifiersOfAssetType=nP,i.selectAssetTypeStatusById=Po,i.selectAssetTypeStatusMapping=Oo,i.selectAssetTypeStatuses=Xs,i.selectAssetTypeStatusesByIds=Fo,i.selectAssetTypeStatusesOfAssetType=rP,i.selectAssetTypeValuesOfAssetType=iP,i.selectAssetTypes=Zs,i.selectAssetTypesByIds=uo,i.selectAssetTypesMapping=co,i.selectAssetTypesOfOrganization=dP,i.selectAssets=bt,i.selectAssetsByIds=Vr,i.selectAssetsMapping=wr,i.selectAssetsOfAssetType=Er,i.selectAssetsOfProject=JO,i.selectAttachmentsOfAsset=fa,i.selectAttachmentsOfAssetProcedureStepFieldValues=Hd,i.selectAttachmentsOfAssetProcedureStepFields=LO,i.selectAttachmentsOfAssetProcedureType=vO,i.selectAttachmentsOfAssetProcedureTypeFieldValues=Tc,i.selectAttachmentsOfAssetProcedureTypeFields=zO,i.selectAttachmentsOfAssetType=Tu,i.selectAttachmentsOfAssetTypeFieldValues=cl,i.selectAttachmentsOfAssetTypeFields=xO,i.selectAttachmentsOfDocument=mP,i.selectAttachmentsOfFormRevision=PP,i.selectAttachmentsOfFormSubmission=Em,i.selectAttachmentsOfIssue=Vy,i.selectAttachmentsOfIssueComment=gP,i.selectAttachmentsOfIssueType=wP,i.selectAttachmentsOfIssueTypeFieldValues=jA,i.selectAttachmentsOfIssueTypeFields=EP,i.selectAttachmentsOfProject=ZP,i.selectCommentsOfIssue=MP,i.selectConversation=VO,i.selectConversationMapping=Zt,i.selectConversations=BO,i.selectCurrentUser=nS,i.selectDeletedRequests=NP,i.selectDescendantsOfAssetProcedureStep=Ir,i.selectDescendantsOfDocument=th,i.selectDocumentAttachmentById=Co,i.selectDocumentAttachmentMapping=$o,i.selectDocumentAttachmentsByIds=Uo,i.selectDocumentById=xo,i.selectDocuments=wt,i.selectDocumentsByIds=eh,i.selectDocumentsMapping=ti,i.selectFieldValuesOfAssetProcedure=$O,i.selectFormById=Sm,i.selectFormIdentifierById=Ah,i.selectFormIdentifierMapping=ph,i.selectFormIdentifierValueById=Eh,i.selectFormIdentifierValueMapping=wh,i.selectFormIdentifierValues=Et,i.selectFormIdentifierValuesByIds=Bh,i.selectFormIdentifierValuesOfFormSubmission=IP,i.selectFormIdentifierValuesOfIdentifier=OP,i.selectFormIdentifiers=ni,i.selectFormIdentifiersByIds=fh,i.selectFormIdentifiersOfForm=TP,i.selectFormMapping=fm,i.selectFormRevisionAttachmentById=Gh,i.selectFormRevisionAttachments=Nh,i.selectFormRevisionAttachmentsByIds=Hh,i.selectFormRevisionAttachmentsMapping=Bt,i.selectFormRevisionById=sm,i.selectFormRevisionMapping=tm,i.selectFormRevisions=Vt,i.selectFormRevisionsByIds=im,i.selectFormRevisionsOfForm=nm,i.selectFormSubmissionAttachemntsByIds=fi,i.selectFormSubmissionAttachmentById=Rm,i.selectFormSubmissionAttachments=Ai,i.selectFormSubmissionAttachmentsByIds=wm,i.selectFormSubmissionAttachmentsMapping=pi,i.selectFormSubmissionById=Lm,i.selectFormSubmissions=Oi,i.selectFormSubmissionsByIds=km,i.selectFormSubmissionsMapping=Um,i.selectFormSubmissionsOfForm=Nm,i.selectForms=oi,i.selectFormsByIds=Tm,i.selectFormsOfOrganization=_P,i.selectGeoImageById=sy,i.selectGeoImageMapping=ty,i.selectGeoImages=Fi,i.selectGeoImagesByIds=iy,i.selectGeoImagesOfProject=bP,i.selectIsLoggedIn=hP,i.selectIssueAssociationById=yy,i.selectIssueAssociationMapping=my,i.selectIssueAssociations=et,i.selectIssueAssociationsByIds=py,i.selectIssueAssociationsOfAsset=Iy,i.selectIssueAssociationsOfAssets=Oy,i.selectIssueAssociationsOfIssue=Ty,i.selectIssueAssociationsOfIssues=Sy,i.selectIssueAssociationsToIssue=Ay,i.selectIssueAssociationsToIssues=fy,i.selectIssueAttachmentById=vy,i.selectIssueAttachmentMapping=By,i.selectIssueAttachments=Ri,i.selectIssueAttachmentsByIds=zy,i.selectIssueById=Sp,i.selectIssueCommentAttachmentById=Ky,i.selectIssueCommentAttachmentMapping=Wy,i.selectIssueCommentAttachments=Ei,i.selectIssueCommentAttachmentsByIds=Yy,i.selectIssueCommentById=cp,i.selectIssueCommentMapping=Vi,i.selectIssueCommentsByIds=dp,i.selectIssueMapping=fp,i.selectIssueTypeAttachmentById=vp,i.selectIssueTypeAttachmentMapping=Vp,i.selectIssueTypeAttachments=Di,i.selectIssueTypeAttachmentsByIds=zp,i.selectIssueTypeById=Ff,i.selectIssueTypeFieldValues=zt,i.selectIssueTypeFieldValuesAttachmentById=vA,i.selectIssueTypeFieldValuesAttachments=Hi,i.selectIssueTypeFieldValuesAttachmentsByIds=zA,i.selectIssueTypeFieldValuesAttachmentsMapping=VA,i.selectIssueTypeFieldValuesById=dA,i.selectIssueTypeFieldValuesByIds=rA,i.selectIssueTypeFieldValuesMapping=cA,i.selectIssueTypeFieldValuesOfIssue=BP,i.selectIssueTypeFields=ht,i.selectIssueTypeFieldsAttachmentById=Kp,i.selectIssueTypeFieldsAttachments=Ci,i.selectIssueTypeFieldsAttachmentsByIds=Yp,i.selectIssueTypeFieldsAttachmentsMapping=Wp,i.selectIssueTypeFieldsById=OA,i.selectIssueTypeFieldsByIds=PA,i.selectIssueTypeFieldsMapping=IA,i.selectIssueTypeFieldsOfIssueType=VP,i.selectIssueTypeIdentifierById=YA,i.selectIssueTypeIdentifierMapping=KA,i.selectIssueTypeIdentifierValueById=uf,i.selectIssueTypeIdentifierValueMapping=rf,i.selectIssueTypeIdentifierValues=jt,i.selectIssueTypeIdentifierValuesByIds=lf,i.selectIssueTypeIdentifierValuesOfIdentifier=DP,i.selectIssueTypeIdentifierValuesOfIssue=qP,i.selectIssueTypeIdentifiers=Ki,i.selectIssueTypeIdentifiersByIds=ZA,i.selectIssueTypeIdentifiersOfIssueType=jP,i.selectIssueTypeMapping=Pf,i.selectIssueTypeStatusById=xi,i.selectIssueTypeStatusMapping=qf,i.selectIssueTypeStatuses=Qi,i.selectIssueTypeStatusesByIds=Df,i.selectIssueTypeStatusesOfIssueType=CP,i.selectIssueTypeValuesOfIssueType=zP,i.selectIssueTypes=Ji,i.selectIssueTypesByIds=_f,i.selectIssueTypesOfOrganization=$P,i.selectIssueUpdateById=Hf,i.selectIssueUpdateMapping=cn,i.selectIssueUpdates=dn,i.selectIssueUpdatesByIds=Wf,i.selectIssueUpdatesOfIssue=Kf,i.selectIssues=vt,i.selectIssuesByIds=Tp,i.selectIssuesOfIssueType=Ip,i.selectIssuesOfProject=RP,i.selectLatestAssetProcedureStepFieldsOfAssetProcedureStep=NO,i.selectLatestAssetProcedureTypeFieldsOfAssetProcedureType=qO,i.selectLatestAssetTypeFieldsOfAssetType=tP,i.selectLatestFieldsByAssetProcedureStep=GO,i.selectLatestFormRevisionOfForm=FP,i.selectLatestIssueTypeFieldsOfIssueType=vP,i.selectLatestRetryTime=GP,i.selectMembershipsByUserOfTeam=tF,i.selectOrganizationAccessById=fS,i.selectOrganizationAccessMapping=$t,i.selectOrganizationAccessUserMapping=TS,i.selectOrganizationAccessesByIds=SS,i.selectOrganizationById=VS,i.selectOrganizationDocuments=pP,i.selectOrganizations=BS,i.selectOrganizationsByIds=vS,i.selectOrganizationsMapping=ES,i.selectProjectAccessById=QS,i.selectProjectAccessMapping=An,i.selectProjectAccesses=mt,i.selectProjectAccessesByIds=xS,i.selectProjectAccessesOfProject=WP,i.selectProjectAttachmentById=oT,i.selectProjectAttachmentMapping=lT,i.selectProjectAttachments=Sn,i.selectProjectAttachmentsByIds=hT,i.selectProjectById=LT,i.selectProjectDocuments=yP,i.selectProjectFileById=gT,i.selectProjectFileMapping=_T,i.selectProjectFiles=bT,i.selectProjectFilesByIds=MT,i.selectProjectMapping=UT,i.selectProjects=Ct,i.selectProjectsByIds=kT,i.selectProjectsOfOrganization=XP,i.selectRehydrated=eF,i.selectStageMapping=Bs,i.selectTeamById=pI,i.selectTeamMembershipById=sI,i.selectTeamMemberships=Ut,i.selectTeamMembershipsByIds=iI,i.selectTeamMembershipsMapping=tI,i.selectTeams=_n,i.selectTeamsByIds=AI,i.selectTeamsMapping=yI,i.selectTeamsOfOrganization=iF,i.selectUploadUrl=SP,i.selectUserById=Dt,i.selectUsers=qt,i.selectUsersByIds=aS,i.selectUsersMapping=on,i.selectUsersOfOrganization=kP,i.selectUsersOfProject=YP,i.selectUsersOfTeam=sF,i.setAsset=Mr,i.setAssetAttachment=ua,i.setAssetAttachments=la,i.setAssetProcedure=Uc,i.setAssetProcedureStep=ur,i.setAssetProcedureStepFieldValues=Xd,i.setAssetProcedureStepFieldValuesAttachment=Dd,i.setAssetProcedureStepFieldValuesAttachments=$d,i.setAssetProcedureStepFieldValuesMany=Qd,i.setAssetProcedureStepFields=bd,i.setAssetProcedureStepFieldsAttachment=od,i.setAssetProcedureStepFieldsAttachments=hd,i.setAssetProcedureStepFieldsMany=gd,i.setAssetProcedureSteps=lr,i.setAssetProcedureType=td,i.setAssetProcedureTypeAttachment=Fa,i.setAssetProcedureTypeAttachments=_a,i.setAssetProcedureTypeFieldValues=_c,i.setAssetProcedureTypeFieldValuesAttachment=lc,i.setAssetProcedureTypeFieldValuesAttachments=oc,i.setAssetProcedureTypeFieldValuesMany=bc,i.setAssetProcedureTypeFields=Xa,i.setAssetProcedureTypeFieldsAttachment=Da,i.setAssetProcedureTypeFieldsAttachments=$a,i.setAssetProcedureTypeFieldsMany=Qa,i.setAssetProcedureTypes=sd,i.setAssetProcedures=Lc,i.setAssetStage=Xr,i.setAssetStageCompletion=$r,i.setAssetStageCompletions=Cr,i.setAssetStages=Qr,i.setAssetType=Ql,i.setAssetTypeAttachment=ou,i.setAssetTypeAttachments=hu,i.setAssetTypeFieldValues=hl,i.setAssetTypeFieldValuesAttachment=Qu,i.setAssetTypeFieldValuesAttachments=xu,i.setAssetTypeFieldValuesMany=ml,i.setAssetTypeFields=Cu,i.setAssetTypeFieldsAttachment=bu,i.setAssetTypeFieldsAttachments=gu,i.setAssetTypeFieldsMany=Uu,i.setAssetTypeIdentifier=gl,i.setAssetTypeIdentifierValue=Ul,i.setAssetTypeIdentifierValues=Ll,i.setAssetTypeIdentifiers=Ml,i.setAssetTypeStatus=po,i.setAssetTypeStatuses=Ao,i.setAssetTypes=xl,i.setAssets=Rr,i.setClientSDK=CI,i.setClientStore=DI,i.setConversation=ia,i.setConversations=MO,i.setCurrentUser=UP,i.setDocument=Wo,i.setDocumentAttachment=Vo,i.setDocumentAttachments=vo,i.setDocuments=Ko,i.setForm=lm,i.setFormIdentifier=uh,i.setFormIdentifierValue=Fh,i.setFormIdentifierValues=_h,i.setFormIdentifiers=lh,i.setFormRevision=Jh,i.setFormRevisionAttachment=Dh,i.setFormRevisionAttachments=$h,i.setFormRevisions=Xh,i.setFormSubmission=zm,i.setFormSubmissionAttachment=Fm,i.setFormSubmissionAttachments=_m,i.setFormSubmissions=jm,i.setForms=om,i.setGeoImage=Km,i.setGeoImages=Ym,i.setIssue=hp,i.setIssueAssociation=ry,i.setIssueAssociations=dy,i.setIssueAttachment=gy,i.setIssueAttachments=My,i.setIssueComment=ep,i.setIssueCommentAttachment=Uy,i.setIssueCommentAttachments=Ly,i.setIssueComments=tp,i.setIssueType=Af,i.setIssueTypeAttachment=gp,i.setIssueTypeAttachments=Mp,i.setIssueTypeFieldValues=eA,i.setIssueTypeFieldValuesAttachment=MA,i.setIssueTypeFieldValuesAttachments=RA,i.setIssueTypeFieldValuesMany=tA,i.setIssueTypeFields=yA,i.setIssueTypeFieldsAttachment=Up,i.setIssueTypeFieldsAttachments=Lp,i.setIssueTypeFieldsMany=pA,i.setIssueTypeIdentifier=LA,i.setIssueTypeIdentifierValue=tf,i.setIssueTypeIdentifierValues=sf,i.setIssueTypeIdentifiers=kA,i.setIssueTypeStatus=Ef,i.setIssueTypeStatuses=Bf,i.setIssueTypes=ff,i.setIssueUpdate=Lf,i.setIssueUpdates=kf,i.setIssues=mp,i.setLoggedIn=go,i.setOrganization=FS,i.setOrganizationAccess=lS,i.setOrganizationAccesses=oS,i.setOrganizations=PS,i.setProject=VT,i.setProjectAccess=HS,i.setProjectAccesses=WS,i.setProjectAttachment=nT,i.setProjectAttachments=aT,i.setProjectFile=AT,i.setProjectFiles=fT,i.setProjects=BT,i.setRehydrated=xP,i.setTeam=rI,i.setTeamMembership=YT,i.setTeamMemberships=ZT,i.setTeams=uI,i.setTokens=uP,i.setUploadUrl=fP,i.setUser=Qf,i.setUsers=Xf,i.shallowEqual=aO,i.slugify=IO,i.spacesToDashesLower=TO,i.teamMembershipReducer=eI,i.teamMembershipSlice=Pn,i.teamReducer=fI,i.teamSlice=Fn,i.toFileNameSafeString=SO,i.toUuidArray=V,i.toUuidIdRecord=fO,i.truncate=OO,i.updateAsset=_r,i.updateAssetAttachment=oa,i.updateAssetAttachments=ha,i.updateAssetProcedure=Dc,i.updateAssetProcedureStep=mr,i.updateAssetProcedureStepFieldValues=xd,i.updateAssetProcedureStepFieldValuesAttachment=Cd,i.updateAssetProcedureStepFieldValuesAttachments=Ud,i.updateAssetProcedureStepFieldValuesMany=er,i.updateAssetProcedureStepFields=Md,i.updateAssetProcedureStepFieldsAttachment=md,i.updateAssetProcedureStepFieldsAttachments=yd,i.updateAssetProcedureStepFieldsMany=Rd,i.updateAssetProcedureSteps=yr,i.updateAssetProcedureType=Xc,i.updateAssetProcedureTypeAttachment=ba,i.updateAssetProcedureTypeAttachments=ga,i.updateAssetProcedureTypeFieldValues=gc,i.updateAssetProcedureTypeFieldValuesAttachment=hc,i.updateAssetProcedureTypeFieldValuesAttachments=mc,i.updateAssetProcedureTypeFieldValuesMany=Mc,i.updateAssetProcedureTypeFields=xa,i.updateAssetProcedureTypeFieldsAttachment=Ca,i.updateAssetProcedureTypeFieldsAttachments=Ua,i.updateAssetProcedureTypeFieldsMany=ec,i.updateAssetProcedureTypes=Qc,i.updateAssetProcedures=$c,i.updateAssetStage=tu,i.updateAssetStageCompletion=Ur,i.updateAssetStageCompletions=Lr,i.updateAssetStages=su,i.updateAssetType=so,i.updateAssetTypeAttachment=mu,i.updateAssetTypeAttachments=yu,i.updateAssetTypeFieldValues=yl,i.updateAssetTypeFieldValuesAttachment=el,i.updateAssetTypeFieldValuesAttachments=tl,i.updateAssetTypeFieldValuesMany=pl,i.updateAssetTypeFields=Lu,i.updateAssetTypeFieldsAttachment=Mu,i.updateAssetTypeFieldsAttachments=Ru,i.updateAssetTypeFieldsMany=ku,i.updateAssetTypeIdentifier=Rl,i.updateAssetTypeIdentifierValue=kl,i.updateAssetTypeIdentifierValues=Nl,i.updateAssetTypeIdentifiers=wl,i.updateAssetTypeStatus=fo,i.updateAssetTypeStatuses=So,i.updateAssetTypes=io,i.updateAssets=br,i.updateConversation=na,i.updateConversations=RO,i.updateDocument=Yo,i.updateDocumentAttachment=zo,i.updateDocumentAttachments=jo,i.updateDocuments=Zo,i.updateForm=hm,i.updateFormIdentifier=oh,i.updateFormIdentifierValue=bh,i.updateFormIdentifierValues=gh,i.updateFormIdentifiers=hh,i.updateFormRevision=Qh,i.updateFormRevisionAttachment=Ch,i.updateFormRevisionAttachments=Uh,i.updateFormRevisions=xh,i.updateFormSubmission=Dm,i.updateFormSubmissionAttachment=bm,i.updateFormSubmissionAttachments=gm,i.updateFormSubmissions=$m,i.updateForms=mm,i.updateGeoImage=Xm,i.updateGeoImages=Qm,i.updateIssue=yp,i.updateIssueAssociation=uy,i.updateIssueAssociations=ly,i.updateIssueAttachment=Ry,i.updateIssueAttachments=wy,i.updateIssueComment=sp,i.updateIssueCommentAttachment=ky,i.updateIssueCommentAttachments=Ny,i.updateIssueComments=ip,i.updateIssueType=Sf,i.updateIssueTypeAttachment=Rp,i.updateIssueTypeAttachments=wp,i.updateIssueTypeFieldValues=sA,i.updateIssueTypeFieldValuesAttachment=wA,i.updateIssueTypeFieldValuesAttachments=EA,i.updateIssueTypeFieldValuesMany=iA,i.updateIssueTypeFields=AA,i.updateIssueTypeFieldsAttachment=kp,i.updateIssueTypeFieldsAttachments=Np,i.updateIssueTypeFieldsMany=fA,i.updateIssueTypeIdentifier=NA,i.updateIssueTypeIdentifierValue=nf,i.updateIssueTypeIdentifierValues=af,i.updateIssueTypeIdentifiers=GA,i.updateIssueTypeStatus=Vf,i.updateIssueTypeStatuses=vf,i.updateIssueTypes=Tf,i.updateIssueUpdate=Nf,i.updateIssueUpdates=Gf,i.updateIssues=pp,i.updateOrganization=MS,i.updateOrganizationAccess=hS,i.updateOrganizationAccesses=mS,i.updateOrganizations=gS,i.updateProject=qT,i.updateProjectAccess=KS,i.updateProjectAccesses=YS,i.updateProjectAttachment=cT,i.updateProjectAttachments=dT,i.updateProjectFile=IT,i.updateProjectFiles=OT,i.updateProjects=jT,i.updateTeam=lI,i.updateTeamMembership=JT,i.updateTeamMemberships=XT,i.updateTeams=oI,i.updateUser=tS,i.updateUsers=eS,i.useSelectorBuilder=nO,i.userReducer=iS,i.userSlice=rn,i.uuidObj=P,i.uuidObjSortFn=Kt,i.uuidSortFn=Tt,i.versioningReducer=TI,i.versioningSlice=SI,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
|
|
13
|
+
external URLs and therefore not prepended with VITE_API_URL.`;throw new Error(o)}return await this.addCache(r),r}processPresignedUrl(e,n){if("warning"in n){if(n.warning==="already_uploaded")return Promise.resolve(void 0);throw console.error(n.warning),new Error(n.warning)}return this.enqueueRequest({url:n.url,description:"Upload file to S3",method:h.POST,isExternalUrl:!0,isAuthNeeded:!1,attachmentHash:e,blockers:[`s3-${n.fields.key}`],blocks:[e],s3url:n})}processPresignedUrls(e){const n={};for(const[a,c]of Object.entries(e))n[a]=this.processPresignedUrl(a,c);return n}async getFilePayload(e){const a={sha1:await Tt(e),file_type:e.type,extension:Gn(e),size:e.size};return await this.client.files.addCache(e),a}}class XF extends E{constructor(){super(...arguments);m(this,"name","Form Identifier");m(this,"url","/form-identifiers");m(this,"actions",{addOne:uh,addMany:lh,setOne:oh,setMany:hh,updateOne:mh,updateMany:yh,deleteOne:ph,deleteMany:Ah,initialize:rh});m(this,"selectors",{selectById:Sh,selectByIds:Th})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.form],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected form identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(c)),c}}class QF extends E{constructor(){super(...arguments);m(this,"name","Form Identifier Value");m(this,"url","/form-identifier-values");m(this,"actions",{addOne:Fh,addMany:_h,setOne:bh,setMany:gh,updateOne:Mh,updateMany:Rh,deleteOne:wh,deleteMany:Eh,initialize:Ph});m(this,"selectors",{selectById:Vh,selectByIds:vh})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form_submission,e.form_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected form identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class xF extends D{constructor(){super(...arguments);m(this,"name","Form Revision Attachment");m(this,"url","/form-revision-attachments");m(this,"actions",{addOne:Dh,addMany:$h,setOne:Ch,setMany:Uh,updateOne:Lh,updateMany:kh,deleteOne:Nh,deleteMany:Gh,initialize:qh});m(this,"selectors",{selectById:Wh,selectByIds:Kh})}getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,form_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form_revision__form__organization:e}},n);return this.dispatch(a(c)),c}}class e_ extends E{constructor(){super(...arguments);m(this,"name","Form Revision");m(this,"url","/form-revisions");m(this,"actions",{addOne:Xh,addMany:ui,setOne:Qh,setMany:xh,updateOne:em,updateMany:tm,deleteOne:sm,deleteMany:li,initialize:Jh});m(this,"selectors",{selectById:nm,selectByIds:am})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(c)),c}}class t_ extends E{constructor(){super(...arguments);m(this,"name","Form");m(this,"url","/forms");m(this,"actions",{addOne:lm,addMany:om,setOne:hm,setMany:mm,updateOne:ym,updateMany:pm,deleteOne:Am,deleteMany:fm,initialize:um});m(this,"selectors",{selectById:Im,selectByIds:Om})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error("Expected form to exist");const u=this.select(Hm(e)),r=this.select(cm(e));this.dispatch(n(e)),this.dispatch(Oi(V(u))),this.dispatch(li(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(y){throw this.dispatch(a(d)),this.dispatch(ui(r)),this.dispatch(Ii(u)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class s_ extends D{constructor(){super(...arguments);m(this,"name","Form Submission Attachment");m(this,"url","/form-submission-attachments");m(this,"actions",{addOne:_m,addMany:yi,setOne:bm,setMany:gm,updateOne:Mm,updateMany:Rm,deleteOne:wm,deleteMany:pi,initialize:Fm});m(this,"selectors",{selectById:Em,selectByIds:Bm})}getId(e){return e.uuid}getBlockers(e){return[e.form_submission]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,form_submission:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,c=this.select(Si(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(a(c)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e}},n)).flat();return this.dispatch(a(d)),d}}class i_ extends E{constructor(){super(...arguments);m(this,"name","Form Submission");m(this,"url","/form-submissions");m(this,"actions",{addOne:$m,addMany:Ii,setOne:qm,setMany:Dm,updateOne:Cm,updateMany:Um,deleteOne:Lm,deleteMany:Oi,initialize:jm});m(this,"selectors",{selectById:Nm,selectByIds:Gm})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.form_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${d.uuid}/`,payload:e,blockers:[d.uuid],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Vm(e));this.dispatch(n(e)),this.dispatch(pi(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(yi(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_revision__form_organization:e}},n)).flat();return this.dispatch(a(d)),d}}class n_ extends D{constructor(){super(...arguments);m(this,"name","Geo Image");m(this,"url","/geo-images");m(this,"actions",{addOne:Xm,addMany:Qm,setOne:Zm,setMany:Jm,updateOne:xm,updateMany:ey,deleteOne:ty,deleteMany:sy,initialize:Ym});m(this,"selectors",{selectById:ny,selectByIds:ay})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,title:e.title,description:e.description,geo_marker:e.geo_marker,canvas_marker:e.canvas_marker,direction:e.direction,original_date:e.original_date,project:e.project}}buildBulkPayload(e){return{uuid:e.uuid,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,title:e.title,description:e.description,geo_marker:e.geo_marker,canvas_marker:e.canvas_marker,direction:e.direction,original_date:e.original_date,project:e.project}}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project:e}},n);return this.dispatch(a(c)),c}}class a_ extends E{constructor(){super(...arguments);m(this,"name","Issue Association");m(this,"url","/issue-associations");m(this,"actions",{addOne:my,addMany:Qe,setOne:ly,setMany:uy,updateOne:oy,updateMany:hy,deleteOne:yy,deleteMany:xe,initialize:ry});m(this,"selectors",{selectById:Ay,selectByIds:fy})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.associated_issue,...e.issue?[e.issue]:[],...e.asset?[e.asset]:[]],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=e.map(o=>P({...o,submitted_at:u,created_by:d}));this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{payloads:r.map(o=>R(o)),submitted_at:u},blockers:r.flatMap(o=>[o.associated_issue,...o.issue?[o.issue]:[],...o.asset?[o.asset]:[]]),blocks:V(r)});return y.then(o=>{this.dispatch(c(o))}).catch(()=>{this.dispatch(a(V(r)))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Issue association with uuid ${e} not found in store.`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{associated_issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class c_ extends D{constructor(){super(...arguments);m(this,"name","Issue Attachment");m(this,"url","/issue-attachments");m(this,"actions",{addOne:My,addMany:Mi,setOne:Ry,setMany:wy,updateOne:Ey,updateMany:By,deleteOne:Vy,deleteMany:Ri,initialize:gy});m(this,"selectors",{selectById:jy,selectByIds:qy})}getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class d_ extends D{constructor(){super(...arguments);m(this,"name","Issue Comment Attachment");m(this,"url","/issue-comment-attachments");m(this,"actions",{addOne:Uy,addMany:Ly,setOne:ky,setMany:Ny,updateOne:Gy,updateMany:Hy,deleteOne:Wy,deleteMany:Ky,initialize:Cy});m(this,"selectors",{selectById:Zy,selectByIds:Jy})}getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class r_ extends E{constructor(){super(...arguments);m(this,"name","Issue Comment");m(this,"url","/issue-comments");m(this,"actions",{addOne:ep,addMany:tp,setOne:sp,setMany:ip,updateOne:np,updateMany:ap,deleteOne:cp,deleteMany:dp,initialize:xy});m(this,"selectors",{selectById:rp,selectByIds:up})}add(e){const{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=P({...e,author:this.select(r=>r.userReducer.currentUser.uuid),submitted_at:new Date().toISOString()});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[e.issue],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{setMany:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}class u_ extends E{constructor(){super(...arguments);m(this,"name","Issue");m(this,"url","/issues");m(this,"actions",{addOne:mp,addMany:ji,setOne:yp,setMany:pp,updateOne:Ap,updateMany:fp,deleteOne:Sp,deleteMany:qi,initialize:hp});m(this,"selectors",{selectById:Ip,selectByIds:Op})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=new Date().toISOString(),u=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),r=P({...e,submitted_at:d,created_by:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.project,r.issue_type,r.status],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const d={...c,...e};this.dispatch(n(d));const u={};for(const o of[C.TITLE,C.DESCRIPTION,C.STATUS,C.PRIORITY,C.ASSIGNED_TO,C.DUE_DATE])if(o in e&&e[o]!==c[o])switch(o){case C.PRIORITY:u[o]=e[o];break;case C.DUE_DATE:u[o]=e[o];break;case C.DESCRIPTION:u[o]=e[o];break;case C.TITLE:u[o]=e[o];break;case C.STATUS:{const p=e[o],T=this.select(en(p));if(!T)throw new Error(`Trying to update issue type status with ${p} which does not exist in store`);u[o]={name:T.name,color:T.color,uuid:T.uuid};break}case C.ASSIGNED_TO:{const p=e[o];if(p===null)u[o]=null;else{const T=this.select($t(p));if(!T)throw new Error(`Trying to update assigned to with ${p} which does not exist in store.`);u[o]={email:T.email,uuid:T.uuid}}break}}const r=P({created_by:this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),submitted_at:new Date().toISOString(),issue:c.uuid,changes:u});this.dispatch(sn(r));const y=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return y.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(n(c)),this.dispatch(an(r.uuid))}),[d,y]}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:c}=this.selectors,d=V(e).toSorted(It);if(d.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(c(d)).toSorted(Yt);if(d.length!=u.length)throw new Error(`Attempting to bulk update ${d.length-u.length} issues that dont exist in the store`);const r=[];for(let T=0;T<d.length;T++)r.push({...u[T],...e[T]});this.dispatch(a(r));const y=tt(e,Math.min(n??e.length,Je)),o=[];let p=null;for(const T of y){const B=Xe.v4(),g=V(T),b=T.map(({status:M})=>M).filter(Boolean),I=this.enqueueRequest({description:S(h.PATCH,this.name,!0),method:h.PATCH,url:`${this.url}/bulk/`,payload:{payloads:T},blockers:(p?[p]:[]).concat(g).concat(b),blocks:[B].concat(g)});o.push(I),p=B}return Promise.all(o).then(T=>{this.dispatch(a(T.flat()))}).catch(()=>{this.dispatch(a(u))}),[r,o]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No issue with uuid ${e} found in the store`);const u=this.select(Sy(e)),r=this.select(Oy(e)),y=this.select(zy(e)),o=this.select(Zf(e));this.dispatch(n(e)),this.dispatch(Ri(V(y))),this.dispatch(cn(V(o))),this.dispatch(xe(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(a(d)),this.dispatch(Mi(y)),this.dispatch(nn(o)),this.dispatch(Qe(u)),this.dispatch(Qe(r)),p}}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e)),u=this.select(Ty(e)),r=this.select(Iy(e));this.dispatch(a(e)),this.dispatch(xe(V(u))),this.dispatch(xe(V(r)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(y){throw this.dispatch(n(d)),this.dispatch(Qe(u)),this.dispatch(Qe(r)),y}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class l_ extends D{constructor(){super(...arguments);m(this,"name","Issue Type Attachment");m(this,"url","/issue-type-attachments");m(this,"actions",{addOne:gp,addMany:Mp,setOne:Rp,setMany:wp,updateOne:Ep,updateMany:Bp,deleteOne:Vp,deleteMany:vp,initialize:bp});m(this,"selectors",{selectById:jp,selectByIds:qp})}getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class o_ extends D{constructor(){super(...arguments);m(this,"name","Issue Type Field Values Attachment");m(this,"url","/issue-type-field-values-attachments");m(this,"actions",{addOne:RA,addMany:Gi,setOne:wA,setMany:EA,updateOne:BA,updateMany:VA,deleteOne:vA,deleteMany:Hi,initialize:MA});m(this,"selectors",{selectById:jA,selectByIds:qA})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,field_values:c,file_sha1:d,file_name:u,file_extension:r}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!0),method:h.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class h_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Field Values");m(this,"url","/issue-type-field-values");m(this,"actions",{addOne:eA,addMany:tA,setOne:sA,setMany:iA,updateOne:nA,updateMany:aA,deleteOne:cA,deleteMany:dA,initialize:xp});m(this,"selectors",{selectById:uA,selectByIds:lA})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u}),y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue,e.fields_revision],blocks:[r.uuid]});return this.dispatch(n(r)),y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[d.uuid,d.fields_revision,d.issue],blocks:[d.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(DA(e));this.dispatch(n(e)),this.dispatch(Hi(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(Gi(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class m_ extends D{constructor(){super(...arguments);m(this,"name","Issue Type Fields Attachment");m(this,"url","/issue-type-fields-attachments");m(this,"actions",{addOne:Up,addMany:Lp,setOne:kp,setMany:Np,updateOne:Gp,updateMany:Hp,deleteOne:Wp,deleteMany:Kp,initialize:Cp});m(this,"selectors",{selectById:Zp,selectByIds:Jp})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}=e;return{uuid:n,field_identifier:a,fields_revision:c,file_sha1:d,file_name:u,file_extension:r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{fields_revision__issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class y_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Fields");m(this,"url","/issue-type-fields");m(this,"actions",{addOne:yA,addMany:pA,setOne:AA,setMany:fA,updateOne:SA,updateMany:TA,deleteOne:IA,deleteMany:OA,initialize:mA});m(this,"selectors",{selectById:FA,selectByIds:_A})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(o=>{throw this.dispatch(c(r.uuid)),o}),[r,y]}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class p_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Identifier");m(this,"url","/issue-type-identifiers");m(this,"actions",{addOne:LA,addMany:kA,setOne:NA,setMany:GA,updateOne:HA,updateMany:WA,deleteOne:KA,deleteMany:YA,initialize:UA});m(this,"selectors",{selectById:JA,selectByIds:XA})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[r.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected issue type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class A_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Identifier Value");m(this,"url","/issue-type-identifier-values");m(this,"actions",{addOne:tf,addMany:sf,setOne:nf,setMany:af,updateOne:cf,updateMany:df,deleteOne:rf,deleteMany:uf,initialize:ef});m(this,"selectors",{selectById:of,selectByIds:hf})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue,e.issue_type_identifier],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected issue type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(d)),d}}class f_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type");m(this,"url","/issue-types");m(this,"actions",{addOne:Af,addMany:ff,setOne:Sf,setMany:Tf,updateOne:If,updateMany:Of,deleteOne:Pf,deleteMany:Ff,initialize:pf});m(this,"selectors",{selectById:bf,selectByIds:gf})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,submitted_at:u,created_by:d});this.dispatch(n(r));const y=this.enqueueRequest({method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const u=this.select(Pp(e));this.dispatch(n(e)),this.dispatch(qi(V(u)));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(ji(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class S_ extends E{constructor(){super(...arguments);m(this,"name","Issue Type Status");m(this,"url","/issue-type-statuses");m(this,"actions",{addOne:Ef,addMany:Bf,setOne:Vf,setMany:vf,updateOne:zf,updateMany:jf,deleteOne:qf,deleteMany:Df,initialize:wf});m(this,"selectors",{selectById:en,selectByIds:Cf})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=this.select(o=>{var p;return((p=o.userReducer.currentUser)==null?void 0:p.uuid)??null}),u=new Date().toISOString(),r=P({...e,created_by:d,submitted_at:u});this.dispatch(n(r));const y=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(r),blockers:[e.issue_type],blocks:[r.uuid]});return y.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(c(r.uuid))}),[r,y]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`No issue type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(c)),c}}class T_ extends E{constructor(){super(...arguments);m(this,"name","Issue Update");m(this,"url","/issue-updates");m(this,"actions",{addOne:sn,addMany:nn,setOne:Nf,setMany:Gf,updateOne:Hf,updateMany:Wf,deleteOne:an,deleteMany:cn,initialize:kf});m(this,"selectors",{selectById:Kf,selectByIds:Yf})}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(d)),d}}const I_=1800;function O_(t){if(!t.access)throw new Error("Missing access token");if(!t.refresh)throw new Error("Missing refresh token");return{accessToken:t.access,refreshToken:t.refresh}}class P_ extends DI{constructor(){super(...arguments);m(this,"_getRenewedTokens",async e=>{const n=this.performRequest({method:h.POST,url:this.refreshTokensUrl,payload:{refresh:e},isAuthNeeded:!1,checkAuth:!1});let a;try{a=await n}catch(c){console.error("Could not renew tokens; clearing auth",c),this.clearAuth();return}if(!a.access)throw new Error("Missing access token");return{accessToken:a.access,refreshToken:a.refresh??this.getRefreshToken()}})}clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(Ro(!1)),this.clearTokens(),this.dispatch(O()),this.dispatch(O())}async renewTokens(){const e=this.getRefreshToken();if(!e)throw new Error("No refresh token found");console.debug(this.constructor.name,"renewing tokens");try{const n=await this._getRenewedTokens(e);if(!n)return;console.debug("Got renewed tokens"),this.setTokens(n)}catch(n){throw console.error("Could not renew tokens; clearing auth",n),this.clearAuth(),n}}tokenIsExpiringSoon(){const e=this.getAccessToken();if(!e)return!1;const n=Date.now()/1e3;let a;try{a=sO(e).exp??n}catch{a=n}return a-n<I_}getAuthHeader(){return`Bearer ${this.getAccessToken()}`}async prepareAuth(){if(this.tokenIsExpiringSoon()){console.debug(this.constructor.name,"preparing auth");try{await this.renewTokens()}catch(e){return e instanceof U&&this.clearAuth(),e instanceof Error?Promise.reject(e):Promise.reject(new Error((e??ct).toString()))}}}async handleUnauthorized(e,n){if(e.url.endsWith("/token/refresh/"))throw this.select(a=>a.authReducer.isLoggedIn)&&console.warn("No signed-in user to sign out."),this.clearAuth(),new U({message:"You have been signed out due to inactivity.",response:n,discard:!0});if(this.select(a=>a.authReducer.isLoggedIn))await this.renewTokens();else throw console.debug("Forbidden; user is not logged in."),new U({message:"Incorrect username or password.",response:n,discard:!0})}async initAuth(e){const n=Xe.v4();return console.debug(this.constructor.name,"Initiating auth"),this.performRequest({uuid:n,method:h.POST,url:this.initTokensUrl,payload:e,isAuthNeeded:!1,checkAuth:!1}).then(a=>{this.setTokens(O_(a))})}}class At extends st{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:h.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:h.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:h.GET,...s},e)}}class F_ extends At{constructor(){super(...arguments);m(this,"name","Organization Access");m(this,"url","/organization-accesses");m(this,"actions",{addOne:lS,addMany:oS,setOne:hS,setMany:mS,updateOne:yS,updateMany:pS,deleteOne:AS,deleteMany:fS,initialize:uS});m(this,"selectors",{selectById:TS,selectByIds:IS})}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid)),d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e)),u=this.select($t(d.user));this.dispatch(n(d.uuid)),this.dispatch(on(d.user));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${d.uuid}/`,blockers:[d.uuid],blocks:[]})}catch(r){throw this.dispatch(a(d)),this.dispatch(ln(u)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class __ extends At{constructor(){super(...arguments);m(this,"name","Organization");m(this,"url","/organizations");m(this,"actions",{addOne:MS,addMany:gS,setOne:bS,setMany:_S,updateOne:wS,updateMany:RS,deleteOne:ES,deleteMany:BS,initialize:FS});m(this,"selectors",{selectById:zS,selectByIds:jS})}async add(e){const{addOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(n(a)),a}async update(e){const{setOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return this.dispatch(n(a)),a}async invite(e,n){return this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/${e}/invite/${n}/`,blockers:[],blocks:[]})}async refreshStore(e){const{initialize:n}=this.actions,a=await this.list({},e);return this.dispatch(n(a)),a}}class b_ extends E{constructor(){super(...arguments);m(this,"name","Project Access");m(this,"url","/project-accesses");m(this,"actions",{addOne:HS,addMany:WS,setOne:KS,setMany:YS,updateOne:ZS,updateMany:JS,deleteOne:XS,deleteMany:QS,initialize:GS});m(this,"selectors",{selectById:eT,selectByIds:tT})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[d.organization_access,d.project],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(r=>{throw this.dispatch(c(d.uuid)),r}),[d,u]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:c}=this.actions,d=this.select(y=>{var o;return((o=y.userReducer.currentUser)==null?void 0:o.uuid)??null}),u=e.map(y=>P({...y,created_by:d}));this.dispatch(n(u));const r=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{project_accesses:u.map(y=>R(y))},blockers:u.flatMap(y=>[y.project,y.organization_access]),blocks:u.map(y=>y.uuid)});return r.then(y=>{this.dispatch(c(y))}).catch(y=>{throw this.dispatch(a(u.map(o=>o.uuid))),y}),[u,r]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid)),d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[]});return u.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(n(c)),r}),[d,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(c)),c}}class g_ extends D{constructor(){super(...arguments);m(this,"name","Project Attachment");m(this,"url","/project-attachments");m(this,"actions",{addOne:nT,addMany:aT,setOne:cT,setMany:dT,updateOne:rT,updateMany:uT,deleteOne:lT,deleteMany:oT,initialize:iT});m(this,"selectors",{selectById:mT,selectByIds:yT})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(c)),c}}class M_ extends D{constructor(){super(...arguments);m(this,"name","Project File");m(this,"url","/project-files");m(this,"actions",{addOne:IT,addMany:OT,setOne:ST,setMany:TT,updateOne:PT,updateMany:FT,deleteOne:_T,deleteMany:bT,initialize:fT});m(this,"selectors",{selectById:RT,selectByIds:wT})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(c=>{var d;return((d=c.userReducer.currentUser)==null?void 0:d.uuid)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,project:e.project,z_index:e.z_index,canvas_bounds:e.canvas_bounds,bounds:e.bounds}}buildBulkPayload(e){return{uuid:e.uuid,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,project:e.project,z_index:e.z_index,canvas_bounds:e.canvas_bounds,bounds:e.bounds}}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async refreshStore(e,n){const{initialize:a}=this.actions,d=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(d)),d}}class R_ extends At{constructor(){super(...arguments);m(this,"name","Project");m(this,"url","/projects");m(this,"actions",{addOne:qT,addMany:jT,setOne:zT,setMany:vT,updateOne:$T,updateMany:DT,deleteOne:CT,deleteMany:UT,initialize:VT});m(this,"selectors",{selectById:NT,selectByIds:GT})}async add(e){const{addOne:n}=this.actions,a=await this.performRequest({method:h.POST,url:`${this.url}/`,payload:R(e)});return this.dispatch(n(a)),a}async update(e){const{updateOne:n}=this.actions,a=await this.performRequest({method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e)});return this.dispatch(n(a)),a}async delete(e){const{deleteOne:n}=this.actions,a=await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(n(e)),a}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class w_ extends E{constructor(){super(...arguments);m(this,"name","Team Membership");m(this,"url","/team-memberships");m(this,"actions",{addOne:YT,addMany:ZT,setOne:JT,setMany:XT,updateOne:QT,updateMany:xT,deleteOne:eI,deleteMany:tI,initialize:KT});m(this,"selectors",{selectById:nI,selectByIds:aI})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[e.team],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}bulkAdd(e){const{addMany:n,setMany:a,deleteMany:c}=this.actions,d=this.select(y=>{var o;return((o=y.userReducer.currentUser)==null?void 0:o.uuid)??null}),u=e.map(y=>P({...y,created_by:d}));this.dispatch(n(u));const r=this.enqueueRequest({description:S(h.POST,this.name,!0),method:h.POST,url:`${this.url}/bulk/`,payload:{team_memberships:u.map(y=>R(y))},blockers:u.map(y=>y.team),blocks:u.map(y=>y.uuid)});return r.then(y=>{this.dispatch(a(y))}).catch(()=>{this.dispatch(c(u.map(y=>y.uuid)))}),[u,r]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{team__organization:e}},n);return this.dispatch(a(c)),c}}class E_ extends E{constructor(){super(...arguments);m(this,"name","Team");m(this,"url","/teams");m(this,"actions",{addOne:rI,addMany:uI,setOne:lI,setMany:oI,updateOne:hI,updateMany:mI,deleteOne:yI,deleteMany:pI,initialize:dI});m(this,"selectors",{selectById:fI,selectByIds:SI})}add(e){const{addOne:n,setOne:a,deleteOne:c}=this.actions,d=P({...e,submitted_at:new Date().toISOString(),created_by:this.select(r=>{var y;return((y=r.userReducer.currentUser)==null?void 0:y.uuid)??null})});this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.POST,this.name,!1),method:h.POST,url:`${this.url}/`,payload:R(d),blockers:[],blocks:[d.uuid]});return u.then(r=>{this.dispatch(a(r))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,u]}update(e){const{setOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e.uuid));if(!c)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const d={...c,...e};this.dispatch(n(d));const u=this.enqueueRequest({description:S(h.PATCH,this.name,!1),method:h.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e),blockers:[e.uuid],blocks:[e.uuid]});return u.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(n(c))}),[d,u]}async delete(e){const{deleteOne:n,setOne:a}=this.actions,{selectById:c}=this.selectors,d=this.select(c(e));if(!d)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:S(h.DELETE,this.name,!1),method:h.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(a(d)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(c)),c}}class B_ extends At{constructor(){super(...arguments);m(this,"name","User");m(this,"url","/user");m(this,"actions",{addOne:ln,addMany:tS,setOne:eS,setMany:xf,updateOne:iS,updateMany:sS,deleteOne:on,deleteMany:nS,initialize:Qf});m(this,"selectors",{selectById:$t,selectByIds:dS})}async list(e,n){const{organizationUuid:a,...c}=e,d=a?`/organizations/${a}${this.url}s/`:`/${this.url}`;return this.performRequest({method:h.GET,url:d,...c},n)}async refreshStore(e,n){const{initialize:a}=this.actions,c=await this.list({organizationUuid:e},n);return this.dispatch(a(c)),c}}async function wn(t,s,e,n,a){const c=n instanceof st;c&&s.checkAuth!==!1&&await n.auth.prepareAuth();const d={queryParams:"",isAuthNeeded:!0},{s3url:u,payload:r,headers:y,method:o,queryParams:p,attachmentHash:T,isExternalUrl:B,isAuthNeeded:g,isResponseBlob:b}={...d,...s};let I=s.url;const M=T?await e.files.fetchCache(T):void 0,w=M?await Nn(M):void 0;if(T){if(!w)throw new Error(`Cannot upload file ${T} because it's not cached.`);if(w.size===0)throw new Error(`Cannot upload file ${T} because its has a size of 0.`)}!B&&!I.startsWith("http")&&(!I.startsWith("/")&&!I.startsWith("blob:")&&(I="/"+I),I=t+I);const q=$=>{if(T){if(!u)throw new Error(`No S3 URL for file ${T}`);if("warning"in u)throw new Error(`S3 URL warning for file ${T}`);if(!w)throw new Error(`No file for file ${T}`);const k=u.fields["x-amz-checksum-sha1"];if(!k)throw new Error(`No checksum for file ${T}`);return $.set("x-amz-checksum-sha1",k).field({...r,...u.fields}).attach("file",w)}return $.send(r)},L={[h.GET]:()=>b?at.get(I.toString()).responseType("blob"):at.get(I.toString()),[h.POST]:()=>{const $=at.post(I.toString());return q($)},[h.PATCH]:()=>{const $=at.patch(I.toString());return q($)},[h.PUT]:()=>{const $=at.put(I.toString());return q($)},[h.DELETE]:()=>{const $=at.delete(I.toString());return q($)}}[o];let v=L();const nt=()=>{console.debug("aborting request:",s.url),v.abort()};a==null||a.addEventListener("abort",nt),g&&c&&(v=n.auth.applyAuth(v)),y&&(v=v.set(y));try{return await v.query(p)}catch($){const k=qI($);if(c&&k&&n.auth.isAuthFailure(k))throw await n.auth.handleUnauthorized(v,k),new U({response:k,innerError:$,discard:!1});const kt=k==null?void 0:k.status;throw new U({response:k,innerError:$,discard:kt!==void 0&&Mn.includes(kt)})}finally{a==null||a.removeEventListener("abort",nt)}}class V_{constructor(s){m(this,"store");this.store=s}_performRequest(s,e,n,a){const c=new Gt,d={...e,uuid:e.uuid??Xe.v4()};return wn(s,d,this,n,a).then(u=>{c.resolve(u.body)}).catch(u=>{u instanceof Error?c.reject(u):c.reject(new Error((u??ct).toString()))}),c}async performRequest(s,e,n,a){return this._performRequest(s,e,n,a).then(c=>{if(c instanceof U)throw c;return c})}async enqueueRequest(s,e,n){return this._enqueueRequest(s,e,n).then(a=>{if(a instanceof U)throw a;return a})}_enqueueRequest(s,e,n){const a=new Gt,c={...s,BASE_URL:e,serviceName:n},d=this.store.dispatch(CS(c)),u=y=>{if(y)a.resolve(y.body);else{const o=new U({message:"Could not get a response from the server.",response:y,discard:!0});a.reject(o)}},r=y=>{y instanceof U?y.options.discard=!0:(console.error("Received an unexpected error while processing a request:",y,`
|
|
14
|
+
Converting error to APIError and discarding.`),y=new U({message:"An error occurred while processing the request.",innerError:y,discard:!0})),a.reject(y)};return d.then(u,r),a}async performPagination(s,e,n,a,c){const d={...e,queryParams:{...e.queryParams,paginate:!0,limit:n}},{method:u}=d,r=[];let y=await this.performRequest(s,d,a,c);for(r.push(y.results);y.next;)y=await this.performRequest(s,{url:y.next,method:u},a,c),r.push(y.results);return r}}class dt{constructor(){m(this,"graph");m(this,"requestAttemptCounter");this.graph=new iO.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(s){const e=new dt;for(let n=0;n<s.length;n++){const a=s[n];if(!a){console.error("Outbox item was undefined");continue}e.sneakRequest(a);for(let c=0;c<n;c++){const d=s[c];if(!d){console.error("Previous outbox item was undefined");continue}d.payload.uuid!==a.payload.uuid&&d.payload.blocks.some(u=>a.payload.blockers.includes(u))&&dt._addDependency(a.payload.uuid,d.payload.uuid,e.graph)}}return e}_addDependency(s,e){dt._addDependency(s,e,this.graph)}static _addDependency(s,e,n){if(s===e)throw new Error(`Tried to add dependency from node to itself: ${s}`);if(!n.hasNode(s))throw new Error(`Tried to add dependency from non-existent node: ${s} (to node: ${e})`);if(!n.hasNode(e))throw new Error(`Tried to add dependency to non-existent node: ${e} (from node: ${s})`);n.addDependency(s,e)}addRequest(s){if(this.graph.addNode(s.payload.uuid,s),!(s.payload.blockers.length===0||this.graph.size()===1))for(const e of this.graph.overallOrder()){if(e===s.payload.uuid)continue;const n=this.graph.getNodeData(e),a=new Set(n.payload.blocks);s.payload.blockers.some(c=>a.has(c))&&this._addDependency(s.payload.uuid,e)}}insertRequest(s){this.graph.addNode(s.payload.uuid,s);for(const e of this.graph.overallOrder()){if(e===s.payload.uuid)continue;const n=this.graph.getNodeData(e),a=new Set(s.payload.blocks);n.payload.blockers.some(c=>a.has(c))&&this._addDependency(e,s.payload.uuid)}}sneakRequest(s){this.graph.addNode(s.payload.uuid,s)}_getNextNode(){const s=this.graph.overallOrder(!0);let e=1/0,n;for(const a of s){const c=this.requestAttemptCounter[a]||0;c<e&&(e=c,n=a)}return n}peek(){const s=this._getNextNode();if(s)return this.graph.getNodeData(s)}remove(s){this.graph.removeNode(s),delete this.requestAttemptCounter[s]}pop(){const s=this.peek();return s&&this.graph.removeNode(s.payload.uuid),s}getQueue(){const s=this.graph.overallOrder().map(n=>this.graph.getNodeData(n)),e=this._getNextNode();if(e){const n=this.graph.getNodeData(e),a=s.findIndex(c=>c.payload.uuid===n.payload.uuid);a!==-1&&(s.splice(a,1),s.unshift(n))}return s}getReady(){let s=this.graph.overallOrder(!0).map(e=>this.graph.getNodeData(e));return s=s.sort((e,n)=>e.meta.offline.effect.timestamp.localeCompare(n.meta.offline.effect.timestamp)),s=s.sort((e,n)=>{const a=this.requestAttemptCounter[e.payload.uuid]||0,c=this.requestAttemptCounter[n.payload.uuid]||0;return a-c}),s}registerRetry(s){this.requestAttemptCounter[s]=(this.requestAttemptCounter[s]||0)+1}}let $I;function CI(t){$I=t}function rt(){return $I}let UI;function LI(t){UI=t}function kI(){return UI}let En=null;function it(){const t=rt();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(En)return En;const s=t.getState().offline.outbox,e=dt._fromOutbox(s);return En=e,e}const v_=(t,s)=>{const e=new s(t);return LI(e),CI(t),e};class z_{constructor(s){m(this,"_all");m(this,"_previous");this._all=[s],this._previous=s,this.then=this.then.bind(this),this.compile=this.compile.bind(this)}then(s){return this._previous&&(this._previous.next=s),this._all.push(s),this._previous=s,{then:this.then,compile:this.compile}}compile(){return this._all}}class Bn{constructor(){m(this,"next");this.next=null}then(s){return new z_(this).then(s)}async run(s){if(this.next)return this.next.run(s);{if(console.debug("Middleware finished. Performing request:",s.payload.url),!rt())throw new Error("Client store not set");const n=kI();if(!n)throw new Error("Client SDK not set");return vI(s,n)}}}class NI extends Bn{async run(s){return super.run(s)}}class GI extends Bn{async run(s){return super.run(s)}}const HI=new NI().then(new GI).compile();function WI(t){var s;return(s=HI[0])==null?void 0:s.run(t)}var KI=(t=>(t[t.USER_REGISTRATION=0]="USER_REGISTRATION",t[t.APPLICATION_INVITE=2]="APPLICATION_INVITE",t[t.PROJECT_INVITE=4]="PROJECT_INVITE",t[t.ORGANIZATION_INVITE=6]="ORGANIZATION_INVITE",t[t.ADD_EMAIL_DOMAIN=8]="ADD_EMAIL_DOMAIN",t[t.RESET_PASSWORD=10]="RESET_PASSWORD",t))(KI||{});i.ALL_MIDDLEWARE=HI,i.APIError=U,i.AgentService=OF,i.AssetAttachmentService=PF,i.AssetProcedureService=FF,i.AssetProcedureStepFieldValuesAttachmentService=_F,i.AssetProcedureStepFieldValuesService=bF,i.AssetProcedureStepFieldsAttachmentService=gF,i.AssetProcedureStepFieldsService=MF,i.AssetProcedureStepService=RF,i.AssetProcedureTypeAttachmentService=wF,i.AssetProcedureTypeFieldValuesAttachmentService=EF,i.AssetProcedureTypeFieldValuesService=BF,i.AssetProcedureTypeFieldsAttachmentService=VF,i.AssetProcedureTypeFieldsService=vF,i.AssetProcedureTypeService=zF,i.AssetService=jF,i.AssetStageCompletionService=qF,i.AssetStageService=DF,i.AssetStatusType=$n,i.AssetTypeAttachmentService=$F,i.AssetTypeFieldValuesAttachmentService=CF,i.AssetTypeFieldValuesService=UF,i.AssetTypeFieldsAttachmentService=LF,i.AssetTypeFieldsService=kF,i.AssetTypeIdentifierService=NF,i.AssetTypeIdentifierValueService=GF,i.AssetTypeService=HF,i.AssetTypeStatusService=WF,i.AttachmentModel=Cn,i.BaseApiService=st,i.BaseAuthService=DI,i.BaseModelApiService=At,i.BaseOfflineFileModelApiService=D,i.BaseOfflineModelApiService=E,i.BaseSDK=V_,i.COMMON_AUTO_FIELDS=Zn,i.DEFAULT_ISSUE_PRIORITY=nO,i.DEFAULT_PAGE_SIZE=FI,i.DISCARD_HTTP_STATUSES=Mn,i.DeferredPromise=Gt,i.DocumentAttachmentService=KF,i.DocumentService=YF,i.EMPTY_ARRAY=jn,i.EMPTY_OBJECT=qn,i.EmailVerificationService=ZF,i.FILE_MODEL_DEFAULT_PAGE_SIZE=_I,i.FileService=JF,i.FormIdentifierService=XF,i.FormIdentifierValueService=QF,i.FormRevisionAttachmentService=xF,i.FormRevisionService=e_,i.FormService=t_,i.FormSubmissionAttachmentService=s_,i.FormSubmissionService=i_,i.GeoImageService=n_,i.HttpMethod=h,i.IssueAssociationService=a_,i.IssueAttachmentService=c_,i.IssueCommentAttachmentService=d_,i.IssueCommentService=r_,i.IssuePriority=Nt,i.IssueService=u_,i.IssueStatusType=Un,i.IssueTypeAttachmentService=l_,i.IssueTypeFieldValuesAttachmentService=o_,i.IssueTypeFieldValuesService=h_,i.IssueTypeFieldsAttachmentService=m_,i.IssueTypeFieldsService=y_,i.IssueTypeIdentifierService=p_,i.IssueTypeIdentifierValueService=A_,i.IssueTypeService=f_,i.IssueTypeStatusService=S_,i.IssueUpdateChange=C,i.IssueUpdateService=T_,i.JWTService=P_,i.MAX_SERVICE_BATCH_SIZE=Je,i.OUTBOX_RETRY_DELAY=Ln,i.OfflineAnalyticsMiddleware=NI,i.OfflineMiddleware=Bn,i.OrganizationAccessLevel=Dn,i.OrganizationAccessService=F_,i.OrganizationService=__,i.OutboxCoordinator=dt,i.ProjectAccessService=b_,i.ProjectAttachmentService=g_,i.ProjectFileService=M_,i.ProjectService=R_,i.RESET_ORGANIZATION_STATE=_,i.RESET_PROJECT_STATE=j,i.RESET_STATE=O,i.RateLimitingMiddleware=GI,i.SelectorBuilder=MO,i.TeamMembershipService=w_,i.TeamService=E_,i.UNKNOWN_ERROR_MESSAGE=ct,i.UserService=B_,i.VERSION_REDUCER_KEY=lt,i.VerificationCodeType=KI,i._setLatestRetryTime=LS,i.addAsset=br,i.addAssetAttachment=la,i.addAssetAttachments=Qt,i.addAssetProcedure=$c,i.addAssetProcedureStep=mr,i.addAssetProcedureStepFieldValues=Xd,i.addAssetProcedureStepFieldValuesAttachment=$d,i.addAssetProcedureStepFieldValuesAttachments=Os,i.addAssetProcedureStepFieldValuesMany=Qd,i.addAssetProcedureStepFields=bd,i.addAssetProcedureStepFieldsAttachment=od,i.addAssetProcedureStepFieldsAttachments=hd,i.addAssetProcedureStepFieldsMany=gd,i.addAssetProcedureSteps=yr,i.addAssetProcedureType=Xc,i.addAssetProcedureTypeAttachment=Fa,i.addAssetProcedureTypeAttachments=_a,i.addAssetProcedureTypeFieldValues=_c,i.addAssetProcedureTypeFieldValuesAttachment=oc,i.addAssetProcedureTypeFieldValuesAttachments=ds,i.addAssetProcedureTypeFieldValuesMany=bc,i.addAssetProcedureTypeFields=Xa,i.addAssetProcedureTypeFieldsAttachment=Da,i.addAssetProcedureTypeFieldsAttachments=$a,i.addAssetProcedureTypeFieldsMany=Qa,i.addAssetProcedureTypes=Qc,i.addAssetProcedures=hs,i.addAssetStage=tu,i.addAssetStageCompletion=$r,i.addAssetStageCompletions=Cr,i.addAssetStages=su,i.addAssetType=so,i.addAssetTypeAttachment=hu,i.addAssetTypeAttachments=js,i.addAssetTypeFieldValues=hl,i.addAssetTypeFieldValuesAttachment=xu,i.addAssetTypeFieldValuesAttachments=ks,i.addAssetTypeFieldValuesMany=ml,i.addAssetTypeFields=Cu,i.addAssetTypeFieldsAttachment=bu,i.addAssetTypeFieldsAttachments=gu,i.addAssetTypeFieldsMany=Uu,i.addAssetTypeIdentifier=gl,i.addAssetTypeIdentifierValue=Ul,i.addAssetTypeIdentifierValues=Ll,i.addAssetTypeIdentifiers=Ml,i.addAssetTypeStatus=po,i.addAssetTypeStatuses=Ao,i.addAssetTypes=io,i.addAssets=Rs,i.addConversation=na,i.addConversations=RO,i.addDocument=Wo,i.addDocumentAttachment=Vo,i.addDocumentAttachments=vo,i.addDocuments=Ko,i.addForm=lm,i.addFormIdentifier=uh,i.addFormIdentifierValue=Fh,i.addFormIdentifierValues=_h,i.addFormIdentifiers=lh,i.addFormRevision=Xh,i.addFormRevisionAttachment=Dh,i.addFormRevisionAttachments=$h,i.addFormRevisions=ui,i.addFormSubmission=$m,i.addFormSubmissionAttachment=_m,i.addFormSubmissionAttachments=yi,i.addFormSubmissions=Ii,i.addForms=om,i.addGeoImage=Xm,i.addGeoImages=Qm,i.addIssue=mp,i.addIssueAssociation=my,i.addIssueAssociations=Qe,i.addIssueAttachment=My,i.addIssueAttachments=Mi,i.addIssueComment=ep,i.addIssueCommentAttachment=Uy,i.addIssueCommentAttachments=Ly,i.addIssueComments=tp,i.addIssueType=Af,i.addIssueTypeAttachment=gp,i.addIssueTypeAttachments=Mp,i.addIssueTypeFieldValues=eA,i.addIssueTypeFieldValuesAttachment=RA,i.addIssueTypeFieldValuesAttachments=Gi,i.addIssueTypeFieldValuesMany=tA,i.addIssueTypeFields=yA,i.addIssueTypeFieldsAttachment=Up,i.addIssueTypeFieldsAttachments=Lp,i.addIssueTypeFieldsMany=pA,i.addIssueTypeIdentifier=LA,i.addIssueTypeIdentifierValue=tf,i.addIssueTypeIdentifierValues=sf,i.addIssueTypeIdentifiers=kA,i.addIssueTypeStatus=Ef,i.addIssueTypeStatuses=Bf,i.addIssueTypes=ff,i.addIssueUpdate=sn,i.addIssueUpdates=nn,i.addIssues=ji,i.addOrganization=MS,i.addOrganizationAccess=lS,i.addOrganizationAccesses=oS,i.addOrganizations=gS,i.addProject=qT,i.addProjectAccess=HS,i.addProjectAccesses=WS,i.addProjectAttachment=nT,i.addProjectAttachments=aT,i.addProjectFile=IT,i.addProjectFiles=OT,i.addProjects=jT,i.addTeam=rI,i.addTeamMembership=YT,i.addTeamMemberships=ZT,i.addTeams=uI,i.addUser=ln,i.addUsers=tS,i.agentsReducer=da,i.agentsSlice=Zt,i.areArraysEqual=rO,i.assetAttachmentReducer=Ia,i.assetAttachmentSlice=Xt,i.assetProcedureReducer=Gc,i.assetProcedureSlice=os,i.assetProcedureStepFieldValuesAttachmentReducer=Yd,i.assetProcedureStepFieldValuesAttachmentSlice=Is,i.assetProcedureStepFieldValuesReducer=rr,i.assetProcedureStepFieldValuesSlice=_s,i.assetProcedureStepFieldsAttachmentReducer=Pd,i.assetProcedureStepFieldsAttachmentSlice=As,i.assetProcedureStepFieldsReducer=jd,i.assetProcedureStepFieldsSlice=Ss,i.assetProcedureStepReducer=Tr,i.assetProcedureStepSlice=bs,i.assetProcedureTypeAttachmentReducer=Ba,i.assetProcedureTypeAttachmentSlice=ts,i.assetProcedureTypeFieldValuesAttachmentReducer=fc,i.assetProcedureTypeFieldValuesAttachmentSlice=cs,i.assetProcedureTypeFieldValuesReducer=Vc,i.assetProcedureTypeFieldValuesSlice=ls,i.assetProcedureTypeFieldsAttachmentReducer=Ha,i.assetProcedureTypeFieldsAttachmentSlice=is,i.assetProcedureTypeFieldsReducer=ac,i.assetProcedureTypeFieldsSlice=as,i.assetProcedureTypeReducer=ad,i.assetProcedureTypeSlice=ys,i.assetReducer=jr,i.assetSlice=Ms,i.assetStageCompletionReducer=Wr,i.assetStageCompletionSlice=Es,i.assetStageReducer=du,i.assetStageSlice=Bs,i.assetTypeAttachmentReducer=Pu,i.assetTypeAttachmentSlice=zs,i.assetTypeFieldValuesAttachmentReducer=ul,i.assetTypeFieldValuesAttachmentSlice=Ls,i.assetTypeFieldValuesReducer=Fl,i.assetTypeFieldValuesSlice=Hs,i.assetTypeFieldsAttachmentReducer=qu,i.assetTypeFieldsAttachmentSlice=$s,i.assetTypeFieldsReducer=Ju,i.assetTypeFieldsSlice=Us,i.assetTypeIdentifierReducer=Dl,i.assetTypeIdentifierSlice=Ws,i.assetTypeIdentifierValueReducer=Xl,i.assetTypeIdentifierValueSlice=Ys,i.assetTypeReducer=ho,i.assetTypeSlice=Zs,i.assetTypeStatusReducer=go,i.assetTypeStatusSlice=Xs,i.assetTypeStatusSortFn=Qn,i.authReducer=wo,i.authSlice=wt,i.baseReducer=dF,i.baseReducers=gn,i.clearTokens=hP,i.createModelAdapter=F,i.createOfflineAction=DS,i.createPayload=R,i.createSelectionAdapter=aO,i.deleteAsset=Rr,i.deleteAssetAttachment=pa,i.deleteAssetAttachments=xt,i.deleteAssetProcedure=Lc,i.deleteAssetProcedureStep=fr,i.deleteAssetProcedureStepFieldValues=ir,i.deleteAssetProcedureStepFieldValuesAttachment=Nd,i.deleteAssetProcedureStepFieldValuesAttachments=Ps,i.deleteAssetProcedureStepFieldValuesMany=nr,i.deleteAssetProcedureStepFields=Bd,i.deleteAssetProcedureStepFieldsAttachment=fd,i.deleteAssetProcedureStepFieldsAttachments=Sd,i.deleteAssetProcedureStepFieldsMany=Vd,i.deleteAssetProcedureSteps=Sr,i.deleteAssetProcedureType=td,i.deleteAssetProcedureTypeAttachment=wa,i.deleteAssetProcedureTypeAttachments=Ea,i.deleteAssetProcedureTypeFieldValues=Ec,i.deleteAssetProcedureTypeFieldValuesAttachment=Ac,i.deleteAssetProcedureTypeFieldValuesAttachments=rs,i.deleteAssetProcedureTypeFieldValuesMany=Bc,i.deleteAssetProcedureTypeFields=ic,i.deleteAssetProcedureTypeFieldsAttachment=Na,i.deleteAssetProcedureTypeFieldsAttachments=Ga,i.deleteAssetProcedureTypeFieldsMany=nc,i.deleteAssetProcedureTypes=sd,i.deleteAssetProcedures=ms,i.deleteAssetStage=au,i.deleteAssetStageCompletion=Gr,i.deleteAssetStageCompletions=Hr,i.deleteAssetStages=cu,i.deleteAssetType=co,i.deleteAssetTypeAttachment=fu,i.deleteAssetTypeAttachments=qs,i.deleteAssetTypeFieldValues=Sl,i.deleteAssetTypeFieldValuesAttachment=nl,i.deleteAssetTypeFieldValuesAttachments=Ns,i.deleteAssetTypeFieldValuesMany=Tl,i.deleteAssetTypeFields=Hu,i.deleteAssetTypeFieldsAttachment=Bu,i.deleteAssetTypeFieldsAttachments=Vu,i.deleteAssetTypeFieldsMany=Wu,i.deleteAssetTypeIdentifier=Vl,i.deleteAssetTypeIdentifierValue=Wl,i.deleteAssetTypeIdentifierValues=Kl,i.deleteAssetTypeIdentifiers=vl,i.deleteAssetTypeStatus=Oo,i.deleteAssetTypeStatuses=Po,i.deleteAssetTypes=ro,i.deleteAssets=ws,i.deleteConversation=BO,i.deleteConversations=VO,i.deleteDocument=Qo,i.deleteDocumentAttachment=$o,i.deleteDocumentAttachments=Co,i.deleteDocuments=xo,i.deleteForm=Am,i.deleteFormIdentifier=ph,i.deleteFormIdentifierValue=wh,i.deleteFormIdentifierValues=Eh,i.deleteFormIdentifiers=Ah,i.deleteFormRevision=sm,i.deleteFormRevisionAttachment=Nh,i.deleteFormRevisionAttachments=Gh,i.deleteFormRevisions=li,i.deleteFormSubmission=Lm,i.deleteFormSubmissionAttachment=wm,i.deleteFormSubmissionAttachments=pi,i.deleteFormSubmissions=Oi,i.deleteForms=fm,i.deleteGeoImage=ty,i.deleteGeoImages=sy,i.deleteIssue=Sp,i.deleteIssueAssociation=yy,i.deleteIssueAssociations=xe,i.deleteIssueAttachment=Vy,i.deleteIssueAttachments=Ri,i.deleteIssueComment=cp,i.deleteIssueCommentAttachment=Wy,i.deleteIssueCommentAttachments=Ky,i.deleteIssueComments=dp,i.deleteIssueType=Pf,i.deleteIssueTypeAttachment=Vp,i.deleteIssueTypeAttachments=vp,i.deleteIssueTypeFieldValues=cA,i.deleteIssueTypeFieldValuesAttachment=vA,i.deleteIssueTypeFieldValuesAttachments=Hi,i.deleteIssueTypeFieldValuesMany=dA,i.deleteIssueTypeFields=IA,i.deleteIssueTypeFieldsAttachment=Wp,i.deleteIssueTypeFieldsAttachments=Kp,i.deleteIssueTypeFieldsMany=OA,i.deleteIssueTypeIdentifier=KA,i.deleteIssueTypeIdentifierValue=rf,i.deleteIssueTypeIdentifierValues=uf,i.deleteIssueTypeIdentifiers=YA,i.deleteIssueTypeStatus=qf,i.deleteIssueTypeStatuses=Df,i.deleteIssueTypes=Ff,i.deleteIssueUpdate=an,i.deleteIssueUpdates=cn,i.deleteIssues=qi,i.deleteOrganization=ES,i.deleteOrganizationAccess=AS,i.deleteOrganizationAccesses=fS,i.deleteOrganizations=BS,i.deleteProject=CT,i.deleteProjectAccess=XS,i.deleteProjectAccesses=QS,i.deleteProjectAttachment=lT,i.deleteProjectAttachments=oT,i.deleteProjectFile=_T,i.deleteProjectFiles=bT,i.deleteProjects=UT,i.deleteTeam=yI,i.deleteTeamMembership=eI,i.deleteTeamMemberships=tI,i.deleteTeams=pI,i.deleteUser=on,i.deleteUsers=nS,i.dequeue=VI,i.discard=zI,i.documentAttachmentReducer=No,i.documentAttachmentSlice=xs,i.documentSlice=ti,i.documentsReducer=eh,i.downloadFile=AO,i.emailRegex=_O,i.enqueue=BI,i.enqueueRequest=CS,i.extractResponseFromError=qI,i.fallbackToEmptyArray=f,i.fallbackToEmptyObject=St,i.fetchBlobFromObjectUrl=Hn,i.fetchFileFromObjectUrl=Wn,i.fileReducer=ch,i.fileSlice=ii,i.fileToBlob=Nn,i.formIdentifierReducer=Ih,i.formIdentifierSlice=ni,i.formIdentifierValueReducer=zh,i.formIdentifierValueSlice=ci,i.formReducer=Sm,i.formRevisionAttachmentReducer=Yh,i.formRevisionAttachmentSlice=di,i.formRevisionReducer=dm,i.formRevisionsSlice=ri,i.formSlice=oi,i.formSubmissionAttachmentReducer=vm,i.formSubmissionAttachmentSlice=mi,i.formSubmissionReducer=Wm,i.formSubmissionSlice=Ti,i.geoImageReducer=cy,i.geoImageSlice=Fi,i.getAssetProcedureStepSubTree=Xn,i.getAssetProcedureStepTrees=bO,i.getClientSDK=kI,i.getClientStore=rt,i.getDocumentSubTree=ta,i.getDocumentTrees=gO,i.getFileExtension=Gn,i.getLocalDateString=kn,i.getLocalRelativeDateString=hO,i.getOutboxCoordinator=it,i.getRenamedFile=pO,i.getRequestDescription=S,i.getS3FileKey=yO,i.hashFile=Tt,i.initSDK=v_,i.initializeAssetAttachments=ua,i.initializeAssetProcedureStepFieldValues=Jd,i.initializeAssetProcedureStepFieldValuesAttachments=Dd,i.initializeAssetProcedureStepFields=_d,i.initializeAssetProcedureStepFieldsAttachments=ld,i.initializeAssetProcedureSteps=lr,i.initializeAssetProcedureTypeAttachments=Pa,i.initializeAssetProcedureTypeFieldValues=Fc,i.initializeAssetProcedureTypeFieldValuesAttachments=lc,i.initializeAssetProcedureTypeFields=Ja,i.initializeAssetProcedureTypeFieldsAttachments=qa,i.initializeAssetProcedureTypes=Jc,i.initializeAssetProcedures=Dc,i.initializeAssetStageCompletions=Dr,i.initializeAssetStages=Qr,i.initializeAssetTypeAttachments=ou,i.initializeAssetTypeFieldValues=ol,i.initializeAssetTypeFieldValuesAttachments=Qu,i.initializeAssetTypeFields=$u,i.initializeAssetTypeFieldsAttachments=_u,i.initializeAssetTypeIdentifierValues=Cl,i.initializeAssetTypeIdentifiers=bl,i.initializeAssetTypeStatuses=yo,i.initializeAssetTypes=xl,i.initializeAssets=_r,i.initializeConversations=ia,i.initializeDocumentAttachments=Bo,i.initializeDocuments=Ho,i.initializeFormIdentifierValues=Ph,i.initializeFormIdentifiers=rh,i.initializeFormRevisionAttachments=qh,i.initializeFormRevisions=Jh,i.initializeFormSubmissionAttachments=Fm,i.initializeFormSubmissions=jm,i.initializeForms=um,i.initializeGeoImages=Ym,i.initializeIssueAssociations=ry,i.initializeIssueAttachments=gy,i.initializeIssueCommentAttachments=Cy,i.initializeIssueComments=xy,i.initializeIssueTypeAttachments=bp,i.initializeIssueTypeFieldValues=xp,i.initializeIssueTypeFieldValuesAttachments=MA,i.initializeIssueTypeFields=mA,i.initializeIssueTypeFieldsAttachments=Cp,i.initializeIssueTypeIdentifierValues=ef,i.initializeIssueTypeIdentifiers=UA,i.initializeIssueTypeStatuses=wf,i.initializeIssueTypes=pf,i.initializeIssueUpdates=kf,i.initializeIssues=hp,i.initializeOrganizationAccesses=uS,i.initializeOrganizations=FS,i.initializeProjectAccesses=GS,i.initializeProjectAttachments=iT,i.initializeProjectFiles=fT,i.initializeProjects=VT,i.initializeTeamMemberships=KT,i.initializeTeams=dI,i.initializeUsers=Qf,i.isImageFile=fO,i.isObjectUrl=Kn,i.isToday=oO,i.issueAssociationReducer=_y,i.issueAssociationSlice=bi,i.issueAttachmentReducer=Dy,i.issueAttachmentSlice=gi,i.issueCommentAttachmentReducer=Xy,i.issueCommentAttachmentSlice=Ei,i.issueCommentReducer=lp,i.issueCommentSlice=Vi,i.issueReducer=Fp,i.issueSlice=zi,i.issueTypeAttachmentReducer=Dp,i.issueTypeAttachmentSlice=Di,i.issueTypeFieldValuesAttachmentReducer=$A,i.issueTypeFieldValuesAttachmentSlice=Ni,i.issueTypeFieldValuesReducer=oA,i.issueTypeFieldValuesSlice=Li,i.issueTypeFieldsAttachmentReducer=Xp,i.issueTypeFieldsAttachmentSlice=Ci,i.issueTypeFieldsReducer=bA,i.issueTypeFieldsSlice=ki,i.issueTypeIdentifierReducer=QA,i.issueTypeIdentifierSlice=Ki,i.issueTypeIdentifierValueReducer=mf,i.issueTypeIdentifierValueSlice=Zi,i.issueTypeReducer=Mf,i.issueTypeSlice=Ji,i.issueTypeStatusReducer=Uf,i.issueTypeStatusSlice=Qi,i.issueTypeStatusSortFn=xn,i.issueUpdateReducer=Jf,i.issueUpdateSlice=tn,i.logOnlyOnce=SO,i.markAsDeleted=US,i.markForDeletion=KP,i.memoize=Wt,i.organizationAccessReducer=SS,i.organizationAccessSlice=mn,i.organizationReducer=qS,i.organizationSlice=yn,i.outboxReducer=kS,i.outboxSlice=pn,i.overmapEnhancer=AF,i.overmapReducer=rF,i.overmapReducers=PI,i.performRequest=wn,i.performRequestFromAction=vI,i.projectAccessReducer=xS,i.projectAccessSlice=An,i.projectAttachmentReducer=pT,i.projectAttachmentSlice=Sn,i.projectFileReducer=ET,i.projectFileSlice=In,i.projectReducer=LT,i.projectSlice=On,i.rehydratedReducer=HT,i.rehydratedSlice=Pn,i.restructureSelectorWithArgs=A,i.runMiddleware=WI,i.selectAccessToken=mP,i.selectAccessesByUserOfProject=ZP,i.selectAccessibleProjects=QP,i.selectActiveOrganizationAccess=NP,i.selectAllDocumentAttachments=ei,i.selectAssetAttachmentById=fa,i.selectAssetAttachmentMapping=Aa,i.selectAssetAttachments=es,i.selectAssetAttachmentsByIds=Sa,i.selectAssetById=vr,i.selectAssetProcedureById=Kc,i.selectAssetProcedureStepById=Ir,i.selectAssetProcedureStepFieldValues=ot,i.selectAssetProcedureStepFieldValuesAttachmentById=Hd,i.selectAssetProcedureStepFieldValuesAttachments=Fs,i.selectAssetProcedureStepFieldValuesAttachmentsByIds=Wd,i.selectAssetProcedureStepFieldValuesAttachmentsMapping=Gd,i.selectAssetProcedureStepFieldValuesById=cr,i.selectAssetProcedureStepFieldValuesByIds=dr,i.selectAssetProcedureStepFieldValuesMapping=ar,i.selectAssetProcedureStepFieldValuesOfAsset=KO,i.selectAssetProcedureStepFieldValuesOfAssetProcedure=YO,i.selectAssetProcedureStepFieldValuesOfAssetProcedureStep=ZO,i.selectAssetProcedureStepFields=_t,i.selectAssetProcedureStepFieldsAttachmentById=Id,i.selectAssetProcedureStepFieldsAttachments=fs,i.selectAssetProcedureStepFieldsAttachmentsByIds=Od,i.selectAssetProcedureStepFieldsAttachmentsMapping=Td,i.selectAssetProcedureStepFieldsById=vd,i.selectAssetProcedureStepFieldsByIds=zd,i.selectAssetProcedureStepFieldsMapping=Ts,i.selectAssetProcedureStepFieldsOfAssetProcedureStep=GO,i.selectAssetProcedureStepMapping=bt,i.selectAssetProcedureSteps=gs,i.selectAssetProcedureStepsByIds=Or,i.selectAssetProcedureStepsMappingOfAssetProcedureType=JO,i.selectAssetProcedureStepsOfAssetProcedureType=XO,i.selectAssetProcedureTypeAttachmentById=va,i.selectAssetProcedureTypeAttachmentMapping=Va,i.selectAssetProcedureTypeAttachments=ss,i.selectAssetProcedureTypeAttachmentsByIds=za,i.selectAssetProcedureTypeById=dd,i.selectAssetProcedureTypeFieldValues=Pt,i.selectAssetProcedureTypeFieldValuesAttachmentById=Tc,i.selectAssetProcedureTypeFieldValuesAttachments=us,i.selectAssetProcedureTypeFieldValuesAttachmentsByIds=Ic,i.selectAssetProcedureTypeFieldValuesAttachmentsMapping=Sc,i.selectAssetProcedureTypeFieldValuesById=zc,i.selectAssetProcedureTypeFieldValuesByIds=jc,i.selectAssetProcedureTypeFieldValuesMapping=vc,i.selectAssetProcedureTypeFieldValuesOfAsset=CO,i.selectAssetProcedureTypeFields=Ot,i.selectAssetProcedureTypeFieldsAttachmentById=Ka,i.selectAssetProcedureTypeFieldsAttachments=ns,i.selectAssetProcedureTypeFieldsAttachmentsByIds=Ya,i.selectAssetProcedureTypeFieldsAttachmentsMapping=Wa,i.selectAssetProcedureTypeFieldsById=dc,i.selectAssetProcedureTypeFieldsByIds=rc,i.selectAssetProcedureTypeFieldsMapping=cc,i.selectAssetProcedureTypeFieldsOfAssetProcedureType=DO,i.selectAssetProcedureTypes=ps,i.selectAssetProcedureTypesByIds=rd,i.selectAssetProcedureTypesMapping=cd,i.selectAssetProcedureTypesOfOrganization=kO,i.selectAssetProcedures=Ft,i.selectAssetProceduresByIds=Yc,i.selectAssetProceduresMapping=Hc,i.selectAssetProceduresOfAssetProcedureType=Wc,i.selectAssetProceduresOfAssetType=LO,i.selectAssetStageById=ru,i.selectAssetStageCompletionById=Zr,i.selectAssetStageCompletionMapping=Kr,i.selectAssetStageCompletions=Yr,i.selectAssetStageCompletionsByIds=Jr,i.selectAssetStages=vs,i.selectAssetStagesByIds=uu,i.selectAssetStagesMappingOfAssetProcedureType=xO,i.selectAssetStagesOfAssetProcedureType=eP,i.selectAssetTypeAttachmentById=Tu,i.selectAssetTypeAttachmentMapping=Su,i.selectAssetTypeAttachments=Ds,i.selectAssetTypeAttachmentsByIds=Iu,i.selectAssetTypeById=lo,i.selectAssetTypeFieldValues=Mt,i.selectAssetTypeFieldValuesAttachmentById=cl,i.selectAssetTypeFieldValuesAttachments=Gs,i.selectAssetTypeFieldValuesAttachmentsByIds=dl,i.selectAssetTypeFieldValuesAttachmentsMapping=al,i.selectAssetTypeFieldValuesById=Ol,i.selectAssetTypeFieldValuesByIds=Pl,i.selectAssetTypeFieldValuesMapping=Il,i.selectAssetTypeFieldValuesOfAsset=nP,i.selectAssetTypeFields=ht,i.selectAssetTypeFieldsAttachmentById=zu,i.selectAssetTypeFieldsAttachments=Cs,i.selectAssetTypeFieldsAttachmentsByIds=ju,i.selectAssetTypeFieldsAttachmentsMapping=vu,i.selectAssetTypeFieldsById=Yu,i.selectAssetTypeFieldsByIds=Zu,i.selectAssetTypeFieldsMapping=Ku,i.selectAssetTypeFieldsOfAssetType=sP,i.selectAssetTypeIdentifierById=jl,i.selectAssetTypeIdentifierMapping=zl,i.selectAssetTypeIdentifierValueById=Zl,i.selectAssetTypeIdentifierValueMapping=Yl,i.selectAssetTypeIdentifierValues=Rt,i.selectAssetTypeIdentifierValuesByIds=Jl,i.selectAssetTypeIdentifierValuesOfAsset=dP,i.selectAssetTypeIdentifierValuesOfIdentifier=rP,i.selectAssetTypeIdentifiers=Ks,i.selectAssetTypeIdentifiersByIds=ql,i.selectAssetTypeIdentifiersOfAssetType=cP,i.selectAssetTypeStatusById=_o,i.selectAssetTypeStatusMapping=Fo,i.selectAssetTypeStatuses=Qs,i.selectAssetTypeStatusesByIds=bo,i.selectAssetTypeStatusesOfAssetType=lP,i.selectAssetTypeValuesOfAssetType=aP,i.selectAssetTypes=Js,i.selectAssetTypesByIds=oo,i.selectAssetTypesMapping=uo,i.selectAssetTypesOfOrganization=uP,i.selectAssets=gt,i.selectAssetsByIds=zr,i.selectAssetsMapping=Br,i.selectAssetsOfAssetType=Vr,i.selectAssetsOfProject=QO,i.selectAttachmentsOfAsset=Ta,i.selectAttachmentsOfAssetProcedureStepFieldValues=Kd,i.selectAttachmentsOfAssetProcedureStepFields=NO,i.selectAttachmentsOfAssetProcedureType=jO,i.selectAttachmentsOfAssetProcedureTypeFieldValues=Oc,i.selectAttachmentsOfAssetProcedureTypeFields=qO,i.selectAttachmentsOfAssetType=Ou,i.selectAttachmentsOfAssetTypeFieldValues=rl,i.selectAttachmentsOfAssetTypeFields=tP,i.selectAttachmentsOfDocument=pP,i.selectAttachmentsOfFormRevision=_P,i.selectAttachmentsOfFormSubmission=Vm,i.selectAttachmentsOfIssue=zy,i.selectAttachmentsOfIssueComment=RP,i.selectAttachmentsOfIssueType=BP,i.selectAttachmentsOfIssueTypeFieldValues=DA,i.selectAttachmentsOfIssueTypeFields=VP,i.selectAttachmentsOfProject=XP,i.selectCommentsOfIssue=wP,i.selectConversation=zO,i.selectConversationMapping=Jt,i.selectConversations=vO,i.selectCurrentUser=cS,i.selectDeletedRequests=HP,i.selectDescendantsOfAssetProcedureStep=Pr,i.selectDescendantsOfDocument=ih,i.selectDocumentAttachmentById=Lo,i.selectDocumentAttachmentMapping=Uo,i.selectDocumentAttachmentsByIds=ko,i.selectDocumentById=th,i.selectDocuments=Et,i.selectDocumentsByIds=sh,i.selectDocumentsMapping=si,i.selectFieldValuesOfAssetProcedure=UO,i.selectFormById=Im,i.selectFormIdentifierById=Sh,i.selectFormIdentifierMapping=fh,i.selectFormIdentifierValueById=Vh,i.selectFormIdentifierValueMapping=Bh,i.selectFormIdentifierValues=Bt,i.selectFormIdentifierValuesByIds=vh,i.selectFormIdentifierValuesOfFormSubmission=PP,i.selectFormIdentifierValuesOfIdentifier=FP,i.selectFormIdentifiers=ai,i.selectFormIdentifiersByIds=Th,i.selectFormIdentifiersOfForm=OP,i.selectFormMapping=Tm,i.selectFormRevisionAttachmentById=Wh,i.selectFormRevisionAttachments=Hh,i.selectFormRevisionAttachmentsByIds=Kh,i.selectFormRevisionAttachmentsMapping=Vt,i.selectFormRevisionById=nm,i.selectFormRevisionMapping=im,i.selectFormRevisions=vt,i.selectFormRevisionsByIds=am,i.selectFormRevisionsOfForm=cm,i.selectFormSubmissionAttachemntsByIds=Si,i.selectFormSubmissionAttachmentById=Em,i.selectFormSubmissionAttachments=fi,i.selectFormSubmissionAttachmentsByIds=Bm,i.selectFormSubmissionAttachmentsMapping=Ai,i.selectFormSubmissionById=Nm,i.selectFormSubmissions=Pi,i.selectFormSubmissionsByIds=Gm,i.selectFormSubmissionsMapping=km,i.selectFormSubmissionsOfForm=Hm,i.selectForms=hi,i.selectFormsByIds=Om,i.selectFormsOfOrganization=gP,i.selectGeoImageById=ny,i.selectGeoImageMapping=iy,i.selectGeoImages=_i,i.selectGeoImagesByIds=ay,i.selectGeoImagesOfProject=MP,i.selectIsLoggedIn=yP,i.selectIssueAssociationById=Ay,i.selectIssueAssociationMapping=py,i.selectIssueAssociations=et,i.selectIssueAssociationsByIds=fy,i.selectIssueAssociationsOfAsset=Py,i.selectIssueAssociationsOfAssets=Fy,i.selectIssueAssociationsOfIssue=Oy,i.selectIssueAssociationsOfIssues=Iy,i.selectIssueAssociationsToIssue=Sy,i.selectIssueAssociationsToIssues=Ty,i.selectIssueAttachmentById=jy,i.selectIssueAttachmentMapping=vy,i.selectIssueAttachments=wi,i.selectIssueAttachmentsByIds=qy,i.selectIssueById=Ip,i.selectIssueCommentAttachmentById=Zy,i.selectIssueCommentAttachmentMapping=Yy,i.selectIssueCommentAttachments=Bi,i.selectIssueCommentAttachmentsByIds=Jy,i.selectIssueCommentById=rp,i.selectIssueCommentMapping=vi,i.selectIssueCommentsByIds=up,i.selectIssueMapping=Tp,i.selectIssueTypeAttachmentById=jp,i.selectIssueTypeAttachmentMapping=zp,i.selectIssueTypeAttachments=$i,i.selectIssueTypeAttachmentsByIds=qp,i.selectIssueTypeById=bf,i.selectIssueTypeFieldValues=jt,i.selectIssueTypeFieldValuesAttachmentById=jA,i.selectIssueTypeFieldValuesAttachments=Wi,i.selectIssueTypeFieldValuesAttachmentsByIds=qA,i.selectIssueTypeFieldValuesAttachmentsMapping=zA,i.selectIssueTypeFieldValuesById=uA,i.selectIssueTypeFieldValuesByIds=lA,i.selectIssueTypeFieldValuesMapping=rA,i.selectIssueTypeFieldValuesOfIssue=vP,i.selectIssueTypeFields=mt,i.selectIssueTypeFieldsAttachmentById=Zp,i.selectIssueTypeFieldsAttachments=Ui,i.selectIssueTypeFieldsAttachmentsByIds=Jp,i.selectIssueTypeFieldsAttachmentsMapping=Yp,i.selectIssueTypeFieldsById=FA,i.selectIssueTypeFieldsByIds=_A,i.selectIssueTypeFieldsMapping=PA,i.selectIssueTypeFieldsOfIssueType=zP,i.selectIssueTypeIdentifierById=JA,i.selectIssueTypeIdentifierMapping=ZA,i.selectIssueTypeIdentifierValueById=of,i.selectIssueTypeIdentifierValueMapping=lf,i.selectIssueTypeIdentifierValues=qt,i.selectIssueTypeIdentifierValuesByIds=hf,i.selectIssueTypeIdentifierValuesOfIdentifier=CP,i.selectIssueTypeIdentifierValuesOfIssue=$P,i.selectIssueTypeIdentifiers=Yi,i.selectIssueTypeIdentifiersByIds=XA,i.selectIssueTypeIdentifiersOfIssueType=DP,i.selectIssueTypeMapping=_f,i.selectIssueTypeStatusById=en,i.selectIssueTypeStatusMapping=$f,i.selectIssueTypeStatuses=xi,i.selectIssueTypeStatusesByIds=Cf,i.selectIssueTypeStatusesOfIssueType=LP,i.selectIssueTypeValuesOfIssueType=qP,i.selectIssueTypes=Xi,i.selectIssueTypesByIds=gf,i.selectIssueTypesOfOrganization=UP,i.selectIssueUpdateById=Kf,i.selectIssueUpdateMapping=dn,i.selectIssueUpdates=rn,i.selectIssueUpdatesByIds=Yf,i.selectIssueUpdatesOfIssue=Zf,i.selectIssues=zt,i.selectIssuesByIds=Op,i.selectIssuesOfIssueType=Pp,i.selectIssuesOfProject=EP,i.selectLatestAssetProcedureStepFieldsOfAssetProcedureStep=HO,i.selectLatestAssetProcedureTypeFieldsOfAssetProcedureType=$O,i.selectLatestAssetTypeFieldsOfAssetType=iP,i.selectLatestFieldsByAssetProcedureStep=WO,i.selectLatestFormRevisionOfForm=bP,i.selectLatestIssueTypeFieldsOfIssueType=jP,i.selectLatestRetryTime=WP,i.selectMembershipsByUserOfTeam=iF,i.selectOrganizationAccessById=TS,i.selectOrganizationAccessMapping=Ct,i.selectOrganizationAccessUserMapping=OS,i.selectOrganizationAccessesByIds=IS,i.selectOrganizationById=zS,i.selectOrganizationDocuments=fP,i.selectOrganizations=vS,i.selectOrganizationsByIds=jS,i.selectOrganizationsMapping=VS,i.selectProjectAccessById=eT,i.selectProjectAccessMapping=fn,i.selectProjectAccesses=yt,i.selectProjectAccessesByIds=tT,i.selectProjectAccessesOfProject=YP,i.selectProjectAttachmentById=mT,i.selectProjectAttachmentMapping=hT,i.selectProjectAttachments=Tn,i.selectProjectAttachmentsByIds=yT,i.selectProjectById=NT,i.selectProjectDocuments=AP,i.selectProjectFileById=RT,i.selectProjectFileMapping=gT,i.selectProjectFiles=MT,i.selectProjectFilesByIds=wT,i.selectProjectMapping=kT,i.selectProjects=Ut,i.selectProjectsByIds=GT,i.selectProjectsOfOrganization=xP,i.selectRehydrated=sF,i.selectStageMapping=Vs,i.selectTeamById=fI,i.selectTeamMembershipById=nI,i.selectTeamMemberships=Lt,i.selectTeamMembershipsByIds=aI,i.selectTeamMembershipsMapping=iI,i.selectTeams=bn,i.selectTeamsByIds=SI,i.selectTeamsMapping=AI,i.selectTeamsOfOrganization=aF,i.selectUploadUrl=IP,i.selectUserById=$t,i.selectUsers=Dt,i.selectUsersByIds=dS,i.selectUsersMapping=hn,i.selectUsersOfOrganization=GP,i.selectUsersOfProject=JP,i.selectUsersOfTeam=nF,i.setAsset=wr,i.setAssetAttachment=oa,i.setAssetAttachments=ha,i.setAssetProcedure=kc,i.setAssetProcedureStep=or,i.setAssetProcedureStepFieldValues=xd,i.setAssetProcedureStepFieldValuesAttachment=Cd,i.setAssetProcedureStepFieldValuesAttachments=Ud,i.setAssetProcedureStepFieldValuesMany=er,i.setAssetProcedureStepFields=Md,i.setAssetProcedureStepFieldsAttachment=md,i.setAssetProcedureStepFieldsAttachments=yd,i.setAssetProcedureStepFieldsMany=Rd,i.setAssetProcedureSteps=hr,i.setAssetProcedureType=id,i.setAssetProcedureTypeAttachment=ba,i.setAssetProcedureTypeAttachments=ga,i.setAssetProcedureTypeFieldValues=gc,i.setAssetProcedureTypeFieldValuesAttachment=hc,i.setAssetProcedureTypeFieldValuesAttachments=mc,i.setAssetProcedureTypeFieldValuesMany=Mc,i.setAssetProcedureTypeFields=xa,i.setAssetProcedureTypeFieldsAttachment=Ca,i.setAssetProcedureTypeFieldsAttachments=Ua,i.setAssetProcedureTypeFieldsMany=ec,i.setAssetProcedureTypes=nd,i.setAssetProcedures=Nc,i.setAssetStage=xr,i.setAssetStageCompletion=Ur,i.setAssetStageCompletions=Lr,i.setAssetStages=eu,i.setAssetType=eo,i.setAssetTypeAttachment=mu,i.setAssetTypeAttachments=yu,i.setAssetTypeFieldValues=yl,i.setAssetTypeFieldValuesAttachment=el,i.setAssetTypeFieldValuesAttachments=tl,i.setAssetTypeFieldValuesMany=pl,i.setAssetTypeFields=Lu,i.setAssetTypeFieldsAttachment=Mu,i.setAssetTypeFieldsAttachments=Ru,i.setAssetTypeFieldsMany=ku,i.setAssetTypeIdentifier=Rl,i.setAssetTypeIdentifierValue=kl,i.setAssetTypeIdentifierValues=Nl,i.setAssetTypeIdentifiers=wl,i.setAssetTypeStatus=fo,i.setAssetTypeStatuses=So,i.setAssetTypes=to,i.setAssets=Er,i.setClientSDK=LI,i.setClientStore=CI,i.setConversation=aa,i.setConversations=wO,i.setCurrentUser=kP,i.setDocument=Yo,i.setDocumentAttachment=zo,i.setDocumentAttachments=jo,i.setDocuments=Zo,i.setForm=hm,i.setFormIdentifier=oh,i.setFormIdentifierValue=bh,i.setFormIdentifierValues=gh,i.setFormIdentifiers=hh,i.setFormRevision=Qh,i.setFormRevisionAttachment=Ch,i.setFormRevisionAttachments=Uh,i.setFormRevisions=xh,i.setFormSubmission=qm,i.setFormSubmissionAttachment=bm,i.setFormSubmissionAttachments=gm,i.setFormSubmissions=Dm,i.setForms=mm,i.setGeoImage=Zm,i.setGeoImages=Jm,i.setIssue=yp,i.setIssueAssociation=ly,i.setIssueAssociations=uy,i.setIssueAttachment=Ry,i.setIssueAttachments=wy,i.setIssueComment=sp,i.setIssueCommentAttachment=ky,i.setIssueCommentAttachments=Ny,i.setIssueComments=ip,i.setIssueType=Sf,i.setIssueTypeAttachment=Rp,i.setIssueTypeAttachments=wp,i.setIssueTypeFieldValues=sA,i.setIssueTypeFieldValuesAttachment=wA,i.setIssueTypeFieldValuesAttachments=EA,i.setIssueTypeFieldValuesMany=iA,i.setIssueTypeFields=AA,i.setIssueTypeFieldsAttachment=kp,i.setIssueTypeFieldsAttachments=Np,i.setIssueTypeFieldsMany=fA,i.setIssueTypeIdentifier=NA,i.setIssueTypeIdentifierValue=nf,i.setIssueTypeIdentifierValues=af,i.setIssueTypeIdentifiers=GA,i.setIssueTypeStatus=Vf,i.setIssueTypeStatuses=vf,i.setIssueTypes=Tf,i.setIssueUpdate=Nf,i.setIssueUpdates=Gf,i.setIssues=pp,i.setLoggedIn=Ro,i.setOrganization=bS,i.setOrganizationAccess=hS,i.setOrganizationAccesses=mS,i.setOrganizations=_S,i.setProject=zT,i.setProjectAccess=KS,i.setProjectAccesses=YS,i.setProjectAttachment=cT,i.setProjectAttachments=dT,i.setProjectFile=ST,i.setProjectFiles=TT,i.setProjects=vT,i.setRehydrated=tF,i.setTeam=lI,i.setTeamMembership=JT,i.setTeamMemberships=XT,i.setTeams=oI,i.setTokens=oP,i.setUploadUrl=TP,i.setUser=eS,i.setUsers=xf,i.shallowEqual=dO,i.slugify=PO,i.spacesToDashesLower=OO,i.teamMembershipReducer=sI,i.teamMembershipSlice=Fn,i.teamReducer=TI,i.teamSlice=_n,i.toFileNameSafeString=IO,i.toUuidArray=V,i.toUuidIdRecord=TO,i.truncate=FO,i.updateAsset=gr,i.updateAssetAttachment=ma,i.updateAssetAttachments=ya,i.updateAssetProcedure=Cc,i.updateAssetProcedureStep=pr,i.updateAssetProcedureStepFieldValues=tr,i.updateAssetProcedureStepFieldValuesAttachment=Ld,i.updateAssetProcedureStepFieldValuesAttachments=kd,i.updateAssetProcedureStepFieldValuesMany=sr,i.updateAssetProcedureStepFields=wd,i.updateAssetProcedureStepFieldsAttachment=pd,i.updateAssetProcedureStepFieldsAttachments=Ad,i.updateAssetProcedureStepFieldsMany=Ed,i.updateAssetProcedureSteps=Ar,i.updateAssetProcedureType=xc,i.updateAssetProcedureTypeAttachment=Ma,i.updateAssetProcedureTypeAttachments=Ra,i.updateAssetProcedureTypeFieldValues=Rc,i.updateAssetProcedureTypeFieldValuesAttachment=yc,i.updateAssetProcedureTypeFieldValuesAttachments=pc,i.updateAssetProcedureTypeFieldValuesMany=wc,i.updateAssetProcedureTypeFields=tc,i.updateAssetProcedureTypeFieldsAttachment=La,i.updateAssetProcedureTypeFieldsAttachments=ka,i.updateAssetProcedureTypeFieldsMany=sc,i.updateAssetProcedureTypes=ed,i.updateAssetProcedures=Uc,i.updateAssetStage=iu,i.updateAssetStageCompletion=kr,i.updateAssetStageCompletions=Nr,i.updateAssetStages=nu,i.updateAssetType=no,i.updateAssetTypeAttachment=pu,i.updateAssetTypeAttachments=Au,i.updateAssetTypeFieldValues=Al,i.updateAssetTypeFieldValuesAttachment=sl,i.updateAssetTypeFieldValuesAttachments=il,i.updateAssetTypeFieldValuesMany=fl,i.updateAssetTypeFields=Nu,i.updateAssetTypeFieldsAttachment=wu,i.updateAssetTypeFieldsAttachments=Eu,i.updateAssetTypeFieldsMany=Gu,i.updateAssetTypeIdentifier=El,i.updateAssetTypeIdentifierValue=Gl,i.updateAssetTypeIdentifierValues=Hl,i.updateAssetTypeIdentifiers=Bl,i.updateAssetTypeStatus=To,i.updateAssetTypeStatuses=Io,i.updateAssetTypes=ao,i.updateAssets=Mr,i.updateConversation=ca,i.updateConversations=EO,i.updateDocument=Jo,i.updateDocumentAttachment=qo,i.updateDocumentAttachments=Do,i.updateDocuments=Xo,i.updateForm=ym,i.updateFormIdentifier=mh,i.updateFormIdentifierValue=Mh,i.updateFormIdentifierValues=Rh,i.updateFormIdentifiers=yh,i.updateFormRevision=em,i.updateFormRevisionAttachment=Lh,i.updateFormRevisionAttachments=kh,i.updateFormRevisions=tm,i.updateFormSubmission=Cm,i.updateFormSubmissionAttachment=Mm,i.updateFormSubmissionAttachments=Rm,i.updateFormSubmissions=Um,i.updateForms=pm,i.updateGeoImage=xm,i.updateGeoImages=ey,i.updateIssue=Ap,i.updateIssueAssociation=oy,i.updateIssueAssociations=hy,i.updateIssueAttachment=Ey,i.updateIssueAttachments=By,i.updateIssueComment=np,i.updateIssueCommentAttachment=Gy,i.updateIssueCommentAttachments=Hy,i.updateIssueComments=ap,i.updateIssueType=If,i.updateIssueTypeAttachment=Ep,i.updateIssueTypeAttachments=Bp,i.updateIssueTypeFieldValues=nA,i.updateIssueTypeFieldValuesAttachment=BA,i.updateIssueTypeFieldValuesAttachments=VA,i.updateIssueTypeFieldValuesMany=aA,i.updateIssueTypeFields=SA,i.updateIssueTypeFieldsAttachment=Gp,i.updateIssueTypeFieldsAttachments=Hp,i.updateIssueTypeFieldsMany=TA,i.updateIssueTypeIdentifier=HA,i.updateIssueTypeIdentifierValue=cf,i.updateIssueTypeIdentifierValues=df,i.updateIssueTypeIdentifiers=WA,i.updateIssueTypeStatus=zf,i.updateIssueTypeStatuses=jf,i.updateIssueTypes=Of,i.updateIssueUpdate=Hf,i.updateIssueUpdates=Wf,i.updateIssues=fp,i.updateOrganization=wS,i.updateOrganizationAccess=yS,i.updateOrganizationAccesses=pS,i.updateOrganizations=RS,i.updateProject=$T,i.updateProjectAccess=ZS,i.updateProjectAccesses=JS,i.updateProjectAttachment=rT,i.updateProjectAttachments=uT,i.updateProjectFile=PT,i.updateProjectFiles=FT,i.updateProjects=DT,i.updateTeam=hI,i.updateTeamMembership=QT,i.updateTeamMemberships=xT,i.updateTeams=mI,i.updateUser=iS,i.updateUsers=sS,i.useSelectorBuilder=cO,i.userReducer=aS,i.userSlice=un,i.uuidObj=P,i.uuidObjSortFn=Yt,i.uuidSortFn=It,i.versioningReducer=OI,i.versioningSlice=II,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
|