@overmap-ai/core 1.0.79 → 1.0.80-clean-ups.0

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.
Files changed (75) hide show
  1. package/dist/constants/offline.d.ts +2 -0
  2. package/dist/enums/index.d.ts +0 -1
  3. package/dist/overmap-core.js +4942 -4866
  4. package/dist/overmap-core.umd.cjs +6 -6
  5. package/dist/sdk/services/BaseOfflineFileModelApiService.d.ts +2 -2
  6. package/dist/sdk/services/DocumentAttachmentService.d.ts +2 -2
  7. package/dist/sdk/services/FileService.d.ts +1 -1
  8. package/dist/sdk/services/IssueUpdateService.d.ts +0 -2
  9. package/dist/sdk/typings.d.ts +21 -1
  10. package/dist/sdk/utils.d.ts +1 -0
  11. package/dist/store/constants.d.ts +0 -1
  12. package/dist/store/reducers.d.ts +0 -3
  13. package/dist/store/slices/assetSlice.d.ts +0 -1
  14. package/dist/store/slices/assetTypeFieldValuesAttachmentSlice.d.ts +0 -1
  15. package/dist/store/slices/assetTypeFieldValuesSlice.d.ts +0 -1
  16. package/dist/store/slices/assetTypeFieldsAttachmentSlice.d.ts +0 -1
  17. package/dist/store/slices/assetTypeFieldsSlice.d.ts +0 -1
  18. package/dist/store/slices/assetTypeStatusSlice.d.ts +0 -1
  19. package/dist/store/slices/emailDomainsSlice.d.ts +0 -1
  20. package/dist/store/slices/formRevisionAttachmentSlice.d.ts +0 -1
  21. package/dist/store/slices/formRevisionSlice.d.ts +0 -1
  22. package/dist/store/slices/formSlice.d.ts +0 -1
  23. package/dist/store/slices/formSubmissionSlice.d.ts +9 -1
  24. package/dist/store/slices/geoImageSlice.d.ts +0 -1
  25. package/dist/store/slices/index.d.ts +0 -1
  26. package/dist/store/slices/issueAssociationSlice.d.ts +0 -1
  27. package/dist/store/slices/issueTypeFieldValuesAttachmentSlice.d.ts +0 -1
  28. package/dist/store/slices/issueTypeFieldValuesSlice.d.ts +0 -1
  29. package/dist/store/slices/issueTypeFieldsAttachmentSlice.d.ts +0 -1
  30. package/dist/store/slices/issueTypeFieldsSlice.d.ts +0 -1
  31. package/dist/store/slices/issueTypePrioritySlice.d.ts +0 -1
  32. package/dist/store/slices/issueTypeStatusSlice.d.ts +0 -1
  33. package/dist/store/slices/issueUpdateSlice.d.ts +0 -3
  34. package/dist/store/slices/organizationSlice.d.ts +0 -1
  35. package/dist/store/slices/procedureFieldValuesSlice.d.ts +0 -1
  36. package/dist/store/slices/procedureStepAssigneeSlice.d.ts +0 -1
  37. package/dist/store/slices/procedureStepCommentSlice.d.ts +0 -1
  38. package/dist/store/slices/procedureStepDefaultAssigneeSlice.d.ts +0 -1
  39. package/dist/store/slices/procedureStepDefaultReviewerSlice.d.ts +0 -1
  40. package/dist/store/slices/procedureStepEventSlice.d.ts +0 -1
  41. package/dist/store/slices/procedureStepFieldValuesAttachmentSlice.d.ts +0 -1
  42. package/dist/store/slices/procedureStepFieldValuesReviewSlice.d.ts +0 -1
  43. package/dist/store/slices/procedureStepFieldValuesSlice.d.ts +0 -1
  44. package/dist/store/slices/procedureStepFieldsAttachmentSlice.d.ts +0 -1
  45. package/dist/store/slices/procedureStepFieldsSlice.d.ts +0 -2
  46. package/dist/store/slices/procedureStepReviewerSlice.d.ts +0 -1
  47. package/dist/store/slices/procedureStepSlice.d.ts +0 -1
  48. package/dist/store/slices/procedureTypeAttachmentSlice.d.ts +0 -1
  49. package/dist/store/slices/procedureTypeFieldValuesAttachmentSlice.d.ts +0 -1
  50. package/dist/store/slices/procedureTypeFieldsAttachmentSlice.d.ts +0 -1
  51. package/dist/store/slices/projectFileSlice.d.ts +0 -1
  52. package/dist/store/slices/projectSlice.d.ts +0 -1
  53. package/dist/store/slices/userSlice.d.ts +0 -1
  54. package/dist/store/store.d.ts +3 -1
  55. package/dist/typings/index.d.ts +0 -1
  56. package/dist/typings/models/agents.d.ts +1 -2
  57. package/dist/typings/models/assets.d.ts +1 -2
  58. package/dist/typings/models/base.d.ts +14 -2
  59. package/dist/typings/models/documents.d.ts +1 -2
  60. package/dist/typings/models/fields.d.ts +1 -1
  61. package/dist/typings/models/forms.d.ts +7 -0
  62. package/dist/typings/models/geoImages.d.ts +1 -2
  63. package/dist/typings/models/issues.d.ts +1 -2
  64. package/dist/typings/models/procedures.d.ts +1 -2
  65. package/dist/typings/models/projects.d.ts +1 -2
  66. package/dist/typings/models/users.d.ts +1 -2
  67. package/dist/utils/file.d.ts +0 -1
  68. package/dist/utils/utils.d.ts +0 -1
  69. package/dist/utils/uuid.d.ts +0 -1
  70. package/package.json +3 -7
  71. package/dist/enums/attachments.d.ts +0 -7
  72. package/dist/store/migrations.d.ts +0 -2
  73. package/dist/store/slices/versioningSlice.d.ts +0 -8
  74. package/dist/typings/files.d.ts +0 -39
  75. package/dist/utils/forms.d.ts +0 -2
@@ -1,14 +1,14 @@
1
- (function(i,L){typeof exports=="object"&&typeof module<"u"?L(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("buffer"),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","buffer","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],L):(i=typeof globalThis<"u"?globalThis:i||self,L(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,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,L,l,pt,rt,ab,rb,db,pc,ub,yc,lb,ob,gR,MR,hb,mb,pb){"use strict";var bR=Object.defineProperty;var _R=(i,L,l)=>L in i?bR(i,L,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[L]=l;var h=(i,L,l)=>_R(i,typeof L!="symbol"?L+"":L,l);var nb;const fc=Object.freeze([]),Sc=Object.freeze({}),Ac=6e4;var Ic=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Ic||{}),o=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(o||{}),Tc=(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))(Tc||{}),Pc=(t=>(t.Issue="issue",t.Asset="asset",t.AssetType="asset_type",t.Project="project",t.Document="document",t))(Pc||{}),$=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))($||{}),Oc=(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))(Oc||{}),Fc=(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))(Fc||{}),bc=(t=>(t[t.ADD_ASSIGNEE=0]="ADD_ASSIGNEE",t[t.REMOVE_ASSIGNEE=2]="REMOVE_ASSIGNEE",t[t.ADD_REVIEWER=4]="ADD_REVIEWER",t[t.REMOVE_REVIEWER=6]="REMOVE_REVIEWER",t))(bc||{}),_c=(t=>(t[t.APPROVED=0]="APPROVED",t[t.REJECTED=2]="REJECTED",t[t.CHANGES_REQUESTED=4]="CHANGES_REQUESTED",t))(_c||{});function O(t){return{addOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},addMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},setOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},setMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},updateOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},updateMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},deleteOne:(m,f)=>{delete m.instances[f.payload]},deleteMany:(m,f)=>{for(const I of f.payload)delete m.instances[I]},initialize:(m,f)=>{m.instances={};const I=new Set;for(const R of f.payload){const b=t(R);I.add(b),m.instances[b]=R}I.size!==f.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function yb(t){return{initializeSelection:(d,p)=>{d[t]=Array.from(new Set(p.payload))},selectOne:(d,p)=>{console.debug(d,d[t]),!new Set(d[t]).has(p.payload)&&d[t].push(p.payload)},selectMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)||m.add(f);d[t]=Array.from(m)},unselectOne:(d,p)=>{const m=new Set(d[t]);m.has(p.payload)&&(m.delete(p.payload),d[t]=Array.from(m))},unselectMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)&&m.delete(f);d[t]=Array.from(m)},toggleOne:(d,p)=>{const m=new Set(d[t]);m.has(p.payload)?m.delete(p.payload):m.add(p.payload),d[t]=Array.from(m)},toggleMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)?m.delete(f):m.add(f);d[t]=Array.from(m)}}}const gt="versioning",T=l.createAction("RESET"),V=l.createAction("RESET_PROJECT_STATE"),F=l.createAction("RESET_ORGANIZATION_STATE");function fb(t,s){return ab.useMemo(t,s)}nb=Symbol.toStringTag;class rs{constructor(){h(this,nb,"Promise");h(this,"_promise");h(this,"_resolve");h(this,"_reject");h(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 ds=!1;["true","1"].includes("".toLowerCase())&&(ds=!0);function Sb(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),c=e.length;if(c!==n.length)return!1;for(let r=0;r<c;r++){const a=e[r];if(!Object.prototype.hasOwnProperty.call(s,a)||t[a]!==s[a])return!1}return!0}function us(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(ds&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(ds&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function Ab(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 S=t=>t.length===0?fc:t,ls=t=>Object.keys(t).length===0?Sc:t,gc=us(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===os.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),Ib=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),Tb=1e3*86400,os=new Date,Pb=t=>new Date(t).toDateString()===os.toDateString(),Ob=us((t,s,e)=>{const n=Math.round((new Date(t).getTime()-os.getTime())/Tb);return n<s||n>e?gc(t):Ib.format(n,"days")});function Fb(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function Dt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const c=n.result;if(!c){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",c).then(r=>{const a=Fb(r);s(a)})},n.readAsArrayBuffer(t)})}const bb=(t,s)=>`${t}${s?`.${s}`:""}`;function _b(t,s){return new File([t],s,{type:t.type})}function Mc(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Rc=async t=>(await fetch(t)).blob(),wc=async(t,s)=>{const e=await Rc(t);return new File([e],s,{type:e.type})};function gb(t){const s=new Blob([t]);rb.saveAs(s,t.name)}function vc(t){return typeof t=="string"&&t.startsWith("blob:")}function Mb(t){return t.type.startsWith("image/")}const Ec={};function Rb(t,s,e,...n){const c=Ec[t];let r=!1;c?c[s]||(c[s]=!0,r=!0):(Ec[t]={[s]:!0},r=!0),r&&console[e](...n)}const Bc=["created_at","updated_at","index","revision"];function P(t){return{...t,uuid:rt.v4()}}function wb(t){const s={};for(const e of t)s[e.uuid]=e;return s}function E(t){return t.map(({uuid:s})=>s)}function jt(t,s){return t.localeCompare(s)}function hs(t,s){return jt(t.uuid,s.uuid)}function vb(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const r=t.split(".");r.length>1&&(s=r[r.length-1])}s&&!s.startsWith(".")&&(s="."+s);const c=s?s.length:0;return n.length+c>e&&(n=n.slice(0,e-c)+(s||"")),n}function Eb(t){return t.toLowerCase().replace(" ","-")}function Bb(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function Vb(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const zb=/^.+@.+\..+$/;function M(t){const s={...t};for(const e of[...Bc,"created_by"])e in s&&delete s[e];return s}const Vc=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,zc=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Dc=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,jc=t=>db(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),Db=t=>{const{roots:s}=jc(t);return s.map(e=>new pc.Tree(e))},qc=(t,s)=>{const{nodes:e}=jc(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new pc.Tree(n)},yt=(t,s)=>t.submitted_at===s.submitted_at?0:t.submitted_at<s.submitted_at?-1:1;class jb{constructor(s){h(this,"operations",[]);h(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(c=>c[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(c=>c[s]!==e)),this}orderBy(s){return this.operations.push(e=>e.toSorted((n,c)=>n[s]<=c[s]?1:-1)),this}reverse(){return this.operations.push(s=>s.toReversed()),this}all(){return this.operations.push(s=>s),this}get(s,e){return l.createSelector([this.getData],n=>this.performOperations(n).find(c=>c[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=>S(this.performOperations(s)))}}const y=t=>(...s)=>e=>t(e,...s),G=O(t=>t.uuid),Cc={instances:{}},ms=l.createSlice({name:"agents",initialState:Cc,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Cc)),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:$c,addConversation:Uc,addConversations:qb,setConversation:Lc,setConversations:Cb,updateConversation:kc,updateConversations:$b,deleteConversation:Ub,deleteConversations:Lb}=ms.actions,ps=t=>t.agentsReducer.instances,kb=l.createSelector([ps],t=>Object.values(t)),Nb=y(l.createSelector([ps,(t,s)=>s],(t,s)=>t[s])),Nc=ms.reducer,H=O(t=>t.uuid),Gc={instances:{}},ys=l.createSlice({name:"assetAttachments",initialState:Gc,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Gc)),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:Hc,addAssetAttachment:Wc,addAssetAttachments:fs,setAssetAttachment:Kc,setAssetAttachments:Yc,updateAssetAttachment:Zc,updateAssetAttachments:Jc,deleteAssetAttachment:Xc,deleteAssetAttachments:Ss}=ys.actions,Qc=t=>t.assetAttachmentReducer.instances,As=l.createSelector([Qc],t=>Object.values(t)),xc=t=>s=>s.assetAttachmentReducer.instances[t],ea=y(l.createSelector([As,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ta=y(l.createSelector([As,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>s===e)))),sa=ys.reducer,W=O(t=>t.uuid),ia={instances:{}},Is=l.createSlice({name:"assetComments",initialState:ia,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ia)),reducers:{initializeAssetComments:W.initialize,addAssetComment:W.addOne,addAssetComments:W.addMany,setAssetComment:W.setOne,setAssetComments:W.setMany,updateAssetComment:W.updateOne,updateAssetComments:W.updateMany,deleteAssetComment:W.deleteOne,deleteAssetComments:W.deleteMany}}),{initializeAssetComments:na,addAssetComment:ca,addAssetComments:qt,setAssetComment:aa,setAssetComments:ra,updateAssetComment:da,updateAssetComments:ua,deleteAssetComment:la,deleteAssetComments:Ct}=Is.actions,oa=t=>t.assetCommentReducer.instances,$t=l.createSelector([oa],t=>S(Object.values(t).toSorted(yt))),ha=t=>s=>s.assetCommentReducer.instances[t],ma=y(l.createSelector([$t,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),pa=y(l.createSelector([$t,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),ya=y(l.createSelector([$t,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.asset)))})),fa=Is.reducer,K=O(t=>t.uuid),Sa={instances:{}},Ts=l.createSlice({name:"assets",initialState:Sa,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Sa)),reducers:{initializeAssets:K.initialize,addAsset:K.addOne,addAssets:K.addMany,setAsset:K.setOne,setAssets:K.setMany,updateAsset:K.updateOne,updateAssets:K.updateMany,deleteAsset:K.deleteOne,deleteAssets:K.deleteMany}}),{initializeAssets:Aa,addAsset:Ia,addAssets:Ps,updateAsset:Ta,updateAssets:Pa,deleteAsset:Oa,deleteAssets:Os,setAsset:Fa,setAssets:ba}=Ts.actions,_a=t=>t.assetReducer.instances,Ut=l.createSelector([_a],t=>S(Object.values(t))),Gb=y(l.createSelector([Ut,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>e===s)))),ga=y(l.createSelector([Ut,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Ma=t=>s=>s.assetReducer.instances[t],Ra=y(l.createSelector([Ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),wa=Ts.reducer,Y=O(t=>t.uuid),va={instances:{}},Fs=l.createSlice({name:"assetTypeAttachments",initialState:va,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,va)),reducers:{initializeAssetTypeAttachments:Y.initialize,addAssetTypeAttachment:Y.addOne,addAssetTypeAttachments:Y.addMany,setAssetTypeAttachment:Y.setOne,setAssetTypeAttachments:Y.setMany,updateAssetTypeAttachment:Y.updateOne,updateAssetTypeAttachments:Y.updateMany,deleteAssetTypeAttachment:Y.deleteOne,deleteAssetTypeAttachments:Y.deleteMany}}),{initializeAssetTypeAttachments:Ea,addAssetTypeAttachment:Ba,addAssetTypeAttachments:bs,setAssetTypeAttachment:Va,setAssetTypeAttachments:za,updateAssetTypeAttachment:Da,updateAssetTypeAttachments:ja,deleteAssetTypeAttachment:qa,deleteAssetTypeAttachments:_s}=Fs.actions,Ca=t=>t.assetTypeAttachmentReducer.instances,gs=l.createSelector([Ca],t=>Object.values(t)),$a=t=>s=>s.assetTypeAttachmentReducer.instances[t],Ua=y(l.createSelector([gs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),La=y(l.createSelector([gs,(t,s)=>s],(t,s)=>S(t.filter(({asset_type:e})=>s===e)))),ka=Fs.reducer,Z=O(t=>t.uuid),Na={instances:{}},Ms=l.createSlice({name:"assetTypeFieldsAttachments",initialState:Na,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Na)),reducers:{initializeAssetTypeFieldsAttachments:Z.initialize,addAssetTypeFieldsAttachment:Z.addOne,addAssetTypeFieldsAttachments:Z.addMany,setAssetTypeFieldsAttachment:Z.setOne,setAssetTypeFieldsAttachments:Z.setMany,updateAssetTypeFieldsAttachment:Z.updateOne,updateAssetTypeFieldsAttachments:Z.updateMany,deleteAssetTypeFieldsAttachment:Z.deleteOne,deleteAssetTypeFieldsAttachments:Z.deleteMany}}),{initializeAssetTypeFieldsAttachments:Ga,addAssetTypeFieldsAttachment:Ha,addAssetTypeFieldsAttachments:Wa,setAssetTypeFieldsAttachment:Ka,setAssetTypeFieldsAttachments:Ya,updateAssetTypeFieldsAttachment:Za,updateAssetTypeFieldsAttachments:Ja,deleteAssetTypeFieldsAttachment:Xa,deleteAssetTypeFieldsAttachments:Qa}=Ms.actions,xa=t=>t.assetTypeFieldsAttachmentReducer.instances,Rs=l.createSelector([xa],t=>Object.values(t)),Hb=y(l.createSelector([Rs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),er=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],tr=y(l.createSelector([Rs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),sr=Ms.reducer,J=O(t=>t.uuid),ir={instances:{}},ws=l.createSlice({name:"assetTypeFields",initialState:ir,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,ir)),reducers:{initializeAssetTypeFields:J.initialize,addAssetTypeFields:J.addOne,addAssetTypeFieldsMany:J.addMany,setAssetTypeFields:J.setOne,setAssetTypeFieldsMany:J.setMany,updateAssetTypeFields:J.updateOne,updateAssetTypeFieldsMany:J.updateMany,deleteAssetTypeFields:J.deleteOne,deleteAssetTypeFieldsMany:J.deleteMany}}),{initializeAssetTypeFields:nr,addAssetTypeFields:cr,addAssetTypeFieldsMany:ar,setAssetTypeFields:rr,setAssetTypeFieldsMany:dr,updateAssetTypeFields:ur,updateAssetTypeFieldsMany:lr,deleteAssetTypeFields:or,deleteAssetTypeFieldsMany:hr}=ws.actions,mr=t=>t.assetTypeFieldsReducer.instances,Mt=l.createSelector([mr],t=>Object.values(t)),Wb=y(l.createSelector([Mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Kb=y(l.createSelector([Mt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).toSorted(yt).pop())),pr=t=>s=>s.assetTypeFieldsReducer.instances[t],yr=y(l.createSelector([Mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fr=ws.reducer,X=O(t=>t.uuid),Sr={instances:{}},vs=l.createSlice({name:"assetTypeFieldValuesAttachments",initialState:Sr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Sr)),reducers:{initializeAssetTypeFieldValuesAttachments:X.initialize,addAssetTypeFieldValuesAttachment:X.addOne,addAssetTypeFieldValuesAttachments:X.addMany,setAssetTypeFieldValuesAttachment:X.setOne,setAssetTypeFieldValuesAttachments:X.setMany,updateAssetTypeFieldValuesAttachment:X.updateOne,updateAssetTypeFieldValuesAttachments:X.updateMany,deleteAssetTypeFieldValuesAttachment:X.deleteOne,deleteAssetTypeFieldValuesAttachments:X.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:Ar,addAssetTypeFieldValuesAttachment:Ir,addAssetTypeFieldValuesAttachments:Es,setAssetTypeFieldValuesAttachment:Tr,setAssetTypeFieldValuesAttachments:Pr,updateAssetTypeFieldValuesAttachment:Or,updateAssetTypeFieldValuesAttachments:Fr,deleteAssetTypeFieldValuesAttachment:br,deleteAssetTypeFieldValuesAttachments:Bs}=vs.actions,_r=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Vs=l.createSelector([_r],t=>Object.values(t)),gr=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],Mr=y(l.createSelector([Vs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Rr=y(l.createSelector([Vs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),wr=vs.reducer,Q=O(t=>t.uuid),vr={instances:{}},zs=l.createSlice({name:"assetTypeFieldValues",initialState:vr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,vr)),reducers:{initializeAssetTypeFieldValues:Q.initialize,addAssetTypeFieldValues:Q.addOne,addAssetTypeFieldValuesMany:Q.addMany,setAssetTypeFieldValues:Q.setOne,setAssetTypeFieldValuesMany:Q.setMany,updateAssetTypeFieldValues:Q.updateOne,updateAssetTypeFieldValuesMany:Q.updateMany,deleteAssetTypeFieldValues:Q.deleteOne,deleteAssetTypeFieldValuesMany:Q.deleteMany}}),{initializeAssetTypeFieldValues:Er,addAssetTypeFieldValues:Br,addAssetTypeFieldValuesMany:Vr,setAssetTypeFieldValues:zr,setAssetTypeFieldValuesMany:Dr,updateAssetTypeFieldValues:jr,updateAssetTypeFieldValuesMany:qr,deleteAssetTypeFieldValues:Cr,deleteAssetTypeFieldValuesMany:$r}=zs.actions,Ur=t=>t.assetTypeFieldValuesReducer.instances,Lt=l.createSelector([Ur],t=>Object.values(t)),Yb=y(l.createSelector([Lt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),Zb=y(l.createSelector([Mt,Lt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(c=>c.asset_type===e).map(c=>c.uuid));return S(s.filter(c=>n.has(c.fields_revision)))})),Lr=t=>s=>s.assetTypeFieldValuesReducer.instances[t],kr=y(l.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Nr=zs.reducer,x=O(t=>t.uuid),Gr={instances:{}},Ds=l.createSlice({name:"assetTypeIdentifiers",initialState:Gr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Gr)),reducers:{initializeAssetTypeIdentifiers:x.initialize,addAssetTypeIdentifier:x.addOne,addAssetTypeIdentifiers:x.addMany,setAssetTypeIdentifier:x.setOne,setAssetTypeIdentifiers:x.setMany,updateAssetTypeIdentifier:x.updateOne,updateAssetTypeIdentifiers:x.updateMany,deleteAssetTypeIdentifier:x.deleteOne,deleteAssetTypeIdentifiers:x.deleteMany}}),{initializeAssetTypeIdentifiers:Hr,addAssetTypeIdentifier:Wr,addAssetTypeIdentifiers:Kr,setAssetTypeIdentifier:Yr,setAssetTypeIdentifiers:Zr,updateAssetTypeIdentifier:Jr,updateAssetTypeIdentifiers:Xr,deleteAssetTypeIdentifier:Qr,deleteAssetTypeIdentifiers:xr}=Ds.actions,ed=t=>t.assetTypeIdentifierReducer.instances,js=l.createSelector([ed],t=>Object.values(t)),td=t=>s=>s.assetTypeIdentifierReducer.instances[t],sd=y(l.createSelector([js,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Jb=y(l.createSelector([js,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),id=Ds.reducer,ee=O(t=>t.uuid),nd={instances:{}},qs=l.createSlice({name:"assetTypeIdentifierValues",initialState:nd,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,nd)),reducers:{initializeAssetTypeIdentifierValues:ee.initialize,addAssetTypeIdentifierValue:ee.addOne,addAssetTypeIdentifierValues:ee.addMany,setAssetTypeIdentifierValue:ee.setOne,setAssetTypeIdentifierValues:ee.setMany,updateAssetTypeIdentifierValue:ee.updateOne,updateAssetTypeIdentifierValues:ee.updateMany,deleteAssetTypeIdentifierValue:ee.deleteOne,deleteAssetTypeIdentifierValues:ee.deleteMany}}),{initializeAssetTypeIdentifierValues:cd,addAssetTypeIdentifierValue:ad,addAssetTypeIdentifierValues:rd,setAssetTypeIdentifierValue:dd,setAssetTypeIdentifierValues:ud,updateAssetTypeIdentifierValue:ld,updateAssetTypeIdentifierValues:od,deleteAssetTypeIdentifierValue:hd,deleteAssetTypeIdentifierValues:md}=qs.actions,pd=t=>t.assetTypeIdentifierValueReducer.instances,kt=l.createSelector([pd],t=>Object.values(t)),yd=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],fd=y(l.createSelector([kt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Xb=y(l.createSelector([kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),Qb=y(l.createSelector([kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type_identifier===s)))),Sd=qs.reducer,te=O(t=>t.uuid),Ad={instances:{}},Cs=l.createSlice({name:"assetTypes",initialState:Ad,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ad)),reducers:{initializeAssetTypes:te.initialize,setAssetType:te.setOne,setAssetTypes:te.setMany,addAssetType:te.addOne,addAssetTypes:te.addMany,updateAssetType:te.updateOne,updateAssetTypes:te.updateMany,deleteAssetType:te.deleteOne,deleteAssetTypes:te.deleteMany}}),{initializeAssetTypes:Id,setAssetType:Td,setAssetTypes:Pd,addAssetType:Od,addAssetTypes:Fd,updateAssetType:bd,updateAssetTypes:_d,deleteAssetType:gd,deleteAssetTypes:Md}=Cs.actions,Rd=t=>t.assetTypeReducer.instances,$s=l.createSelector([Rd],t=>Object.values(t)),wd=t=>s=>s.assetTypeReducer.instances[t],vd=y(l.createSelector([$s,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xb=y(l.createSelector([$s,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Ed=Cs.reducer,se=O(t=>t.uuid),Bd={instances:{}},Us=l.createSlice({name:"assetTypeStatuses",initialState:Bd,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Bd)),reducers:{initializeAssetTypeStatuses:se.initialize,addAssetTypeStatus:se.addOne,addAssetTypeStatuses:se.addMany,setAssetTypeStatus:se.setOne,setAssetTypeStatuses:se.setMany,updateAssetTypeStatus:se.updateOne,updateAssetTypeStatuses:se.updateMany,deleteAssetTypeStatus:se.deleteOne,deleteAssetTypeStatuses:se.deleteMany}}),{initializeAssetTypeStatuses:Vd,addAssetTypeStatus:zd,addAssetTypeStatuses:Dd,setAssetTypeStatus:jd,setAssetTypeStatuses:qd,updateAssetTypeStatus:Cd,updateAssetTypeStatuses:$d,deleteAssetTypeStatus:Ud,deleteAssetTypeStatuses:Ld}=Us.actions,kd=t=>t.assetTypeStatusReducer.instances,Ls=l.createSelector([kd],t=>S(Object.values(t).toSorted(Vc))),Nd=t=>s=>s.assetTypeStatusReducer.instances[t],Gd=y(l.createSelector([Ls,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),e_=y(l.createSelector([Ls,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Hd=Us.reducer,Wd={accessToken:"",refreshToken:"",isLoggedIn:!1},Nt=l.createSlice({name:"auth",initialState:Wd,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Wd)),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||Nt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:t_,clearTokens:s_,setLoggedIn:Kd}=Nt.actions,i_=t=>t.authReducer.accessToken,n_=t=>t.authReducer.isLoggedIn,Yd=Nt.reducer,ie=O(t=>t.uuid),Zd={instances:{}},ks=l.createSlice({name:"documentAttachments",initialState:Zd,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Zd)),reducers:{initializeDocumentAttachments:ie.initialize,addDocumentAttachment:ie.addOne,addDocumentAttachments:ie.addMany,setDocumentAttachment:ie.setOne,setDocumentAttachments:ie.setMany,updateDocumentAttachment:ie.updateOne,updateDocumentAttachments:ie.updateMany,deleteDocumentAttachment:ie.deleteOne,deleteDocumentAttachments:ie.deleteMany}}),{initializeDocumentAttachments:Jd,addDocumentAttachment:Xd,addDocumentAttachments:Qd,setDocumentAttachment:xd,setDocumentAttachments:eu,updateDocumentAttachment:tu,updateDocumentAttachments:su,deleteDocumentAttachment:iu,deleteDocumentAttachments:nu}=ks.actions,cu=t=>t.documentAttachmentReducer.instances,Ns=l.createSelector([cu],t=>Object.values(t)),au=t=>s=>s.documentAttachmentReducer.instances[t],ru=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),c_=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>S(t.filter(({document:e})=>s===e)))),du=ks.reducer,ne=O(({uuid:t})=>t),uu={instances:{}},Gs=l.createSlice({name:"documents",initialState:uu,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>{Object.assign(s,uu)}),reducers:{initializeDocuments:ne.initialize,addDocument:ne.addOne,addDocuments:ne.addMany,setDocument:ne.setOne,setDocuments:ne.setMany,updateDocument:ne.updateOne,updateDocuments:ne.updateMany,deleteDocument:ne.deleteOne,deleteDocuments:ne.deleteMany}}),{initializeDocuments:lu,addDocument:ou,addDocuments:hu,setDocument:mu,setDocuments:pu,updateDocument:yu,updateDocuments:fu,deleteDocument:Su,deleteDocuments:Au}=Gs.actions,Iu=Gs.reducer,Hs=t=>t.documentsReducer.instances,Gt=l.createSelector([Hs],t=>Object.values(t)),Tu=t=>s=>s.documentsReducer.instances[t],Pu=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),a_=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),r_=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),Ou=y(l.createSelector([Hs,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const c=qc(s,Object.values(t)).all().map(({model:r})=>r);return S(c)})),ce=O(t=>t.uuid),Fu={instances:{}},Ws=l.createSlice({name:"emailDomains",initialState:Fu,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Fu)),reducers:{initializeEmailDomains:ce.initialize,addEmailDomain:ce.addOne,addEmailDomains:ce.addMany,setEmailDomain:ce.setOne,setEmailDomains:ce.setMany,updateEmailDomain:ce.updateOne,updateEmailDomains:ce.updateMany,deleteEmailDomain:ce.deleteOne,deleteEmailDomains:ce.deleteMany}}),{initializeEmailDomains:bu,addEmailDomain:_u,addEmailDomains:gu,setEmailDomain:Mu,setEmailDomains:Ru,updateEmailDomain:wu,updateEmailDomains:vu,deleteEmailDomain:Eu,deleteEmailDomains:Bu}=Ws.actions,Vu=t=>t.emailDomainsReducer.instances,Ks=l.createSelector([Vu],t=>Object.values(t)),zu=t=>s=>s.emailDomainsReducer.instances[t],Du=y(l.createSelector([Ks,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),d_=y(l.createSelector([Ks,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),ju=Ws.reducer,qu={s3Urls:{}},Cu=1e3*60*60,u_=Cu*24*7,Ys=l.createSlice({name:"file",initialState:qu,extraReducers:t=>t.addCase(T,s=>Object.assign(s,qu)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:c}=s.payload,r=new Date,a=new Date(r.getTime()+u_);t.s3Urls[c]={url:e,fields:n,exp:a.getTime()}}}}),{setUploadUrl:l_}=Ys.actions,o_=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<Cu))return e},$u=Ys.reducer,ae=O(t=>t.uuid),Uu={instances:{}},Zs=l.createSlice({name:"formIdentifiers",initialState:Uu,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Uu)),reducers:{initializeFormIdentifiers:ae.initialize,addFormIdentifier:ae.addOne,addFormIdentifiers:ae.addMany,setFormIdentifier:ae.setOne,setFormIdentifiers:ae.setMany,updateFormIdentifier:ae.updateOne,updateFormIdentifiers:ae.updateMany,deleteFormIdentifier:ae.deleteOne,deleteFormIdentifiers:ae.deleteMany}}),{initializeFormIdentifiers:Lu,addFormIdentifier:ku,addFormIdentifiers:Nu,setFormIdentifier:Gu,setFormIdentifiers:Hu,updateFormIdentifier:Wu,updateFormIdentifiers:Ku,deleteFormIdentifier:Yu,deleteFormIdentifiers:Zu}=Zs.actions,Ju=t=>t.formIdentifierReducer.instances,Js=l.createSelector([Ju],t=>Object.values(t)),Xu=t=>s=>s.formIdentifierReducer.instances[t],Qu=y(l.createSelector([Js,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),h_=y(l.createSelector([Js,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),xu=Zs.reducer,re=O(t=>t.uuid),el={instances:{}},Xs=l.createSlice({name:"formIdentifierValues",initialState:el,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,el)),reducers:{initializeFormIdentifierValues:re.initialize,addFormIdentifierValue:re.addOne,addFormIdentifierValues:re.addMany,setFormIdentifierValue:re.setOne,setFormIdentifierValues:re.setMany,updateFormIdentifierValue:re.updateOne,updateFormIdentifierValues:re.updateMany,deleteFormIdentifierValue:re.deleteOne,deleteFormIdentifierValues:re.deleteMany}}),{initializeFormIdentifierValues:tl,addFormIdentifierValue:sl,addFormIdentifierValues:il,setFormIdentifierValue:nl,setFormIdentifierValues:cl,updateFormIdentifierValue:al,updateFormIdentifierValues:rl,deleteFormIdentifierValue:dl,deleteFormIdentifierValues:ul}=Xs.actions,ll=t=>t.formIdentifierValueReducer.instances,Ht=l.createSelector([ll],t=>Object.values(t)),ol=t=>s=>s.formIdentifierValueReducer.instances[t],hl=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),m_=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),p_=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_identifier===s)))),ml=Xs.reducer,de=O(t=>t.uuid),pl={instances:{}},Qs=l.createSlice({name:"formRevisionAttachments",initialState:pl,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,pl)),reducers:{initializeFormRevisionAttachments:de.initialize,addFormRevisionAttachment:de.addOne,addFormRevisionAttachments:de.addMany,setFormRevisionAttachment:de.setOne,setFormRevisionAttachments:de.setMany,updateFormRevisionAttachment:de.updateOne,updateFormRevisionAttachments:de.updateMany,deleteFormRevisionAttachment:de.deleteOne,deleteFormRevisionAttachments:de.deleteMany}}),{initializeFormRevisionAttachments:yl,addFormRevisionAttachment:fl,addFormRevisionAttachments:Sl,setFormRevisionAttachment:Al,setFormRevisionAttachments:Il,updateFormRevisionAttachment:Tl,updateFormRevisionAttachments:Pl,deleteFormRevisionAttachment:Ol,deleteFormRevisionAttachments:Fl}=Qs.actions,Wt=t=>t.formRevisionAttachmentReducer.instances,bl=l.createSelector([Wt],t=>Object.values(t)),_l=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>t[s])),gl=y(l.createSelector([bl,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),y_=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.form_revision===s)))),Ml=Qs.reducer,ue=O(t=>t.uuid),Rl={instances:{}},xs=l.createSlice({name:"formRevisions",initialState:Rl,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Rl)),reducers:{initializeFormRevisions:ue.initialize,addFormRevision:ue.addOne,addFormRevisions:ue.addMany,setFormRevision:ue.setOne,setFormRevisions:ue.setMany,updateFormRevision:ue.updateOne,updateFormRevisions:ue.updateMany,deleteFormRevision:ue.deleteOne,deleteFormRevisions:ue.deleteMany}}),{initializeFormRevisions:wl,addFormRevision:vl,addFormRevisions:ei,setFormRevision:El,setFormRevisions:Bl,updateFormRevision:Vl,updateFormRevisions:zl,deleteFormRevision:Dl,deleteFormRevisions:ti}=xs.actions,jl=t=>t.formRevisionReducer.instances,Kt=l.createSelector([jl],t=>Object.values(t)),ql=t=>s=>s.formRevisionReducer.instances[t],Cl=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),f_=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).toSorted(yt).pop())),$l=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),Ul=xs.reducer,le=O(t=>t.uuid),Ll={instances:{}},si=l.createSlice({name:"forms",initialState:Ll,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ll)),reducers:{initializeForms:le.initialize,addForm:le.addOne,addForms:le.addMany,setForm:le.setOne,setForms:le.setMany,updateForm:le.updateOne,updateForms:le.updateMany,deleteForm:le.deleteOne,deleteForms:le.deleteMany}}),{initializeForms:kl,addForm:Nl,addForms:Gl,setForm:Hl,setForms:Wl,updateForm:Kl,updateForms:Yl,deleteForm:Zl,deleteForms:Jl}=si.actions,Xl=si.reducer,Ql=t=>t.formReducer.instances,ii=l.createSelector([Ql],t=>Object.values(t)),xl=t=>s=>s.formReducer.instances[t],eo=y(l.createSelector([ii,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),S_=y(l.createSelector([ii,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),oe=O(t=>t.uuid),to={instances:{}},ni=l.createSlice({name:"formSubmissionAttachments",initialState:to,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,to)),reducers:{initializeFormSubmissionAttachments:oe.initialize,addFormSubmissionAttachment:oe.addOne,addFormSubmissionAttachments:oe.addMany,setFormSubmissionAttachment:oe.setOne,setFormSubmissionAttachments:oe.setMany,updateFormSubmissionAttachment:oe.updateOne,updateFormSubmissionAttachments:oe.updateMany,deleteFormSubmissionAttachment:oe.deleteOne,deleteFormSubmissionAttachments:oe.deleteMany}}),{initializeFormSubmissionAttachments:so,addFormSubmissionAttachment:io,addFormSubmissionAttachments:ci,setFormSubmissionAttachment:no,setFormSubmissionAttachments:co,updateFormSubmissionAttachment:ao,updateFormSubmissionAttachments:ro,deleteFormSubmissionAttachment:uo,deleteFormSubmissionAttachments:ai}=ni.actions,ri=t=>t.formSubmissionAttachmentReducer.instances,di=l.createSelector([ri],t=>Object.values(t)),lo=y(l.createSelector([ri,(t,s)=>s],(t,s)=>t[s])),ui=y(l.createSelector([di,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.uuid)))})),oo=ui,ho=y(l.createSelector([di,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),mo=ni.reducer,he=O(t=>t.uuid),po={instances:{}},li=l.createSlice({name:"formSubmissions",initialState:po,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,po)),reducers:{initializeFormSubmissions:he.initialize,setFormSubmission:he.setOne,setFormSubmissions:he.setMany,addFormSubmission:he.addOne,addFormSubmissions:he.addMany,updateFormSubmission:he.updateOne,updateFormSubmissions:he.updateMany,deleteFormSubmission:he.deleteOne,deleteFormSubmissions:he.deleteMany}}),{initializeFormSubmissions:yo,setFormSubmission:fo,setFormSubmissions:So,addFormSubmission:Ao,addFormSubmissions:oi,updateFormSubmission:Io,updateFormSubmissions:To,deleteFormSubmission:Po,deleteFormSubmissions:hi}=li.actions,Oo=t=>t.formSubmissionReducer.instances,mi=l.createSelector([Oo],t=>Object.values(t)),Fo=t=>s=>s.formSubmissionReducer.instances[t],bo=y(l.createSelector([mi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),_o=y(l.createSelector([mi,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s))),go=li.reducer,me=O(t=>t.uuid),Mo={instances:{}},pi=l.createSlice({name:"geoImages",initialState:Mo,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Mo)),reducers:{initializeGeoImages:me.initialize,setGeoImage:me.setOne,setGeoImages:me.setMany,addGeoImage:me.addOne,addGeoImages:me.addMany,updateGeoImage:me.updateOne,updateGeoImages:me.updateMany,deleteGeoImage:me.deleteOne,deleteGeoImages:me.deleteMany}}),{initializeGeoImages:Ro,setGeoImage:wo,setGeoImages:vo,addGeoImage:Eo,addGeoImages:Bo,updateGeoImage:Vo,updateGeoImages:zo,deleteGeoImage:Do,deleteGeoImages:jo}=pi.actions,qo=t=>t.geoImageReducer.instances,yi=l.createSelector([qo],t=>Object.values(t)),Co=t=>s=>s.geoImageReducer.instances[t],$o=y(l.createSelector([yi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),A_=y(l.createSelector([yi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),Uo=pi.reducer,pe=O(t=>t.uuid),Lo={instances:{}},fi=l.createSlice({name:"issueAssociations",initialState:Lo,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Lo)),reducers:{initializeIssueAssociations:pe.initialize,addIssueAssociation:pe.addOne,addIssueAssociations:pe.addMany,setIssueAssociation:pe.setOne,setIssueAssociations:pe.setMany,updateIssueAssociation:pe.updateOne,updateIssueAssociations:pe.updateMany,deleteIssueAssociation:pe.deleteOne,deleteIssueAssociations:pe.deleteMany}}),{initializeIssueAssociations:ko,setIssueAssociations:No,setIssueAssociation:Go,updateIssueAssociation:Ho,updateIssueAssociations:Wo,addIssueAssociation:Ko,addIssueAssociations:ft,deleteIssueAssociation:Yo,deleteIssueAssociations:St}=fi.actions,Zo=t=>t.issueAssociationReducer.instances,At=l.createSelector([Zo],t=>Object.values(t)),Jo=t=>s=>s.issueAssociationReducer.instances[t],Xo=y(l.createSelector([At,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Qo=y(l.createSelector([At,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({issue:n})=>e.has(n)))})),xo=y(l.createSelector([At,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>e===s)))),eh=y(l.createSelector([At,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>e===s)))),th=y(l.createSelector([At,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({asset:n})=>e.has(n)))})),sh=fi.reducer,ye=O(t=>t.uuid),ih={instances:{}},Si=l.createSlice({name:"issueAttachments",initialState:ih,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ih)),reducers:{initializeIssueAttachments:ye.initialize,addIssueAttachment:ye.addOne,addIssueAttachments:ye.addMany,setIssueAttachment:ye.setOne,setIssueAttachments:ye.setMany,updateIssueAttachment:ye.updateOne,updateIssueAttachments:ye.updateMany,deleteIssueAttachment:ye.deleteOne,deleteIssueAttachments:ye.deleteMany}}),{initializeIssueAttachments:nh,addIssueAttachment:ch,addIssueAttachments:Ai,setIssueAttachment:ah,setIssueAttachments:rh,updateIssueAttachment:dh,updateIssueAttachments:uh,deleteIssueAttachment:lh,deleteIssueAttachments:Ii}=Si.actions,oh=t=>t.issueAttachmentReducer.instances,Ti=l.createSelector([oh],t=>Object.values(t)),hh=y(l.createSelector([Ti,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>s===e)))),mh=t=>s=>s.issueAttachmentReducer.instances[t],ph=y(l.createSelector([Ti,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),yh=Si.reducer,fe=O(t=>t.uuid),fh={instances:{}},Pi=l.createSlice({name:"issueCommentAttachments",initialState:fh,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,fh)),reducers:{initializeIssueCommentAttachments:fe.initialize,addIssueCommentAttachment:fe.addOne,addIssueCommentAttachments:fe.addMany,setIssueCommentAttachment:fe.setOne,setIssueCommentAttachments:fe.setMany,updateIssueCommentAttachment:fe.updateOne,updateIssueCommentAttachments:fe.updateMany,deleteIssueCommentAttachment:fe.deleteOne,deleteIssueCommentAttachments:fe.deleteMany}}),{initializeIssueCommentAttachments:Sh,addIssueCommentAttachment:Ah,addIssueCommentAttachments:Ih,setIssueCommentAttachment:Th,setIssueCommentAttachments:Ph,updateIssueCommentAttachment:Oh,updateIssueCommentAttachments:Fh,deleteIssueCommentAttachment:bh,deleteIssueCommentAttachments:_h}=Pi.actions,gh=t=>t.issueCommentAttachmentReducer.instances,Oi=l.createSelector([gh],t=>Object.values(t)),Mh=t=>s=>s.issueCommentAttachmentReducer.instances[t],Rh=y(l.createSelector([Oi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),I_=y(l.createSelector([Oi,(t,s)=>s],(t,s)=>S(t.filter(({issue_comment:e})=>s===e)))),wh=Pi.reducer,Se=O(t=>t.uuid),vh={instances:{}},Fi=l.createSlice({name:"issueComments",initialState:vh,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,vh)),reducers:{initializeIssueComments:Se.initialize,addIssueComment:Se.addOne,addIssueComments:Se.addMany,setIssueComment:Se.setOne,setIssueComments:Se.setMany,updateIssueComment:Se.updateOne,updateIssueComments:Se.updateMany,deleteIssueComment:Se.deleteOne,deleteIssueComments:Se.deleteMany}}),{initializeIssueComments:Eh,addIssueComment:Bh,addIssueComments:Vh,setIssueComment:zh,setIssueComments:Dh,updateIssueComment:jh,updateIssueComments:qh,deleteIssueComment:Ch,deleteIssueComments:$h}=Fi.actions,bi=t=>t.issueCommentReducer.instances,Uh=t=>s=>s.issueCommentReducer.instances[t],Lh=y(l.createSelector([bi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),T_=y(l.createSelector([bi,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.issue===s)))),kh=Fi.reducer,Ae=O(t=>t.uuid),Nh={instances:{}},_i=l.createSlice({name:"issues",initialState:Nh,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Nh)),reducers:{initializeIssues:Ae.initialize,addIssue:Ae.addOne,addIssues:Ae.addMany,setIssue:Ae.setOne,setIssues:Ae.setMany,updateIssue:Ae.updateOne,updateIssues:Ae.updateMany,deleteIssue:Ae.deleteOne,deleteIssues:Ae.deleteMany}}),{initializeIssues:Gh,addIssue:Hh,addIssues:gi,setIssue:Wh,setIssues:Kh,updateIssue:Yh,updateIssues:Zh,deleteIssue:Jh,deleteIssues:Mi}=_i.actions,Xh=t=>t.issueReducer.instances,Yt=l.createSelector([Xh],t=>Object.values(t)),Qh=t=>s=>s.issueReducer.instances[t],xh=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),P_=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),em=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),tm=_i.reducer,Ie=O(t=>t.uuid),sm={instances:{}},Ri=l.createSlice({name:"issueTypeAttachments",initialState:sm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,sm)),reducers:{initializeIssueTypeAttachments:Ie.initialize,addIssueTypeAttachment:Ie.addOne,addIssueTypeAttachments:Ie.addMany,setIssueTypeAttachment:Ie.setOne,setIssueTypeAttachments:Ie.setMany,updateIssueTypeAttachment:Ie.updateOne,updateIssueTypeAttachments:Ie.updateMany,deleteIssueTypeAttachment:Ie.deleteOne,deleteIssueTypeAttachments:Ie.deleteMany}}),{initializeIssueTypeAttachments:im,addIssueTypeAttachment:nm,addIssueTypeAttachments:cm,setIssueTypeAttachment:am,setIssueTypeAttachments:rm,updateIssueTypeAttachment:dm,updateIssueTypeAttachments:um,deleteIssueTypeAttachment:lm,deleteIssueTypeAttachments:om}=Ri.actions,hm=t=>t.issueTypeAttachmentReducer.instances,wi=l.createSelector([hm],t=>Object.values(t)),mm=t=>s=>s.issueTypeAttachmentReducer.instances[t],pm=y(l.createSelector([wi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),O_=y(l.createSelector([wi,(t,s)=>s],(t,s)=>S(t.filter(({issue_type:e})=>s===e)))),ym=Ri.reducer,Te=O(t=>t.uuid),fm={instances:{}},vi=l.createSlice({name:"issueTypeFieldsAttachments",initialState:fm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,fm)),reducers:{initializeIssueTypeFieldsAttachments:Te.initialize,addIssueTypeFieldsAttachment:Te.addOne,addIssueTypeFieldsAttachments:Te.addMany,setIssueTypeFieldsAttachment:Te.setOne,setIssueTypeFieldsAttachments:Te.setMany,updateIssueTypeFieldsAttachment:Te.updateOne,updateIssueTypeFieldsAttachments:Te.updateMany,deleteIssueTypeFieldsAttachment:Te.deleteOne,deleteIssueTypeFieldsAttachments:Te.deleteMany}}),{initializeIssueTypeFieldsAttachments:Sm,addIssueTypeFieldsAttachment:Am,addIssueTypeFieldsAttachments:Im,setIssueTypeFieldsAttachment:Tm,setIssueTypeFieldsAttachments:Pm,updateIssueTypeFieldsAttachment:Om,updateIssueTypeFieldsAttachments:Fm,deleteIssueTypeFieldsAttachment:bm,deleteIssueTypeFieldsAttachments:_m}=vi.actions,gm=t=>t.issueTypeFieldsAttachmentReducer.instances,Ei=l.createSelector([gm],t=>Object.values(t)),F_=y(l.createSelector([Ei,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Mm=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],Rm=y(l.createSelector([Ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),wm=vi.reducer,Pe=O(t=>t.uuid),vm={instances:{}},Bi=l.createSlice({name:"issueTypeFieldValues",initialState:vm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,vm)),reducers:{initializeIssueTypeFieldValues:Pe.initialize,addIssueTypeFieldValues:Pe.addOne,addIssueTypeFieldValuesMany:Pe.addMany,setIssueTypeFieldValues:Pe.setOne,setIssueTypeFieldValuesMany:Pe.setMany,updateIssueTypeFieldValues:Pe.updateOne,updateIssueTypeFieldValuesMany:Pe.updateMany,deleteIssueTypeFieldValues:Pe.deleteOne,deleteIssueTypeFieldValuesMany:Pe.deleteMany}}),{initializeIssueTypeFieldValues:Em,addIssueTypeFieldValues:Bm,addIssueTypeFieldValuesMany:Vm,setIssueTypeFieldValues:zm,setIssueTypeFieldValuesMany:Dm,updateIssueTypeFieldValues:jm,updateIssueTypeFieldValuesMany:qm,deleteIssueTypeFieldValues:Cm,deleteIssueTypeFieldValuesMany:$m}=Bi.actions,Um=t=>t.issueTypeFieldValuesReducer.instances,Zt=l.createSelector([Um],t=>Object.values(t)),b_=y(l.createSelector([Zt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),Lm=t=>s=>s.issueTypeFieldValuesReducer.instances[t],km=y(l.createSelector([Zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Nm=Bi.reducer,Oe=O(t=>t.uuid),Gm={instances:{}},Vi=l.createSlice({name:"issueTypeFields",initialState:Gm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Gm)),reducers:{initializeIssueTypeFields:Oe.initialize,addIssueTypeFields:Oe.addOne,addIssueTypeFieldsMany:Oe.addMany,setIssueTypeFields:Oe.setOne,setIssueTypeFieldsMany:Oe.setMany,updateIssueTypeFields:Oe.updateOne,updateIssueTypeFieldsMany:Oe.updateMany,deleteIssueTypeFields:Oe.deleteOne,deleteIssueTypeFieldsMany:Oe.deleteMany}}),{initializeIssueTypeFields:Hm,addIssueTypeFields:Wm,addIssueTypeFieldsMany:Km,setIssueTypeFields:Ym,setIssueTypeFieldsMany:Zm,updateIssueTypeFields:Jm,updateIssueTypeFieldsMany:Xm,deleteIssueTypeFields:Qm,deleteIssueTypeFieldsMany:xm}=Vi.actions,ep=t=>t.issueTypeFieldsReducer.instances,Rt=l.createSelector([ep],t=>Object.values(t)),__=y(l.createSelector([Rt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),g_=y(l.createSelector([Rt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),M_=y(l.createSelector([Rt,Zt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(c=>c.issue_type===e).map(c=>c.uuid));return S(s.filter(c=>n.has(c.fields_revision)))})),tp=t=>s=>s.issueTypeFieldsReducer.instances[t],sp=y(l.createSelector([Rt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ip=Vi.reducer,Fe=O(t=>t.uuid),np={instances:{}},zi=l.createSlice({name:"issueTypeFieldValuesAttachments",initialState:np,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,np)),reducers:{initializeIssueTypeFieldValuesAttachments:Fe.initialize,addIssueTypeFieldValuesAttachment:Fe.addOne,addIssueTypeFieldValuesAttachments:Fe.addMany,setIssueTypeFieldValuesAttachment:Fe.setOne,setIssueTypeFieldValuesAttachments:Fe.setMany,updateIssueTypeFieldValuesAttachment:Fe.updateOne,updateIssueTypeFieldValuesAttachments:Fe.updateMany,deleteIssueTypeFieldValuesAttachment:Fe.deleteOne,deleteIssueTypeFieldValuesAttachments:Fe.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:cp,addIssueTypeFieldValuesAttachment:ap,addIssueTypeFieldValuesAttachments:Di,setIssueTypeFieldValuesAttachment:rp,setIssueTypeFieldValuesAttachments:dp,updateIssueTypeFieldValuesAttachment:up,updateIssueTypeFieldValuesAttachments:lp,deleteIssueTypeFieldValuesAttachment:op,deleteIssueTypeFieldValuesAttachments:ji}=zi.actions,hp=t=>t.issueTypeFieldValuesAttachmentReducer.instances,qi=l.createSelector([hp],t=>Object.values(t)),mp=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],pp=y(l.createSelector([qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),yp=y(l.createSelector([qi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),fp=zi.reducer,be=O(t=>t.uuid),Sp={instances:{}},Ci=l.createSlice({name:"issueTypeIdentifiers",initialState:Sp,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Sp)),reducers:{initializeIssueTypeIdentifiers:be.initialize,addIssueTypeIdentifier:be.addOne,addIssueTypeIdentifiers:be.addMany,setIssueTypeIdentifier:be.setOne,setIssueTypeIdentifiers:be.setMany,updateIssueTypeIdentifier:be.updateOne,updateIssueTypeIdentifiers:be.updateMany,deleteIssueTypeIdentifier:be.deleteOne,deleteIssueTypeIdentifiers:be.deleteMany}}),{initializeIssueTypeIdentifiers:Ap,addIssueTypeIdentifier:Ip,addIssueTypeIdentifiers:Tp,setIssueTypeIdentifier:Pp,setIssueTypeIdentifiers:Op,updateIssueTypeIdentifier:Fp,updateIssueTypeIdentifiers:bp,deleteIssueTypeIdentifier:_p,deleteIssueTypeIdentifiers:gp}=Ci.actions,Mp=t=>t.issueTypeIdentifierReducer.instances,$i=l.createSelector([Mp],t=>Object.values(t)),Rp=t=>s=>s.issueTypeIdentifierReducer.instances[t],wp=y(l.createSelector([$i,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),R_=y(l.createSelector([$i,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),vp=Ci.reducer,_e=O(t=>t.uuid),Ep={instances:{}},Ui=l.createSlice({name:"issueTypeIdentifierValues",initialState:Ep,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Ep)),reducers:{initializeIssueTypeIdentifierValues:_e.initialize,addIssueTypeIdentifierValue:_e.addOne,addIssueTypeIdentifierValues:_e.addMany,setIssueTypeIdentifierValue:_e.setOne,setIssueTypeIdentifierValues:_e.setMany,updateIssueTypeIdentifierValue:_e.updateOne,updateIssueTypeIdentifierValues:_e.updateMany,deleteIssueTypeIdentifierValue:_e.deleteOne,deleteIssueTypeIdentifierValues:_e.deleteMany}}),{initializeIssueTypeIdentifierValues:Bp,addIssueTypeIdentifierValue:Vp,addIssueTypeIdentifierValues:zp,setIssueTypeIdentifierValue:Dp,setIssueTypeIdentifierValues:jp,updateIssueTypeIdentifierValue:qp,updateIssueTypeIdentifierValues:Cp,deleteIssueTypeIdentifierValue:$p,deleteIssueTypeIdentifierValues:Up}=Ui.actions,Lp=t=>t.issueTypeIdentifierValueReducer.instances,Jt=l.createSelector([Lp],t=>Object.values(t)),kp=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],Np=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),w_=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),v_=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type_identifier===s)))),Gp=Ui.reducer,ge=O(t=>t.uuid),Hp={instances:{}},Li=l.createSlice({name:"issueTypePriorities",initialState:Hp,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Hp)),reducers:{initializeIssueTypePriorities:ge.initialize,addIssueTypePriority:ge.addOne,addIssueTypePriorities:ge.addMany,setIssueTypePriority:ge.setOne,setIssueTypePriorities:ge.setMany,updateIssueTypePriority:ge.updateOne,updateIssueTypePriorities:ge.updateMany,deleteIssueTypePriority:ge.deleteOne,deleteIssueTypePriorities:ge.deleteMany}}),{initializeIssueTypePriorities:Wp,addIssueTypePriority:Kp,addIssueTypePriorities:Yp,setIssueTypePriority:Zp,setIssueTypePriorities:Jp,updateIssueTypePriority:Xp,updateIssueTypePriorities:Qp,deleteIssueTypePriority:xp,deleteIssueTypePriorities:ey}=Li.actions,ty=t=>t.issueTypePriorityReducer.instances,ki=l.createSelector([ty],t=>S(Object.values(t).toSorted(Dc))),Ni=t=>s=>s.issueTypePriorityReducer.instances[t],sy=y(l.createSelector([ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),E_=y(l.createSelector([ki,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),iy=Li.reducer,Me=O(t=>t.uuid),ny={instances:{}},Gi=l.createSlice({name:"issueTypes",initialState:ny,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,ny)),reducers:{initializeIssueTypes:Me.initialize,addIssueType:Me.addOne,addIssueTypes:Me.addMany,setIssueType:Me.setOne,setIssueTypes:Me.setMany,updateIssueType:Me.updateOne,updateIssueTypes:Me.updateMany,deleteIssueType:Me.deleteOne,deleteIssueTypes:Me.deleteMany}}),{initializeIssueTypes:cy,addIssueType:ay,addIssueTypes:ry,setIssueType:dy,setIssueTypes:uy,updateIssueType:ly,updateIssueTypes:oy,deleteIssueType:hy,deleteIssueTypes:my}=Gi.actions,py=t=>t.issueTypeReducer.instances,Hi=l.createSelector(py,t=>Object.values(t)),yy=t=>s=>s.issueTypeReducer.instances[t],fy=y(l.createSelector([Hi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),B_=y(l.createSelector([Hi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Sy=Gi.reducer,Re=O(t=>t.uuid),Ay={instances:{}},Wi=l.createSlice({name:"issueTypeStatuses",initialState:Ay,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ay)),reducers:{initializeIssueTypeStatuses:Re.initialize,addIssueTypeStatus:Re.addOne,addIssueTypeStatuses:Re.addMany,setIssueTypeStatus:Re.setOne,setIssueTypeStatuses:Re.setMany,updateIssueTypeStatus:Re.updateOne,updateIssueTypeStatuses:Re.updateMany,deleteIssueTypeStatus:Re.deleteOne,deleteIssueTypeStatuses:Re.deleteMany}}),{initializeIssueTypeStatuses:Iy,addIssueTypeStatus:Ty,addIssueTypeStatuses:Py,setIssueTypeStatus:Oy,setIssueTypeStatuses:Fy,updateIssueTypeStatus:by,updateIssueTypeStatuses:_y,deleteIssueTypeStatus:gy,deleteIssueTypeStatuses:My}=Wi.actions,Ry=t=>t.issueTypeStatusReducer.instances,Ki=l.createSelector([Ry],t=>S(Object.values(t).toSorted(zc))),Yi=t=>s=>s.issueTypeStatusReducer.instances[t],wy=y(l.createSelector([Ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),V_=y(l.createSelector([Ki,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),vy=Wi.reducer,we=O(t=>t.uuid),Ey={instances:{}},Zi=l.createSlice({name:"issueUpdates",initialState:Ey,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Ey)),reducers:{initializeIssueUpdates:we.initialize,addIssueUpdate:we.addOne,addIssueUpdates:we.addMany,setIssueUpdate:we.setOne,setIssueUpdates:we.setMany,updateIssueUpdate:we.updateOne,updateIssueUpdates:we.updateMany,deleteIssueUpdate:we.deleteOne,deleteIssueUpdates:we.deleteMany}}),{initializeIssueUpdates:By,addIssueUpdate:Ji,addIssueUpdates:Xi,setIssueUpdate:Vy,setIssueUpdates:zy,updateIssueUpdate:Dy,updateIssueUpdates:jy,deleteIssueUpdate:Qi,deleteIssueUpdates:xi}=Zi.actions,en=t=>t.issueUpdateReducer.instances,tn=l.createSelector([en],t=>Object.values(t)),qy=y(l.createSelector([en,(t,s)=>s],(t,s)=>t[s])),Cy=y(l.createSelector([tn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$y=y(l.createSelector([tn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),Uy=Zi.reducer,ve=O(t=>t.id),Ly={instances:{},currentUser:null},sn=l.createSlice({name:"users",initialState:Ly,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Ly)).addCase(F,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:ve.initialize,setUsers:ve.setMany,setUser:ve.setOne,addUsers:ve.addMany,addUser:ve.addOne,updateUsers:ve.updateMany,updateUser:ve.updateOne,deleteUser:ve.deleteOne,deleteUsers:ve.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload},setCurrentUserProfile:(t,s)=>{if(!t.currentUser)return;t.currentUser.profile=s.payload;const e=t.instances[t.currentUser.id];if(!e)throw new Error("Unable to find current user in users slice");e.profile=s.payload}}}),{initializeUsers:ky,setUsers:Ny,setUser:Gy,addUsers:Hy,addUser:nn,updateUsers:Wy,updateUser:Ky,deleteUser:cn,deleteUsers:Yy,setCurrentUser:z_,setCurrentUserProfile:D_}=sn.actions,Zy=sn.reducer,Jy=t=>t.userReducer.currentUser,an=t=>t.userReducer.instances,Xt=l.createSelector([an],t=>Object.values(t)),Qt=t=>s=>s.userReducer.instances[t],Xy=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({id:n})=>e.has(n)))})),Ee=O(t=>t.uuid),Qy={instances:{}},rn=l.createSlice({name:"organizationAccess",initialState:Qy,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Qy)),reducers:{initializeOrganizationAccesses:Ee.initialize,addOrganizationAccess:Ee.addOne,addOrganizationAccesses:Ee.addMany,setOrganizationAccess:Ee.setOne,setOrganizationAccesses:Ee.setMany,updateOrganizationAccess:Ee.updateOne,updateOrganizationAccesses:Ee.updateMany,deleteOrganizationAccess:Ee.deleteOne,deleteOrganizationAccesses:Ee.deleteMany}}),{initializeOrganizationAccesses:xy,addOrganizationAccess:ef,addOrganizationAccesses:tf,setOrganizationAccess:sf,setOrganizationAccesses:nf,updateOrganizationAccess:cf,updateOrganizationAccesses:af,deleteOrganizationAccess:rf,deleteOrganizationAccesses:df}=rn.actions,uf=rn.reducer,xt=t=>t.organizationAccessReducer.instances,lf=t=>s=>s.organizationAccessReducer.instances[t],of=y(l.createSelector([xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),j_=l.createSelector([Jy,xt],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.id))??null),hf=l.createSelector([xt],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return ls(s)}),q_=y(l.createSelector([an,hf,(t,s)=>s],(t,s,e)=>S(Object.values(t).filter(n=>{const c=s[n.id];return!!c&&c.organization===e})))),Be=O(t=>t.uuid),mf={instances:{}},dn=l.createSlice({name:"organizations",initialState:mf,extraReducers:t=>t.addMatcher(l.isAnyOf(T),s=>Object.assign(s,mf)),reducers:{initializeOrganizations:Be.initialize,setOrganizations:Be.setMany,setOrganization:Be.setOne,addOrganizations:Be.addMany,addOrganization:Be.addOne,updateOrganizations:Be.updateMany,updateOrganization:Be.updateOne,deleteOrganization:Be.deleteOne,deleteOrganizations:Be.deleteMany}}),{initializeOrganizations:pf,setOrganizations:yf,setOrganization:ff,addOrganizations:Sf,addOrganization:Af,updateOrganizations:If,updateOrganization:Tf,deleteOrganization:Pf,deleteOrganizations:Of}=dn.actions,Ff=t=>t.organizationReducer.instances,bf=l.createSelector([Ff],t=>Object.values(t)),_f=t=>s=>s.organizationReducer.instances[t],gf=y(l.createSelector([bf,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Mf=dn.reducer,Rf=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:rt.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},wf={deletedRequests:[],latestRetryTime:0},un=l.createSlice({name:"outbox",initialState:wf,extraReducers:t=>t.addCase(T,s=>Object.assign(s,wf)),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 Rf(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}}}),C_=t=>t.outboxReducer.deletedRequests,$_=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:vf,markForDeletion:U_,markAsDeleted:Ef,_setLatestRetryTime:Bf}=un.actions,Vf=un.reducer,Ve=O(t=>t.uuid),zf={instances:{}},ln=l.createSlice({name:"projectAccess",initialState:zf,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,zf)),reducers:{initializeProjectAccesses:Ve.initialize,addProjectAccess:Ve.addOne,addProjectAccesses:Ve.addMany,setProjectAccess:Ve.setOne,setProjectAccesses:Ve.setMany,updateProjectAccess:Ve.updateOne,updateProjectAccesses:Ve.updateMany,deleteProjectAccess:Ve.deleteOne,deleteProjectAccesses:Ve.deleteMany}}),{initializeProjectAccesses:Df,addProjectAccess:jf,addProjectAccesses:qf,setProjectAccess:Cf,setProjectAccesses:$f,updateProjectAccess:Uf,updateProjectAccesses:Lf,deleteProjectAccess:kf,deleteProjectAccesses:Nf}=ln.actions,Gf=ln.reducer,on=t=>t.projectAccessReducer.instances,wt=l.createSelector(on,t=>Object.values(t)),Hf=t=>s=>s.projectAccessReducer.instances[t],Wf=y(l.createSelector([wt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),L_=y(l.createSelector([on,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.project===s)))),k_=y(l.createSelector([wt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(c=>c.project===s))e[n.user]=n;return e})),N_=y(l.createSelector([Xt,wt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.project===e).map(c=>c.user));return S(t.filter(c=>n.has(c.id)))})),ze=O(t=>t.uuid),Kf={instances:{}},hn=l.createSlice({name:"projectAttachments",initialState:Kf,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Kf)),reducers:{initializeProjectAttachments:ze.initialize,addProjectAttachment:ze.addOne,addProjectAttachments:ze.addMany,setProjectAttachment:ze.setOne,setProjectAttachments:ze.setMany,updateProjectAttachment:ze.updateOne,updateProjectAttachments:ze.updateMany,deleteProjectAttachment:ze.deleteOne,deleteProjectAttachments:ze.deleteMany}}),{initializeProjectAttachments:Yf,addProjectAttachment:Zf,addProjectAttachments:Jf,setProjectAttachment:Xf,setProjectAttachments:Qf,updateProjectAttachment:xf,updateProjectAttachments:eS,deleteProjectAttachment:tS,deleteProjectAttachments:sS}=hn.actions,iS=t=>t.projectAttachmentReducer.instances,mn=l.createSelector([iS],t=>Object.values(t)),nS=t=>s=>s.projectAttachmentReducer.instances[t],cS=y(l.createSelector([mn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),G_=y(l.createSelector([mn,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>s===e)))),aS=hn.reducer,De=O(t=>t.uuid),rS={instances:{}},pn=l.createSlice({name:"projectComments",initialState:rS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,rS)),reducers:{initializeProjectComments:De.initialize,addProjectComment:De.addOne,addProjectComments:De.addMany,setProjectComment:De.setOne,setProjectComments:De.setMany,updateProjectComment:De.updateOne,updateProjectComments:De.updateMany,deleteProjectComment:De.deleteOne,deleteProjectComments:De.deleteMany}}),{initializeProjectComments:dS,addProjectComment:uS,addProjectComments:lS,setProjectComment:oS,setProjectComments:hS,updateProjectComment:mS,updateProjectComments:pS,deleteProjectComment:yS,deleteProjectComments:fS}=pn.actions,SS=t=>t.projectCommentReducer.instances,es=l.createSelector([SS],t=>S(Object.values(t).toSorted(yt))),AS=t=>s=>s.projectCommentReducer.instances[t],IS=y(l.createSelector([es,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),H_=y(l.createSelector([es,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),W_=y(l.createSelector([es,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.project)))})),TS=pn.reducer,je=O(t=>t.uuid),PS={instances:{}},yn=l.createSlice({name:"projectFiles",initialState:PS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,PS)),reducers:{initializeProjectFiles:je.initialize,setProjectFile:je.setOne,setProjectFiles:je.setMany,addProjectFile:je.addOne,addProjectFiles:je.addMany,updateProjectFile:je.updateOne,updateProjectFiles:je.updateMany,deleteProjectFile:je.deleteOne,deleteProjectFiles:je.deleteMany}}),{initializeProjectFiles:OS,setProjectFile:FS,setProjectFiles:bS,addProjectFile:_S,addProjectFiles:gS,updateProjectFile:MS,updateProjectFiles:RS,deleteProjectFile:wS,deleteProjectFiles:vS}=yn.actions,ES=t=>t.projectFileReducer.instances,BS=l.createSelector([ES],t=>S(Object.values(t).toSorted((s,e)=>s.z_index-e.z_index))),VS=t=>s=>s.projectFileReducer.instances[t],zS=y(l.createSelector([BS,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),DS=yn.reducer,qe=O(t=>t.uuid),jS={instances:{}},fn=l.createSlice({name:"projects",initialState:jS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,jS)),reducers:{initializeProjects:qe.initialize,setProjects:qe.setMany,setProject:qe.setOne,addProjects:qe.addMany,addProject:qe.addOne,updateProjects:qe.updateMany,updateProject:qe.updateOne,deleteProject:qe.deleteOne,deleteProjects:qe.deleteMany}}),{initializeProjects:qS,setProjects:CS,setProject:$S,addProjects:US,addProject:LS,updateProjects:kS,updateProject:NS,deleteProject:GS,deleteProjects:HS}=fn.actions,WS=fn.reducer,KS=t=>t.projectReducer.instances,ts=l.createSelector([KS],t=>Object.values(t)),YS=t=>s=>s.projectReducer.instances[t],ZS=y(l.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),K_=y(l.createSelector([ts,wt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.user===e).map(c=>c.project));return S(t.filter(c=>n.has(c.uuid)))})),Y_=y(l.createSelector([ts,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Ce=O(({uuid:t})=>t),JS={instances:{}},Sn=l.createSlice({name:"procedureInitiatives",initialState:JS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,JS)),reducers:{initializeProcedureInitiatives:Ce.initialize,addProcedureInitiative:Ce.addOne,addProcedureInitiatives:Ce.addMany,setProcedureInitiative:Ce.setOne,setProcedureInitiatives:Ce.setMany,updateProcedureInitiative:Ce.updateOne,updateProcedureInitiatives:Ce.updateMany,deleteProcedureInitiative:Ce.deleteOne,deleteProcedureInitiatives:Ce.deleteMany}}),{initializeProcedureInitiatives:XS,addProcedureInitiative:QS,addProcedureInitiatives:xS,setProcedureInitiative:eA,setProcedureInitiatives:tA,updateProcedureInitiative:sA,updateProcedureInitiatives:iA,deleteProcedureInitiative:nA,deleteProcedureInitiatives:cA}=Sn.actions,aA=Sn.reducer,rA=t=>t.procedureInitiativeReducer.instances,ss=l.createSelector([rA],t=>Object.values(t)),dA=t=>s=>s.procedureInitiativeReducer.instances[t],uA=y(l.createSelector([ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Z_=y(l.createSelector([ss,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),J_=y(l.createSelector([ss,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),$e=O(({uuid:t})=>t),lA={instances:{}},An=l.createSlice({name:"procedures",initialState:lA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,lA)),reducers:{initializeProcedures:$e.initialize,addProcedure:$e.addOne,addProcedures:$e.addMany,setProcedure:$e.setOne,setProcedures:$e.setMany,updateProcedure:$e.updateOne,updateProcedures:$e.updateMany,deleteProcedure:$e.deleteOne,deleteProcedures:$e.deleteMany}}),{initializeProcedures:oA,addProcedure:hA,addProcedures:It,setProcedure:mA,setProcedures:pA,updateProcedure:yA,updateProcedures:fA,deleteProcedure:SA,deleteProcedures:Tt}=An.actions,AA=An.reducer,IA=t=>t.procedureReducer.instances,dt=l.createSelector([IA],t=>Object.values(t)),TA=t=>s=>s.procedureReducer.instances[t],PA=y(l.createSelector([dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),X_=y(l.createSelector([dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),OA=y(l.createSelector([dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),FA=y(l.createSelector([dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),bA=y(l.createSelector([dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({asset:n})=>e.has(n)))})),_A=y(l.createSelector([dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_initiative===s)))),Ue=O(t=>t.uuid),gA={instances:{}},In=l.createSlice({name:"procedureStepAssignees",initialState:gA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,gA)),reducers:{initializeProcedureStepAssignees:Ue.initialize,addProcedureStepAssignee:Ue.addOne,addProcedureStepAssignees:Ue.addMany,setProcedureStepAssignee:Ue.setOne,setProcedureStepAssignees:Ue.setMany,updateProcedureStepAssignee:Ue.updateOne,updateProcedureStepAssignees:Ue.updateMany,deleteProcedureStepAssignee:Ue.deleteOne,deleteProcedureStepAssignees:Ue.deleteMany}}),{initializeProcedureStepAssignees:MA,addProcedureStepAssignee:RA,addProcedureStepAssignees:wA,setProcedureStepAssignee:vA,setProcedureStepAssignees:EA,updateProcedureStepAssignee:BA,updateProcedureStepAssignees:VA,deleteProcedureStepAssignee:zA,deleteProcedureStepAssignees:DA}=In.actions,jA=t=>t.procedureStepAssigneeReducer.instances,vt=l.createSelector([jA],t=>Object.values(t)),qA=t=>s=>s.procedureStepAssigneeReducer.instances[t],CA=y(l.createSelector([vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Q_=y(l.createSelector([vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),x_=y(l.createSelector([vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),eg=y(l.createSelector([vt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),$A=In.reducer,Le=O(t=>t.uuid),UA={instances:{}},Tn=l.createSlice({name:"procedureStepComments",initialState:UA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,UA)),reducers:{initializeProcedureStepComments:Le.initialize,addProcedureStepComment:Le.addOne,addProcedureStepComments:Le.addMany,setProcedureStepComment:Le.setOne,setProcedureStepComments:Le.setMany,updateProcedureStepComment:Le.updateOne,updateProcedureStepComments:Le.updateMany,deleteProcedureStepComment:Le.deleteOne,deleteProcedureStepComments:Le.deleteMany}}),{initializeProcedureStepComments:LA,addProcedureStepComment:kA,addProcedureStepComments:NA,setProcedureStepComment:GA,setProcedureStepComments:HA,updateProcedureStepComment:WA,updateProcedureStepComments:KA,deleteProcedureStepComment:YA,deleteProcedureStepComments:ZA}=Tn.actions,JA=t=>t.procedureStepCommentReducer.instances,Et=l.createSelector([JA],t=>Object.values(t)),XA=t=>s=>s.procedureStepCommentReducer.instances[t],QA=y(l.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),tg=y(l.createSelector([Et,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),sg=y(l.createSelector([Et,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),ig=y(l.createSelector([Et,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),xA=Tn.reducer,ke=O(t=>t.uuid),eI={instances:{}},Pn=l.createSlice({name:"procedureStepDefaultAssignees",initialState:eI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,eI)),reducers:{initializeProcedureStepDefaultAssignees:ke.initialize,addProcedureStepDefaultAssignee:ke.addOne,addProcedureStepDefaultAssignees:ke.addMany,setProcedureStepDefaultAssignee:ke.setOne,setProcedureStepDefaultAssignees:ke.setMany,updateProcedureStepDefaultAssignee:ke.updateOne,updateProcedureStepDefaultAssignees:ke.updateMany,deleteProcedureStepDefaultAssignee:ke.deleteOne,deleteProcedureStepDefaultAssignees:ke.deleteMany}}),{initializeProcedureStepDefaultAssignees:tI,addProcedureStepDefaultAssignee:sI,addProcedureStepDefaultAssignees:iI,setProcedureStepDefaultAssignee:nI,setProcedureStepDefaultAssignees:cI,updateProcedureStepDefaultAssignee:aI,updateProcedureStepDefaultAssignees:rI,deleteProcedureStepDefaultAssignee:dI,deleteProcedureStepDefaultAssignees:uI}=Pn.actions,lI=t=>t.procedureStepDefaultAssigneeReducer.instances,On=l.createSelector([lI],t=>Object.values(t)),oI=t=>s=>s.procedureStepDefaultAssigneeReducer.instances[t],hI=y(l.createSelector([On,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ng=y(l.createSelector([On,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),mI=Pn.reducer,Ne=O(t=>t.uuid),pI={instances:{}},Fn=l.createSlice({name:"procedureStepDefaultReviewers",initialState:pI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,pI)),reducers:{initializeProcedureStepDefaultReviewers:Ne.initialize,addProcedureStepDefaultReviewer:Ne.addOne,addProcedureStepDefaultReviewers:Ne.addMany,setProcedureStepDefaultReviewer:Ne.setOne,setProcedureStepDefaultReviewers:Ne.setMany,updateProcedureStepDefaultReviewer:Ne.updateOne,updateProcedureStepDefaultReviewers:Ne.updateMany,deleteProcedureStepDefaultReviewer:Ne.deleteOne,deleteProcedureStepDefaultReviewers:Ne.deleteMany}}),{initializeProcedureStepDefaultReviewers:yI,addProcedureStepDefaultReviewer:fI,addProcedureStepDefaultReviewers:SI,setProcedureStepDefaultReviewer:AI,setProcedureStepDefaultReviewers:II,updateProcedureStepDefaultReviewer:TI,updateProcedureStepDefaultReviewers:PI,deleteProcedureStepDefaultReviewer:OI,deleteProcedureStepDefaultReviewers:FI}=Fn.actions,bI=t=>t.procedureStepDefaultReviewerReducer.instances,bn=l.createSelector([bI],t=>Object.values(t)),_I=t=>s=>s.procedureStepDefaultReviewerReducer.instances[t],gI=y(l.createSelector([bn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),cg=y(l.createSelector([bn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),MI=Fn.reducer,Ge=O(t=>t.uuid),RI={instances:{}},_n=l.createSlice({name:"procedureStepEvents",initialState:RI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,RI)),reducers:{initializeProcedureStepEvents:Ge.initialize,addProcedureStepEvent:Ge.addOne,addProcedureStepEvents:Ge.addMany,setProcedureStepEvent:Ge.setOne,setProcedureStepEvents:Ge.setMany,updateProcedureStepEvent:Ge.updateOne,updateProcedureStepEvents:Ge.updateMany,deleteProcedureStepEvent:Ge.deleteOne,deleteProcedureStepEvents:Ge.deleteMany}}),{initializeProcedureStepEvents:wI,addProcedureStepEvent:vI,addProcedureStepEvents:EI,setProcedureStepEvent:BI,setProcedureStepEvents:VI,updateProcedureStepEvent:zI,updateProcedureStepEvents:DI,deleteProcedureStepEvent:jI,deleteProcedureStepEvents:qI}=_n.actions,CI=t=>t.procedureStepEventReducer.instances,Bt=l.createSelector([CI],t=>Object.values(t)),$I=t=>s=>s.procedureStepEventReducer.instances[t],UI=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ag=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),rg=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),dg=y(l.createSelector([Bt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),LI=_n.reducer,He=O(t=>t.uuid),kI={instances:{}},gn=l.createSlice({name:"procedureStepFieldsAttachments",initialState:kI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,kI)),reducers:{initializeProcedureStepFieldsAttachments:He.initialize,addProcedureStepFieldsAttachment:He.addOne,addProcedureStepFieldsAttachments:He.addMany,setProcedureStepFieldsAttachment:He.setOne,setProcedureStepFieldsAttachments:He.setMany,updateProcedureStepFieldsAttachment:He.updateOne,updateProcedureStepFieldsAttachments:He.updateMany,deleteProcedureStepFieldsAttachment:He.deleteOne,deleteProcedureStepFieldsAttachments:He.deleteMany}}),{initializeProcedureStepFieldsAttachments:NI,addProcedureStepFieldsAttachment:GI,addProcedureStepFieldsAttachments:Mn,setProcedureStepFieldsAttachment:HI,setProcedureStepFieldsAttachments:WI,updateProcedureStepFieldsAttachment:KI,updateProcedureStepFieldsAttachments:YI,deleteProcedureStepFieldsAttachment:ZI,deleteProcedureStepFieldsAttachments:Rn}=gn.actions,JI=t=>t.procedureStepFieldsAttachmentReducer.instances,wn=l.createSelector([JI],t=>Object.values(t)),XI=y(l.createSelector([wn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),QI=t=>s=>s.procedureStepFieldsAttachmentReducer.instances[t],xI=y(l.createSelector([wn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),eT=gn.reducer,We=O(t=>t.uuid),tT={instances:{}},vn=l.createSlice({name:"procedureStepFields",initialState:tT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,tT)),reducers:{initializeProcedureStepFields:We.initialize,addProcedureStepFields:We.addOne,addProcedureStepFieldsMany:We.addMany,setProcedureStepFields:We.setOne,setProcedureStepFieldsMany:We.setMany,updateProcedureStepFields:We.updateOne,updateProcedureStepFieldsMany:We.updateMany,deleteProcedureStepFields:We.deleteOne,deleteProcedureStepFieldsMany:We.deleteMany}}),{initializeProcedureStepFields:sT,addProcedureStepFields:iT,addProcedureStepFieldsMany:nT,setProcedureStepFields:cT,setProcedureStepFieldsMany:aT,updateProcedureStepFields:rT,updateProcedureStepFieldsMany:dT,deleteProcedureStepFields:uT,deleteProcedureStepFieldsMany:lT}=vn.actions,En=t=>t.procedureStepFieldsReducer.instances,is=l.createSelector([En],t=>Object.values(t)),ug=y(l.createSelector([is,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),lg=y(l.createSelector([is,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_step===s).toSorted(yt).pop())),og=l.createSelector([En],t=>{const s={};for(const e of Object.values(t)){const n=s[e.procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.procedure_step]=e)}return s}),oT=t=>s=>s.procedureStepFieldsReducer.instances[t],hT=y(l.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),mT=vn.reducer,Ke=O(t=>t.uuid),pT={instances:{}},Bn=l.createSlice({name:"procedureStepFieldValuesAttachments",initialState:pT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,pT)),reducers:{initializeProcedureStepFieldValuesAttachments:Ke.initialize,addProcedureStepFieldValuesAttachment:Ke.addOne,addProcedureStepFieldValuesAttachments:Ke.addMany,setProcedureStepFieldValuesAttachment:Ke.setOne,setProcedureStepFieldValuesAttachments:Ke.setMany,updateProcedureStepFieldValuesAttachment:Ke.updateOne,updateProcedureStepFieldValuesAttachments:Ke.updateMany,deleteProcedureStepFieldValuesAttachment:Ke.deleteOne,deleteProcedureStepFieldValuesAttachments:Ke.deleteMany}}),{initializeProcedureStepFieldValuesAttachments:yT,addProcedureStepFieldValuesAttachment:fT,addProcedureStepFieldValuesAttachments:Vn,setProcedureStepFieldValuesAttachment:ST,setProcedureStepFieldValuesAttachments:AT,updateProcedureStepFieldValuesAttachment:IT,updateProcedureStepFieldValuesAttachments:TT,deleteProcedureStepFieldValuesAttachment:PT,deleteProcedureStepFieldValuesAttachments:zn}=Bn.actions,OT=t=>t.procedureStepFieldValuesAttachmentReducer.instances,Dn=l.createSelector([OT],t=>Object.values(t)),FT=t=>s=>s.procedureStepFieldValuesAttachmentReducer.instances[t],bT=y(l.createSelector([Dn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),_T=y(l.createSelector([Dn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),gT=Bn.reducer,Ye=O(t=>t.uuid),MT={instances:{}},jn=l.createSlice({name:"procedureStepFieldValues",initialState:MT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,MT)),reducers:{initializeProcedureStepFieldValues:Ye.initialize,addProcedureStepFieldValues:Ye.addOne,addProcedureStepFieldValuesMany:Ye.addMany,setProcedureStepFieldValues:Ye.setOne,setProcedureStepFieldValuesMany:Ye.setMany,updateProcedureStepFieldValues:Ye.updateOne,updateProcedureStepFieldValuesMany:Ye.updateMany,deleteProcedureStepFieldValues:Ye.deleteOne,deleteProcedureStepFieldValuesMany:Ye.deleteMany}}),{initializeProcedureStepFieldValues:RT,addProcedureStepFieldValues:wT,addProcedureStepFieldValuesMany:vT,setProcedureStepFieldValues:ET,setProcedureStepFieldValuesMany:BT,updateProcedureStepFieldValues:VT,updateProcedureStepFieldValuesMany:zT,deleteProcedureStepFieldValues:DT,deleteProcedureStepFieldValuesMany:jT}=jn.actions,qT=jn.reducer,CT=t=>t.procedureStepFieldValuesReducer.instances,ut=l.createSelector([CT],t=>Object.values(t)),hg=y(l.createSelector([ut,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),mg=y(l.createSelector([ut,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),$T=t=>s=>s.procedureStepFieldValuesReducer.instances[t],UT=y(l.createSelector([ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),pg=y(l.createSelector([ut,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),Ze=O(t=>t.uuid),LT={instances:{}},qn=l.createSlice({name:"procedureStepFieldValuesReviews",initialState:LT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,LT)),reducers:{initializeProcedureStepFieldValuesReviews:Ze.initialize,addProcedureStepFieldValuesReview:Ze.addOne,addProcedureStepFieldValuesReviews:Ze.addMany,setProcedureStepFieldValuesReview:Ze.setOne,setProcedureStepFieldValuesReviews:Ze.setMany,updateProcedureStepFieldValuesReview:Ze.updateOne,updateProcedureStepFieldValuesReviews:Ze.updateMany,deleteProcedureStepFieldValuesReview:Ze.deleteOne,deleteProcedureStepFieldValuesReviews:Ze.deleteMany}}),{initializeProcedureStepFieldValuesReviews:kT,addProcedureStepFieldValuesReview:NT,addProcedureStepFieldValuesReviews:Cn,setProcedureStepFieldValuesReview:GT,setProcedureStepFieldValuesReviews:HT,updateProcedureStepFieldValuesReview:WT,updateProcedureStepFieldValuesReviews:KT,deleteProcedureStepFieldValuesReview:YT,deleteProcedureStepFieldValuesReviews:$n}=qn.actions,ZT=t=>t.procedureStepFieldValuesReviewReducer.instances,lt=l.createSelector([ZT],t=>Object.values(t)),JT=t=>s=>s.procedureStepFieldValuesReviewReducer.instances[t],XT=y(l.createSelector([lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),QT=y(l.createSelector([lt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),yg=y(l.createSelector([lt,(t,s)=>s],(t,s)=>{let e;for(const n of t){const{field_values:c}=n;c===s&&(!e||e.submitted_at<=n.submitted_at)&&(e=n)}return e})),fg=y(l.createSelector([ut,lt,(t,s)=>s],(t,s,e)=>{const n=new Set(E(t.filter(({procedure:c})=>e===c)));return S(s.filter(({field_values:c})=>n.has(c)))})),Sg=y(l.createSelector([ut,lt,(t,s)=>s,(t,s,e)=>e],(t,s,e,n)=>{const c=new Set(E(t.filter(({procedure_step:r,procedure:a})=>e===a&&r===n)));return S(s.filter(({field_values:r})=>c.has(r)))})),Ag=l.createSelector([lt],t=>{const s={};for(const e of t){const{field_values:n}=e,c=s[n];(!c||c.submitted_at<=e.submitted_at)&&(s[n]=e)}return s}),xT=qn.reducer,Je=O(t=>t.uuid),eP={instances:{}},Un=l.createSlice({name:"procedureStepReviewers",initialState:eP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,eP)),reducers:{initializeProcedureStepReviewers:Je.initialize,addProcedureStepReviewer:Je.addOne,addProcedureStepReviewers:Je.addMany,setProcedureStepReviewer:Je.setOne,setProcedureStepReviewers:Je.setMany,updateProcedureStepReviewer:Je.updateOne,updateProcedureStepReviewers:Je.updateMany,deleteProcedureStepReviewer:Je.deleteOne,deleteProcedureStepReviewers:Je.deleteMany}}),{initializeProcedureStepReviewers:tP,addProcedureStepReviewer:sP,addProcedureStepReviewers:iP,setProcedureStepReviewer:nP,setProcedureStepReviewers:cP,updateProcedureStepReviewer:aP,updateProcedureStepReviewers:rP,deleteProcedureStepReviewer:dP,deleteProcedureStepReviewers:uP}=Un.actions,lP=t=>t.procedureStepReviewerReducer.instances,Vt=l.createSelector([lP],t=>Object.values(t)),oP=t=>s=>s.procedureStepReviewerReducer.instances[t],hP=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Ig=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),Tg=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),Pg=y(l.createSelector([Vt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),mP=Un.reducer,Xe=O(t=>t.uuid),pP={instances:{}},Ln=l.createSlice({name:"procedureSteps",initialState:pP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,pP)),reducers:{initializeProcedureSteps:Xe.initialize,setProcedureStep:Xe.setOne,setProcedureSteps:Xe.setMany,addProcedureStep:Xe.addOne,addProcedureSteps:Xe.addMany,updateProcedureStep:Xe.updateOne,updateProcedureSteps:Xe.updateMany,deleteProcedureStep:Xe.deleteOne,deleteProcedureSteps:Xe.deleteMany}}),{initializeProcedureSteps:yP,setProcedureStep:fP,setProcedureSteps:SP,addProcedureStep:AP,addProcedureSteps:IP,updateProcedureStep:TP,updateProcedureSteps:PP,deleteProcedureStep:OP,deleteProcedureSteps:FP}=Ln.actions,bP=Ln.reducer,kn=t=>t.procedureStepReducer.instances,_P=t=>s=>s.procedureStepReducer.instances[t],Nn=l.createSelector([kn],t=>Object.values(t).toSorted((s,e)=>s.order-e.order)),Og=y(l.createSelector([kn,(t,s)=>s],(t,s)=>{const e={};for(const[n,c]of Object.entries(t))c.procedure_type===s&&(e[n]=c);return ls(e)})),Fg=y(l.createSelector([Nn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),gP=y(l.createSelector([Nn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Qe=O(({uuid:t})=>t),MP={instances:{}},Gn=l.createSlice({name:"procedureTypeAttachments",initialState:MP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,MP)),reducers:{initializeProcedureTypeAttachments:Qe.initialize,addProcedureTypeAttachment:Qe.addOne,addProcedureTypeAttachments:Qe.addMany,setProcedureTypeAttachment:Qe.setOne,setProcedureTypeAttachments:Qe.setMany,updateProcedureTypeAttachment:Qe.updateOne,updateProcedureTypeAttachments:Qe.updateMany,deleteProcedureTypeAttachment:Qe.deleteOne,deleteProcedureTypeAttachments:Qe.deleteMany}}),{initializeProcedureTypeAttachments:RP,addProcedureTypeAttachment:wP,addProcedureTypeAttachments:vP,setProcedureTypeAttachment:EP,setProcedureTypeAttachments:BP,updateProcedureTypeAttachment:VP,updateProcedureTypeAttachments:zP,deleteProcedureTypeAttachment:DP,deleteProcedureTypeAttachments:jP}=Gn.actions,qP=Gn.reducer,CP=t=>t.procedureTypeAttachmentReducer.instances,Hn=l.createSelector([CP],t=>Object.values(t)),$P=t=>s=>s.procedureTypeAttachmentReducer.instances[t],UP=y(l.createSelector([Hn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),bg=y(l.createSelector([Hn,(t,s)=>s],(t,s)=>S(t.filter(({procedure_type:e})=>s===e)))),xe=O(({uuid:t})=>t),LP={instances:{}},Wn=l.createSlice({name:"procedureTypeFieldsAttachments",initialState:LP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,LP)),reducers:{initializeProcedureTypeFieldsAttachments:xe.initialize,addProcedureTypeFieldsAttachment:xe.addOne,addProcedureTypeFieldsAttachments:xe.addMany,setProcedureTypeFieldsAttachment:xe.setOne,setProcedureTypeFieldsAttachments:xe.setMany,updateProcedureTypeFieldsAttachment:xe.updateOne,updateProcedureTypeFieldsAttachments:xe.updateMany,deleteProcedureTypeFieldsAttachment:xe.deleteOne,deleteProcedureTypeFieldsAttachments:xe.deleteMany}}),{initializeProcedureTypeFieldsAttachments:kP,addProcedureTypeFieldsAttachment:NP,addProcedureTypeFieldsAttachments:GP,setProcedureTypeFieldsAttachment:HP,setProcedureTypeFieldsAttachments:WP,updateProcedureTypeFieldsAttachment:KP,updateProcedureTypeFieldsAttachments:YP,deleteProcedureTypeFieldsAttachment:ZP,deleteProcedureTypeFieldsAttachments:JP}=Wn.actions,XP=Wn.reducer,QP=t=>t.procedureTypeFieldsAttachmentReducer.instances,Kn=l.createSelector([QP],t=>Object.values(t)),_g=y(l.createSelector([Kn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),xP=t=>s=>s.procedureTypeFieldsAttachmentReducer.instances[t],eO=y(l.createSelector([Kn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),et=O(({uuid:t})=>t),tO={instances:{}},Yn=l.createSlice({name:"procedureTypeFields",initialState:tO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,tO)),reducers:{initializeProcedureTypeFields:et.initialize,addProcedureTypeFields:et.addOne,addProcedureTypeFieldsMany:et.addMany,setProcedureTypeFields:et.setOne,setProcedureTypeFieldsMany:et.setMany,updateProcedureTypeFields:et.updateOne,updateProcedureTypeFieldsMany:et.updateMany,deleteProcedureTypeFields:et.deleteOne,deleteProcedureTypeFieldsMany:et.deleteMany}}),{initializeProcedureTypeFields:sO,addProcedureTypeFields:iO,addProcedureTypeFieldsMany:nO,setProcedureTypeFields:cO,setProcedureTypeFieldsMany:aO,updateProcedureTypeFields:rO,updateProcedureTypeFieldsMany:dO,deleteProcedureTypeFields:uO,deleteProcedureTypeFieldsMany:lO}=Yn.actions,oO=Yn.reducer,hO=t=>t.procedureTypeFieldsReducer.instances,ns=l.createSelector([hO],t=>Object.values(t)),gg=y(l.createSelector([ns,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),Mg=y(l.createSelector([ns,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),mO=t=>s=>s.procedureTypeFieldsReducer.instances[t],pO=y(l.createSelector([ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),tt=O(({uuid:t})=>t),yO={instances:{}},Zn=l.createSlice({name:"procedureFieldValuesAttachments",initialState:yO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,yO)),reducers:{initializeProcedureFieldValuesAttachments:tt.initialize,addProcedureFieldValuesAttachment:tt.addOne,addProcedureFieldValuesAttachments:tt.addMany,setProcedureFieldValuesAttachment:tt.setOne,setProcedureFieldValuesAttachments:tt.setMany,updateProcedureFieldValuesAttachment:tt.updateOne,updateProcedureFieldValuesAttachments:tt.updateMany,deleteProcedureFieldValuesAttachment:tt.deleteOne,deleteProcedureFieldValuesAttachments:tt.deleteMany}}),{initializeProcedureFieldValuesAttachments:fO,addProcedureFieldValuesAttachment:SO,addProcedureFieldValuesAttachments:Jn,setProcedureFieldValuesAttachment:AO,setProcedureFieldValuesAttachments:IO,updateProcedureFieldValuesAttachment:TO,updateProcedureFieldValuesAttachments:PO,deleteProcedureFieldValuesAttachment:OO,deleteProcedureFieldValuesAttachments:Xn}=Zn.actions,FO=Zn.reducer,bO=t=>t.procedureFieldValuesAttachmentReducer.instances,Qn=l.createSelector([bO],t=>Object.values(t)),_O=t=>s=>s.procedureFieldValuesAttachmentReducer.instances[t],gO=y(l.createSelector([Qn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),MO=y(l.createSelector([Qn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),st=O(({uuid:t})=>t),RO={instances:{}},xn=l.createSlice({name:"procedureFieldValues",initialState:RO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,RO)),reducers:{initializeProcedureFieldValues:st.initialize,addProcedureFieldValues:st.addOne,addProcedureFieldValuesMany:st.addMany,setProcedureFieldValues:st.setOne,setProcedureFieldValuesMany:st.setMany,updateProcedureFieldValues:st.updateOne,updateProcedureFieldValuesMany:st.updateMany,deleteProcedureFieldValues:st.deleteOne,deleteProcedureFieldValuesMany:st.deleteMany}}),{initializeProcedureFieldValues:wO,addProcedureFieldValues:vO,addProcedureFieldValuesMany:EO,setProcedureFieldValues:BO,setProcedureFieldValuesMany:VO,updateProcedureFieldValues:zO,updateProcedureFieldValuesMany:DO,deleteProcedureFieldValues:jO,deleteProcedureFieldValuesMany:qO}=xn.actions,CO=xn.reducer,$O=t=>t.procedureFieldValuesReducer.instances,ec=l.createSelector([$O],t=>Object.values(t)),Rg=y(l.createSelector([ec,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),UO=t=>s=>s.procedureFieldValuesReducer.instances[t],LO=y(l.createSelector([ec,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),it=O(t=>t.uuid),kO={instances:{}},tc=l.createSlice({name:"procedureTypes",initialState:kO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,kO)),reducers:{initializeProcedureTypes:it.initialize,addProcedureType:it.addOne,addProcedureTypes:it.addMany,setProcedureType:it.setOne,setProcedureTypes:it.setMany,updateProcedureType:it.updateOne,updateProcedureTypes:it.updateMany,deleteProcedureType:it.deleteOne,deleteProcedureTypes:it.deleteMany}}),{initializeProcedureTypes:NO,addProcedureType:GO,addProcedureTypes:HO,setProcedureType:WO,setProcedureTypes:KO,updateProcedureType:YO,updateProcedureTypes:ZO,deleteProcedureType:JO,deleteProcedureTypes:XO}=tc.actions,QO=tc.reducer,xO=t=>t.procedureTypeReducer.instances,sc=l.createSelector([xO],t=>Object.values(t)),eF=t=>s=>s.procedureTypeReducer.instances[t],tF=y(l.createSelector([sc,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),wg=y(l.createSelector([sc,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),vg={isRehydrated:!1},ic=l.createSlice({name:"rehydrated",initialState:vg,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:Eg}=ic.actions,Bg=t=>t.rehydratedReducer.isRehydrated,sF=ic.reducer,nt=O(t=>t.uuid),iF={instances:{}},nc=l.createSlice({name:"teamMemberships",initialState:iF,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,iF)),reducers:{initializeTeamMemberships:nt.initialize,addTeamMembership:nt.addOne,addTeamMemberships:nt.addMany,setTeamMembership:nt.setOne,setTeamMemberships:nt.setMany,updateTeamMembership:nt.updateOne,updateTeamMemberships:nt.updateMany,deleteTeamMembership:nt.deleteOne,deleteTeamMemberships:nt.deleteMany}}),{initializeTeamMemberships:nF,addTeamMembership:cF,addTeamMemberships:aF,setTeamMembership:rF,setTeamMemberships:dF,updateTeamMembership:uF,updateTeamMemberships:lF,deleteTeamMembership:oF,deleteTeamMemberships:hF}=nc.actions,mF=nc.reducer,pF=t=>t.teamMembershipReducer.instances,cs=l.createSelector([pF],t=>Object.values(t)),yF=t=>s=>s.teamMembershipReducer.instances[t],fF=y(l.createSelector([cs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Vg=y(l.createSelector([cs,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(c=>c.team===s))e[n.user]=n;return e})),zg=y(l.createSelector([Xt,cs,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.team===e).map(c=>c.user));return S(t.filter(c=>n.has(c.id)))})),ct=O(t=>t.uuid),SF={instances:{}},cc=l.createSlice({name:"teams",initialState:SF,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,SF)),reducers:{initializeTeams:ct.initialize,addTeam:ct.addOne,addTeams:ct.addMany,setTeam:ct.setOne,setTeams:ct.setMany,updateTeam:ct.updateOne,updateTeams:ct.updateMany,deleteTeam:ct.deleteOne,deleteTeams:ct.deleteMany}}),{initializeTeams:AF,addTeam:IF,addTeams:TF,setTeam:PF,setTeams:OF,updateTeam:FF,updateTeams:bF,deleteTeam:_F,deleteTeams:gF}=cc.actions,MF=t=>t.teamReducer.instances,ac=l.createSelector([MF],t=>Object.values(t)),RF=t=>s=>s.teamReducer.instances[t],wF=y(l.createSelector([ac,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Dg=y(l.createSelector([ac,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),vF=cc.reducer,jg={version:0},EF=l.createSlice({name:"versioning",initialState:jg,reducers:{}}),BF=EF.reducer,rc={outboxReducer:Vf,fileReducer:$u,authReducer:Yd},qg=l.combineReducers(rc),VF={...rc,[gt]:BF,assetReducer:wa,assetAttachmentReducer:sa,assetCommentReducer:fa,assetTypeReducer:Ed,assetTypeAttachmentReducer:ka,issueReducer:tm,issueAttachmentReducer:yh,issueTypeReducer:Sy,issueTypeAttachmentReducer:ym,organizationReducer:Mf,projectReducer:WS,projectAttachmentReducer:aS,projectCommentReducer:TS,projectAccessReducer:Gf,organizationAccessReducer:uf,projectFileReducer:DS,procedureTypeReducer:QO,procedureInitiativeReducer:aA,procedureReducer:AA,procedureTypeFieldsReducer:oO,procedureFieldValuesReducer:CO,procedureTypeAttachmentReducer:qP,procedureTypeFieldsAttachmentReducer:XP,procedureFieldValuesAttachmentReducer:FO,procedureStepFieldsAttachmentReducer:eT,procedureStepFieldsReducer:mT,procedureStepFieldValuesAttachmentReducer:gT,procedureStepFieldValuesReducer:qT,procedureStepFieldValuesReviewReducer:xT,procedureStepAssigneeReducer:$A,procedureStepCommentReducer:xA,procedureStepDefaultAssigneeReducer:mI,procedureStepDefaultReviewerReducer:MI,procedureStepEventReducer:LI,procedureStepReviewerReducer:mP,procedureStepReducer:bP,rehydratedReducer:sF,formReducer:Xl,formRevisionReducer:Ul,formRevisionAttachmentReducer:Ml,formSubmissionAttachmentReducer:mo,formSubmissionReducer:go,formIdentifierReducer:xu,formIdentifierValueReducer:ml,userReducer:Zy,emailDomainsReducer:ju,documentsReducer:Iu,documentAttachmentReducer:du,teamReducer:vF,agentsReducer:Nc,issueCommentReducer:kh,issueCommentAttachmentReducer:wh,issueUpdateReducer:Uy,geoImageReducer:Uo,issueAssociationReducer:sh,issueTypeFieldsReducer:ip,issueTypeFieldValuesReducer:Nm,issueTypeFieldsAttachmentReducer:wm,issueTypeFieldValuesAttachmentReducer:fp,issueTypeIdentifierReducer:vp,issueTypeIdentifierValueReducer:Gp,issueTypePriorityReducer:iy,issueTypeStatusReducer:vy,assetTypeFieldsReducer:fr,assetTypeFieldValuesReducer:Nr,assetTypeFieldsAttachmentReducer:sr,assetTypeFieldValuesAttachmentReducer:wr,assetTypeIdentifierReducer:id,assetTypeIdentifierValueReducer:Sd,assetTypeStatusReducer:Hd,teamMembershipReducer:mF},Cg=l.combineReducers(VF),zF=1e4,DF=200,dc=[400,409,403,404,405,500],k=1e4,jF={};class qF{constructor(s){h(this,"client");h(this,"pageSize",zF);jF[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 CF=()=>LF.length-1,$F=t=>(t[gt]={version:CF()},t),UF=()=>$F({}),$g=t=>(t.outboxReducer&&(t.outboxReducer.deletedRequests=[]),t),Ug=t=>s=>{var e;return s===void 0&&(s={}),((e=s[gt])==null?void 0:e.version)===CF()?s:t(s)},LF=[$F,UF,UF,$g],Lg=Object.fromEntries(LF.map((t,s)=>[s,Ug(t)])),kg=t=>{if(t)throw t;const s=Ft();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},kF=(t,s,e)=>{const n=mt();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},NF=(t,s,e)=>{const n=mt();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const r=s.meta.offlineAction.payload.uuid;return n.remove(r),n.getQueue()};async function Ng(t,s){if(!s.payload)throw new Error("Received empty payload");return sb(s)}const Gg={...yc,effect:Ng,discard:HF,returnPromises:!0,persistCallback:kg,retry:Yg,persistOptions:{storage:lb},queue:{...yc.queue,enqueue:kF,dequeue:NF,peek:(...t)=>Kg(...t)}},Hg=ob(Lg,gt),Wg=l.compose(ub.offline(Gg),Hg);async function GF(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const c=jF[t.meta.offline.effect.serviceName];if(!c)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return lc(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,c,e)}function HF(t,s,e=0){var p;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
1
+ (function(i,L){typeof exports=="object"&&typeof module<"u"?L(exports,require("@redux-offline/redux-offline/lib/types"),require("@reduxjs/toolkit"),require("superagent"),require("uuid"),require("react"),require("fast-tree-builder"),require("ts-tree-lib"),require("@redux-offline/redux-offline"),require("@redux-offline/redux-offline/lib/defaults"),require("localforage"),require("buffer"),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","fast-tree-builder","ts-tree-lib","@redux-offline/redux-offline","@redux-offline/redux-offline/lib/defaults","localforage","buffer","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],L):(i=typeof globalThis<"u"?globalThis:i||self,L(i["overmap-core"]={},null,i.toolkit,i.request,i.uuid,i.react,i.buildTree,i.tsTreeLib,i.reduxOffline,i.offlineConfig,i.localforage,null,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,L,l,St,dt,sb,ib,mc,nb,pc,cb,AR,IR,ab,rb,db){"use strict";var fR=Object.defineProperty;var SR=(i,L,l)=>L in i?fR(i,L,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[L]=l;var h=(i,L,l)=>SR(i,typeof L!="symbol"?L+"":L,l);var eb;const yc=Object.freeze([]),fc=Object.freeze({}),Sc=6e4,Ac=["created_at","updated_at","index","revision"];var Ic=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Ic||{}),o=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(o||{}),Tc=(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))(Tc||{}),$=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))($||{}),Oc=(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))(Oc||{}),Pc=(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))(Pc||{}),Fc=(t=>(t[t.ADD_ASSIGNEE=0]="ADD_ASSIGNEE",t[t.REMOVE_ASSIGNEE=2]="REMOVE_ASSIGNEE",t[t.ADD_REVIEWER=4]="ADD_REVIEWER",t[t.REMOVE_REVIEWER=6]="REMOVE_REVIEWER",t))(Fc||{}),bc=(t=>(t[t.APPROVED=0]="APPROVED",t[t.REJECTED=2]="REJECTED",t[t.CHANGES_REQUESTED=4]="CHANGES_REQUESTED",t))(bc||{});function P(t){return{addOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},addMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},setOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},setMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},updateOne:(m,f)=>{const I=t(f.payload);m.instances[I]=f.payload},updateMany:(m,f)=>{for(const I of f.payload){const R=t(I);m.instances[R]=I}},deleteOne:(m,f)=>{delete m.instances[f.payload]},deleteMany:(m,f)=>{for(const I of f.payload)delete m.instances[I]},initialize:(m,f)=>{m.instances={};const I=new Set;for(const R of f.payload){const b=t(R);I.add(b),m.instances[b]=R}I.size!==f.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function ub(t){return{initializeSelection:(d,p)=>{d[t]=Array.from(new Set(p.payload))},selectOne:(d,p)=>{console.debug(d,d[t]),!new Set(d[t]).has(p.payload)&&d[t].push(p.payload)},selectMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)||m.add(f);d[t]=Array.from(m)},unselectOne:(d,p)=>{const m=new Set(d[t]);m.has(p.payload)&&(m.delete(p.payload),d[t]=Array.from(m))},unselectMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)&&m.delete(f);d[t]=Array.from(m)},toggleOne:(d,p)=>{const m=new Set(d[t]);m.has(p.payload)?m.delete(p.payload):m.add(p.payload),d[t]=Array.from(m)},toggleMany:(d,p)=>{const m=new Set(d[t]);for(const f of p.payload)m.has(f)?m.delete(f):m.add(f);d[t]=Array.from(m)}}}const T=l.createAction("RESET"),V=l.createAction("RESET_PROJECT_STATE"),F=l.createAction("RESET_ORGANIZATION_STATE");function lb(t,s){return sb.useMemo(t,s)}eb=Symbol.toStringTag;class us{constructor(){h(this,eb,"Promise");h(this,"_promise");h(this,"_resolve");h(this,"_reject");h(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 ls=!1;["true","1"].includes("".toLowerCase())&&(ls=!0);function ob(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),c=e.length;if(c!==n.length)return!1;for(let r=0;r<c;r++){const a=e[r];if(!Object.prototype.hasOwnProperty.call(s,a)||t[a]!==s[a])return!1}return!0}function os(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(ls&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(ls&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function hb(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 S=t=>t.length===0?yc:t,hs=t=>Object.keys(t).length===0?fc:t,_c=os(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===ms.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),mb=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),pb=1e3*86400,ms=new Date,yb=t=>new Date(t).toDateString()===ms.toDateString(),fb=os((t,s,e)=>{const n=Math.round((new Date(t).getTime()-ms.getTime())/pb);return n<s||n>e?_c(t):mb.format(n,"days")});function Sb(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function qt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const c=n.result;if(!c){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",c).then(r=>{const a=Sb(r);s(a)})},n.readAsArrayBuffer(t)})}const Ab=(t,s)=>`${t}${s?`.${s}`:""}`;function Ib(t,s){return new File([t],s,{type:t.type})}function gc(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Mc=async t=>(await fetch(t)).blob(),Rc=async(t,s)=>{const e=await Mc(t);return new File([e],s,{type:e.type})};function wc(t){return typeof t=="string"&&t.startsWith("blob:")}function Tb(t){return t.type.startsWith("image/")}const vc={};function Ob(t,s,e,...n){const c=vc[t];let r=!1;c?c[s]||(c[s]=!0,r=!0):(vc[t]={[s]:!0},r=!0),r&&console[e](...n)}function O(t){return{...t,uuid:dt.v4()}}function Pb(t){const s={};for(const e of t)s[e.uuid]=e;return s}function w(t){return t.map(({uuid:s})=>s)}function Ct(t,s){return t.localeCompare(s)}function ps(t,s){return Ct(t.uuid,s.uuid)}function Fb(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const r=t.split(".");r.length>1&&(s=r[r.length-1])}s&&!s.startsWith(".")&&(s="."+s);const c=s?s.length:0;return n.length+c>e&&(n=n.slice(0,e-c)+(s||"")),n}function bb(t){return t.toLowerCase().replace(" ","-")}function _b(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function gb(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const Mb=/^.+@.+\..+$/,Ec=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Bc=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Vc=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,zc=t=>ib(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),Rb=t=>{const{roots:s}=zc(t);return s.map(e=>new mc.Tree(e))},Dc=(t,s)=>{const{nodes:e}=zc(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new mc.Tree(n)},At=(t,s)=>t.submitted_at===s.submitted_at?0:t.submitted_at<s.submitted_at?-1:1;class wb{constructor(s){h(this,"operations",[]);h(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(c=>c[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(c=>c[s]!==e)),this}orderBy(s){return this.operations.push(e=>e.toSorted((n,c)=>n[s]<=c[s]?1:-1)),this}reverse(){return this.operations.push(s=>s.toReversed()),this}all(){return this.operations.push(s=>s),this}get(s,e){return l.createSelector([this.getData],n=>this.performOperations(n).find(c=>c[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=>S(this.performOperations(s)))}}const y=t=>(...s)=>e=>t(e,...s),H=P(t=>t.uuid),jc={instances:{}},ys=l.createSlice({name:"agents",initialState:jc,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,jc)),reducers:{initializeConversations:H.initialize,addConversation:H.addOne,addConversations:H.addMany,setConversation:H.setOne,setConversations:H.setMany,updateConversation:H.updateOne,updateConversations:H.updateMany,deleteConversation:H.deleteOne,deleteConversations:H.deleteMany}}),{initializeConversations:qc,addConversation:Cc,addConversations:vb,setConversation:$c,setConversations:Eb,updateConversation:Uc,updateConversations:Bb,deleteConversation:Vb,deleteConversations:zb}=ys.actions,fs=t=>t.agentsReducer.instances,Db=l.createSelector([fs],t=>Object.values(t)),jb=y(l.createSelector([fs,(t,s)=>s],(t,s)=>t[s])),Lc=ys.reducer,W=P(t=>t.uuid),kc={instances:{}},Ss=l.createSlice({name:"assetAttachments",initialState:kc,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,kc)),reducers:{initializeAssetAttachments:W.initialize,addAssetAttachment:W.addOne,addAssetAttachments:W.addMany,setAssetAttachment:W.setOne,setAssetAttachments:W.setMany,updateAssetAttachment:W.updateOne,updateAssetAttachments:W.updateMany,deleteAssetAttachment:W.deleteOne,deleteAssetAttachments:W.deleteMany}}),{initializeAssetAttachments:Nc,addAssetAttachment:Gc,addAssetAttachments:As,setAssetAttachment:Hc,setAssetAttachments:Wc,updateAssetAttachment:Kc,updateAssetAttachments:Yc,deleteAssetAttachment:Zc,deleteAssetAttachments:Is}=Ss.actions,Jc=t=>t.assetAttachmentReducer.instances,Ts=l.createSelector([Jc],t=>Object.values(t)),Xc=t=>s=>s.assetAttachmentReducer.instances[t],Qc=y(l.createSelector([Ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xc=y(l.createSelector([Ts,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>s===e)))),ea=Ss.reducer,K=P(t=>t.uuid),ta={instances:{}},Os=l.createSlice({name:"assetComments",initialState:ta,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ta)),reducers:{initializeAssetComments:K.initialize,addAssetComment:K.addOne,addAssetComments:K.addMany,setAssetComment:K.setOne,setAssetComments:K.setMany,updateAssetComment:K.updateOne,updateAssetComments:K.updateMany,deleteAssetComment:K.deleteOne,deleteAssetComments:K.deleteMany}}),{initializeAssetComments:sa,addAssetComment:ia,addAssetComments:$t,setAssetComment:na,setAssetComments:ca,updateAssetComment:aa,updateAssetComments:ra,deleteAssetComment:da,deleteAssetComments:Ut}=Os.actions,ua=t=>t.assetCommentReducer.instances,Lt=l.createSelector([ua],t=>S(Object.values(t).toSorted(At))),la=t=>s=>s.assetCommentReducer.instances[t],oa=y(l.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ha=y(l.createSelector([Lt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),ma=y(l.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.asset)))})),pa=Os.reducer,Y=P(t=>t.uuid),ya={instances:{}},Ps=l.createSlice({name:"assets",initialState:ya,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ya)),reducers:{initializeAssets:Y.initialize,addAsset:Y.addOne,addAssets:Y.addMany,setAsset:Y.setOne,setAssets:Y.setMany,updateAsset:Y.updateOne,updateAssets:Y.updateMany,deleteAsset:Y.deleteOne,deleteAssets:Y.deleteMany}}),{initializeAssets:fa,addAsset:Sa,addAssets:Fs,updateAsset:Aa,updateAssets:Ia,deleteAsset:Ta,deleteAssets:bs,setAsset:Oa,setAssets:Pa}=Ps.actions,Fa=t=>t.assetReducer.instances,kt=l.createSelector([Fa],t=>S(Object.values(t))),qb=y(l.createSelector([kt,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>e===s)))),ba=y(l.createSelector([kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),_a=t=>s=>s.assetReducer.instances[t],ga=y(l.createSelector([kt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Ma=Ps.reducer,Z=P(t=>t.uuid),Ra={instances:{}},_s=l.createSlice({name:"assetTypeAttachments",initialState:Ra,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ra)),reducers:{initializeAssetTypeAttachments:Z.initialize,addAssetTypeAttachment:Z.addOne,addAssetTypeAttachments:Z.addMany,setAssetTypeAttachment:Z.setOne,setAssetTypeAttachments:Z.setMany,updateAssetTypeAttachment:Z.updateOne,updateAssetTypeAttachments:Z.updateMany,deleteAssetTypeAttachment:Z.deleteOne,deleteAssetTypeAttachments:Z.deleteMany}}),{initializeAssetTypeAttachments:wa,addAssetTypeAttachment:va,addAssetTypeAttachments:gs,setAssetTypeAttachment:Ea,setAssetTypeAttachments:Ba,updateAssetTypeAttachment:Va,updateAssetTypeAttachments:za,deleteAssetTypeAttachment:Da,deleteAssetTypeAttachments:Ms}=_s.actions,ja=t=>t.assetTypeAttachmentReducer.instances,Rs=l.createSelector([ja],t=>Object.values(t)),qa=t=>s=>s.assetTypeAttachmentReducer.instances[t],Ca=y(l.createSelector([Rs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$a=y(l.createSelector([Rs,(t,s)=>s],(t,s)=>S(t.filter(({asset_type:e})=>s===e)))),Ua=_s.reducer,J=P(t=>t.uuid),La={instances:{}},ws=l.createSlice({name:"assetTypeFieldsAttachments",initialState:La,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,La)),reducers:{initializeAssetTypeFieldsAttachments:J.initialize,addAssetTypeFieldsAttachment:J.addOne,addAssetTypeFieldsAttachments:J.addMany,setAssetTypeFieldsAttachment:J.setOne,setAssetTypeFieldsAttachments:J.setMany,updateAssetTypeFieldsAttachment:J.updateOne,updateAssetTypeFieldsAttachments:J.updateMany,deleteAssetTypeFieldsAttachment:J.deleteOne,deleteAssetTypeFieldsAttachments:J.deleteMany}}),{initializeAssetTypeFieldsAttachments:ka,addAssetTypeFieldsAttachment:Na,addAssetTypeFieldsAttachments:Ga,setAssetTypeFieldsAttachment:Ha,setAssetTypeFieldsAttachments:Wa,updateAssetTypeFieldsAttachment:Ka,updateAssetTypeFieldsAttachments:Ya,deleteAssetTypeFieldsAttachment:Za,deleteAssetTypeFieldsAttachments:Ja}=ws.actions,Xa=t=>t.assetTypeFieldsAttachmentReducer.instances,vs=l.createSelector([Xa],t=>Object.values(t)),Cb=y(l.createSelector([vs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Qa=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],xa=y(l.createSelector([vs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),er=ws.reducer,X=P(t=>t.uuid),tr={instances:{}},Es=l.createSlice({name:"assetTypeFields",initialState:tr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,tr)),reducers:{initializeAssetTypeFields:X.initialize,addAssetTypeFields:X.addOne,addAssetTypeFieldsMany:X.addMany,setAssetTypeFields:X.setOne,setAssetTypeFieldsMany:X.setMany,updateAssetTypeFields:X.updateOne,updateAssetTypeFieldsMany:X.updateMany,deleteAssetTypeFields:X.deleteOne,deleteAssetTypeFieldsMany:X.deleteMany}}),{initializeAssetTypeFields:sr,addAssetTypeFields:ir,addAssetTypeFieldsMany:nr,setAssetTypeFields:cr,setAssetTypeFieldsMany:ar,updateAssetTypeFields:rr,updateAssetTypeFieldsMany:dr,deleteAssetTypeFields:ur,deleteAssetTypeFieldsMany:lr}=Es.actions,or=t=>t.assetTypeFieldsReducer.instances,wt=l.createSelector([or],t=>Object.values(t)),$b=y(l.createSelector([wt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Ub=y(l.createSelector([wt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).toSorted(At).pop())),hr=t=>s=>s.assetTypeFieldsReducer.instances[t],mr=y(l.createSelector([wt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),pr=Es.reducer,Q=P(t=>t.uuid),yr={instances:{}},Bs=l.createSlice({name:"assetTypeFieldValuesAttachments",initialState:yr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,yr)),reducers:{initializeAssetTypeFieldValuesAttachments:Q.initialize,addAssetTypeFieldValuesAttachment:Q.addOne,addAssetTypeFieldValuesAttachments:Q.addMany,setAssetTypeFieldValuesAttachment:Q.setOne,setAssetTypeFieldValuesAttachments:Q.setMany,updateAssetTypeFieldValuesAttachment:Q.updateOne,updateAssetTypeFieldValuesAttachments:Q.updateMany,deleteAssetTypeFieldValuesAttachment:Q.deleteOne,deleteAssetTypeFieldValuesAttachments:Q.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:fr,addAssetTypeFieldValuesAttachment:Sr,addAssetTypeFieldValuesAttachments:Vs,setAssetTypeFieldValuesAttachment:Ar,setAssetTypeFieldValuesAttachments:Ir,updateAssetTypeFieldValuesAttachment:Tr,updateAssetTypeFieldValuesAttachments:Or,deleteAssetTypeFieldValuesAttachment:Pr,deleteAssetTypeFieldValuesAttachments:zs}=Bs.actions,Fr=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Ds=l.createSelector([Fr],t=>Object.values(t)),br=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],_r=y(l.createSelector([Ds,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gr=y(l.createSelector([Ds,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Mr=Bs.reducer,x=P(t=>t.uuid),Rr={instances:{}},js=l.createSlice({name:"assetTypeFieldValues",initialState:Rr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Rr)),reducers:{initializeAssetTypeFieldValues:x.initialize,addAssetTypeFieldValues:x.addOne,addAssetTypeFieldValuesMany:x.addMany,setAssetTypeFieldValues:x.setOne,setAssetTypeFieldValuesMany:x.setMany,updateAssetTypeFieldValues:x.updateOne,updateAssetTypeFieldValuesMany:x.updateMany,deleteAssetTypeFieldValues:x.deleteOne,deleteAssetTypeFieldValuesMany:x.deleteMany}}),{initializeAssetTypeFieldValues:wr,addAssetTypeFieldValues:vr,addAssetTypeFieldValuesMany:Er,setAssetTypeFieldValues:Br,setAssetTypeFieldValuesMany:Vr,updateAssetTypeFieldValues:zr,updateAssetTypeFieldValuesMany:Dr,deleteAssetTypeFieldValues:jr,deleteAssetTypeFieldValuesMany:qr}=js.actions,Cr=t=>t.assetTypeFieldValuesReducer.instances,Nt=l.createSelector([Cr],t=>Object.values(t)),Lb=y(l.createSelector([Nt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),kb=y(l.createSelector([wt,Nt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(c=>c.asset_type===e).map(c=>c.uuid));return S(s.filter(c=>n.has(c.fields_revision)))})),$r=t=>s=>s.assetTypeFieldValuesReducer.instances[t],Ur=y(l.createSelector([Nt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Lr=js.reducer,ee=P(t=>t.uuid),kr={instances:{}},qs=l.createSlice({name:"assetTypeIdentifiers",initialState:kr,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,kr)),reducers:{initializeAssetTypeIdentifiers:ee.initialize,addAssetTypeIdentifier:ee.addOne,addAssetTypeIdentifiers:ee.addMany,setAssetTypeIdentifier:ee.setOne,setAssetTypeIdentifiers:ee.setMany,updateAssetTypeIdentifier:ee.updateOne,updateAssetTypeIdentifiers:ee.updateMany,deleteAssetTypeIdentifier:ee.deleteOne,deleteAssetTypeIdentifiers:ee.deleteMany}}),{initializeAssetTypeIdentifiers:Nr,addAssetTypeIdentifier:Gr,addAssetTypeIdentifiers:Hr,setAssetTypeIdentifier:Wr,setAssetTypeIdentifiers:Kr,updateAssetTypeIdentifier:Yr,updateAssetTypeIdentifiers:Zr,deleteAssetTypeIdentifier:Jr,deleteAssetTypeIdentifiers:Xr}=qs.actions,Qr=t=>t.assetTypeIdentifierReducer.instances,Cs=l.createSelector([Qr],t=>Object.values(t)),xr=t=>s=>s.assetTypeIdentifierReducer.instances[t],ed=y(l.createSelector([Cs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Nb=y(l.createSelector([Cs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),td=qs.reducer,te=P(t=>t.uuid),sd={instances:{}},$s=l.createSlice({name:"assetTypeIdentifierValues",initialState:sd,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,sd)),reducers:{initializeAssetTypeIdentifierValues:te.initialize,addAssetTypeIdentifierValue:te.addOne,addAssetTypeIdentifierValues:te.addMany,setAssetTypeIdentifierValue:te.setOne,setAssetTypeIdentifierValues:te.setMany,updateAssetTypeIdentifierValue:te.updateOne,updateAssetTypeIdentifierValues:te.updateMany,deleteAssetTypeIdentifierValue:te.deleteOne,deleteAssetTypeIdentifierValues:te.deleteMany}}),{initializeAssetTypeIdentifierValues:id,addAssetTypeIdentifierValue:nd,addAssetTypeIdentifierValues:cd,setAssetTypeIdentifierValue:ad,setAssetTypeIdentifierValues:rd,updateAssetTypeIdentifierValue:dd,updateAssetTypeIdentifierValues:ud,deleteAssetTypeIdentifierValue:ld,deleteAssetTypeIdentifierValues:od}=$s.actions,hd=t=>t.assetTypeIdentifierValueReducer.instances,Gt=l.createSelector([hd],t=>Object.values(t)),md=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],pd=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Gb=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),Hb=y(l.createSelector([Gt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type_identifier===s)))),yd=$s.reducer,se=P(t=>t.uuid),fd={instances:{}},Us=l.createSlice({name:"assetTypes",initialState:fd,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,fd)),reducers:{initializeAssetTypes:se.initialize,setAssetType:se.setOne,setAssetTypes:se.setMany,addAssetType:se.addOne,addAssetTypes:se.addMany,updateAssetType:se.updateOne,updateAssetTypes:se.updateMany,deleteAssetType:se.deleteOne,deleteAssetTypes:se.deleteMany}}),{initializeAssetTypes:Sd,setAssetType:Ad,setAssetTypes:Id,addAssetType:Td,addAssetTypes:Od,updateAssetType:Pd,updateAssetTypes:Fd,deleteAssetType:bd,deleteAssetTypes:_d}=Us.actions,gd=t=>t.assetTypeReducer.instances,Ls=l.createSelector([gd],t=>Object.values(t)),Md=t=>s=>s.assetTypeReducer.instances[t],Rd=y(l.createSelector([Ls,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Wb=y(l.createSelector([Ls,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),wd=Us.reducer,ie=P(t=>t.uuid),vd={instances:{}},ks=l.createSlice({name:"assetTypeStatuses",initialState:vd,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,vd)),reducers:{initializeAssetTypeStatuses:ie.initialize,addAssetTypeStatus:ie.addOne,addAssetTypeStatuses:ie.addMany,setAssetTypeStatus:ie.setOne,setAssetTypeStatuses:ie.setMany,updateAssetTypeStatus:ie.updateOne,updateAssetTypeStatuses:ie.updateMany,deleteAssetTypeStatus:ie.deleteOne,deleteAssetTypeStatuses:ie.deleteMany}}),{initializeAssetTypeStatuses:Ed,addAssetTypeStatus:Bd,addAssetTypeStatuses:Vd,setAssetTypeStatus:zd,setAssetTypeStatuses:Dd,updateAssetTypeStatus:jd,updateAssetTypeStatuses:qd,deleteAssetTypeStatus:Cd,deleteAssetTypeStatuses:$d}=ks.actions,Ud=t=>t.assetTypeStatusReducer.instances,Ns=l.createSelector([Ud],t=>S(Object.values(t).toSorted(Ec))),Ld=t=>s=>s.assetTypeStatusReducer.instances[t],kd=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Kb=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Nd=ks.reducer,Gd={accessToken:"",refreshToken:"",isLoggedIn:!1},Ht=l.createSlice({name:"auth",initialState:Gd,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Gd)),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||Ht.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:Yb,clearTokens:Zb,setLoggedIn:Hd}=Ht.actions,Jb=t=>t.authReducer.accessToken,Xb=t=>t.authReducer.isLoggedIn,Wd=Ht.reducer,ne=P(t=>t.uuid),Kd={instances:{}},Gs=l.createSlice({name:"documentAttachments",initialState:Kd,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Kd)),reducers:{initializeDocumentAttachments:ne.initialize,addDocumentAttachment:ne.addOne,addDocumentAttachments:ne.addMany,setDocumentAttachment:ne.setOne,setDocumentAttachments:ne.setMany,updateDocumentAttachment:ne.updateOne,updateDocumentAttachments:ne.updateMany,deleteDocumentAttachment:ne.deleteOne,deleteDocumentAttachments:ne.deleteMany}}),{initializeDocumentAttachments:Yd,addDocumentAttachment:Zd,addDocumentAttachments:Jd,setDocumentAttachment:Xd,setDocumentAttachments:Qd,updateDocumentAttachment:xd,updateDocumentAttachments:eu,deleteDocumentAttachment:tu,deleteDocumentAttachments:su}=Gs.actions,iu=t=>t.documentAttachmentReducer.instances,Hs=l.createSelector([iu],t=>Object.values(t)),nu=t=>s=>s.documentAttachmentReducer.instances[t],cu=y(l.createSelector([Hs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Qb=y(l.createSelector([Hs,(t,s)=>s],(t,s)=>S(t.filter(({document:e})=>s===e)))),au=Gs.reducer,ce=P(({uuid:t})=>t),ru={instances:{}},Ws=l.createSlice({name:"documents",initialState:ru,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>{Object.assign(s,ru)}),reducers:{initializeDocuments:ce.initialize,addDocument:ce.addOne,addDocuments:ce.addMany,setDocument:ce.setOne,setDocuments:ce.setMany,updateDocument:ce.updateOne,updateDocuments:ce.updateMany,deleteDocument:ce.deleteOne,deleteDocuments:ce.deleteMany}}),{initializeDocuments:du,addDocument:uu,addDocuments:lu,setDocument:ou,setDocuments:hu,updateDocument:mu,updateDocuments:pu,deleteDocument:yu,deleteDocuments:fu}=Ws.actions,Su=Ws.reducer,Ks=t=>t.documentsReducer.instances,Wt=l.createSelector([Ks],t=>Object.values(t)),Au=t=>s=>s.documentsReducer.instances[t],Iu=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xb=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),e_=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),Tu=y(l.createSelector([Ks,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const c=Dc(s,Object.values(t)).all().map(({model:r})=>r);return S(c)})),ae=P(t=>t.uuid),Ou={instances:{}},Ys=l.createSlice({name:"emailDomains",initialState:Ou,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ou)),reducers:{initializeEmailDomains:ae.initialize,addEmailDomain:ae.addOne,addEmailDomains:ae.addMany,setEmailDomain:ae.setOne,setEmailDomains:ae.setMany,updateEmailDomain:ae.updateOne,updateEmailDomains:ae.updateMany,deleteEmailDomain:ae.deleteOne,deleteEmailDomains:ae.deleteMany}}),{initializeEmailDomains:Pu,addEmailDomain:Fu,addEmailDomains:bu,setEmailDomain:_u,setEmailDomains:gu,updateEmailDomain:Mu,updateEmailDomains:Ru,deleteEmailDomain:wu,deleteEmailDomains:vu}=Ys.actions,Eu=t=>t.emailDomainsReducer.instances,Zs=l.createSelector([Eu],t=>Object.values(t)),Bu=t=>s=>s.emailDomainsReducer.instances[t],Vu=y(l.createSelector([Zs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),t_=y(l.createSelector([Zs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),zu=Ys.reducer,Du={s3Urls:{}},ju=1e3*60*60,s_=ju*24*7,Js=l.createSlice({name:"file",initialState:Du,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Du)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:c}=s.payload,r=new Date,a=new Date(r.getTime()+s_);t.s3Urls[c]={url:e,fields:n,exp:a.getTime()}}}}),{setUploadUrl:i_}=Js.actions,n_=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<ju))return e},qu=Js.reducer,re=P(t=>t.uuid),Cu={instances:{}},Xs=l.createSlice({name:"formIdentifiers",initialState:Cu,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Cu)),reducers:{initializeFormIdentifiers:re.initialize,addFormIdentifier:re.addOne,addFormIdentifiers:re.addMany,setFormIdentifier:re.setOne,setFormIdentifiers:re.setMany,updateFormIdentifier:re.updateOne,updateFormIdentifiers:re.updateMany,deleteFormIdentifier:re.deleteOne,deleteFormIdentifiers:re.deleteMany}}),{initializeFormIdentifiers:$u,addFormIdentifier:Uu,addFormIdentifiers:Lu,setFormIdentifier:ku,setFormIdentifiers:Nu,updateFormIdentifier:Gu,updateFormIdentifiers:Hu,deleteFormIdentifier:Wu,deleteFormIdentifiers:Ku}=Xs.actions,Yu=t=>t.formIdentifierReducer.instances,Qs=l.createSelector([Yu],t=>Object.values(t)),Zu=t=>s=>s.formIdentifierReducer.instances[t],Ju=y(l.createSelector([Qs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),c_=y(l.createSelector([Qs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),Xu=Xs.reducer,de=P(t=>t.uuid),Qu={instances:{}},xs=l.createSlice({name:"formIdentifierValues",initialState:Qu,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Qu)),reducers:{initializeFormIdentifierValues:de.initialize,addFormIdentifierValue:de.addOne,addFormIdentifierValues:de.addMany,setFormIdentifierValue:de.setOne,setFormIdentifierValues:de.setMany,updateFormIdentifierValue:de.updateOne,updateFormIdentifierValues:de.updateMany,deleteFormIdentifierValue:de.deleteOne,deleteFormIdentifierValues:de.deleteMany}}),{initializeFormIdentifierValues:xu,addFormIdentifierValue:el,addFormIdentifierValues:tl,setFormIdentifierValue:sl,setFormIdentifierValues:il,updateFormIdentifierValue:nl,updateFormIdentifierValues:cl,deleteFormIdentifierValue:al,deleteFormIdentifierValues:rl}=xs.actions,dl=t=>t.formIdentifierValueReducer.instances,Kt=l.createSelector([dl],t=>Object.values(t)),ul=t=>s=>s.formIdentifierValueReducer.instances[t],ll=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),a_=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),r_=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_identifier===s)))),ol=xs.reducer,ue=P(t=>t.uuid),hl={instances:{}},ei=l.createSlice({name:"formRevisionAttachments",initialState:hl,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,hl)),reducers:{initializeFormRevisionAttachments:ue.initialize,addFormRevisionAttachment:ue.addOne,addFormRevisionAttachments:ue.addMany,setFormRevisionAttachment:ue.setOne,setFormRevisionAttachments:ue.setMany,updateFormRevisionAttachment:ue.updateOne,updateFormRevisionAttachments:ue.updateMany,deleteFormRevisionAttachment:ue.deleteOne,deleteFormRevisionAttachments:ue.deleteMany}}),{initializeFormRevisionAttachments:ml,addFormRevisionAttachment:pl,addFormRevisionAttachments:yl,setFormRevisionAttachment:fl,setFormRevisionAttachments:Sl,updateFormRevisionAttachment:Al,updateFormRevisionAttachments:Il,deleteFormRevisionAttachment:Tl,deleteFormRevisionAttachments:Ol}=ei.actions,Yt=t=>t.formRevisionAttachmentReducer.instances,Pl=l.createSelector([Yt],t=>Object.values(t)),Fl=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>t[s])),bl=y(l.createSelector([Pl,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),d_=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.form_revision===s)))),_l=ei.reducer,le=P(t=>t.uuid),gl={instances:{}},ti=l.createSlice({name:"formRevisions",initialState:gl,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,gl)),reducers:{initializeFormRevisions:le.initialize,addFormRevision:le.addOne,addFormRevisions:le.addMany,setFormRevision:le.setOne,setFormRevisions:le.setMany,updateFormRevision:le.updateOne,updateFormRevisions:le.updateMany,deleteFormRevision:le.deleteOne,deleteFormRevisions:le.deleteMany}}),{initializeFormRevisions:Ml,addFormRevision:Rl,addFormRevisions:si,setFormRevision:wl,setFormRevisions:vl,updateFormRevision:El,updateFormRevisions:Bl,deleteFormRevision:Vl,deleteFormRevisions:ii}=ti.actions,zl=t=>t.formRevisionReducer.instances,Zt=l.createSelector([zl],t=>Object.values(t)),Dl=t=>s=>s.formRevisionReducer.instances[t],jl=y(l.createSelector([Zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),u_=y(l.createSelector([Zt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).toSorted(At).pop())),ql=y(l.createSelector([Zt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),Cl=ti.reducer,oe=P(t=>t.uuid),$l={instances:{}},ni=l.createSlice({name:"forms",initialState:$l,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,$l)),reducers:{initializeForms:oe.initialize,addForm:oe.addOne,addForms:oe.addMany,setForm:oe.setOne,setForms:oe.setMany,updateForm:oe.updateOne,updateForms:oe.updateMany,deleteForm:oe.deleteOne,deleteForms:oe.deleteMany}}),{initializeForms:Ul,addForm:Ll,addForms:kl,setForm:Nl,setForms:Gl,updateForm:Hl,updateForms:Wl,deleteForm:Kl,deleteForms:Yl}=ni.actions,Zl=ni.reducer,Jl=t=>t.formReducer.instances,ci=l.createSelector([Jl],t=>Object.values(t)),Xl=t=>s=>s.formReducer.instances[t],Ql=y(l.createSelector([ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),l_=y(l.createSelector([ci,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),he=P(t=>t.uuid),xl={instances:{}},ai=l.createSlice({name:"formSubmissionAttachments",initialState:xl,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,xl)),reducers:{initializeFormSubmissionAttachments:he.initialize,addFormSubmissionAttachment:he.addOne,addFormSubmissionAttachments:he.addMany,setFormSubmissionAttachment:he.setOne,setFormSubmissionAttachments:he.setMany,updateFormSubmissionAttachment:he.updateOne,updateFormSubmissionAttachments:he.updateMany,deleteFormSubmissionAttachment:he.deleteOne,deleteFormSubmissionAttachments:he.deleteMany}}),{initializeFormSubmissionAttachments:eo,addFormSubmissionAttachment:to,addFormSubmissionAttachments:ri,setFormSubmissionAttachment:so,setFormSubmissionAttachments:io,updateFormSubmissionAttachment:no,updateFormSubmissionAttachments:co,deleteFormSubmissionAttachment:ao,deleteFormSubmissionAttachments:di}=ai.actions,ui=t=>t.formSubmissionAttachmentReducer.instances,li=l.createSelector([ui],t=>Object.values(t)),ro=y(l.createSelector([ui,(t,s)=>s],(t,s)=>t[s])),oi=y(l.createSelector([li,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.uuid)))})),uo=oi,lo=y(l.createSelector([li,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),oo=ai.reducer,me=P(t=>t.uuid),ho={instances:{}},hi=l.createSlice({name:"formSubmissions",initialState:ho,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,ho)),reducers:{initializeFormSubmissions:me.initialize,setFormSubmission:me.setOne,setFormSubmissions:me.setMany,addFormSubmission:me.addOne,addFormSubmissions:me.addMany,updateFormSubmission:me.updateOne,updateFormSubmissions:me.updateMany,deleteFormSubmission:me.deleteOne,deleteFormSubmissions:me.deleteMany}}),{initializeFormSubmissions:mo,setFormSubmission:po,setFormSubmissions:yo,addFormSubmission:fo,addFormSubmissions:ut,updateFormSubmission:So,updateFormSubmissions:Ao,deleteFormSubmission:Io,deleteFormSubmissions:lt}=hi.actions,To=t=>t.formSubmissionReducer.instances,k=l.createSelector([To],t=>Object.values(t)),Oo=t=>s=>s.formSubmissionReducer.instances[t],Po=y(l.createSelector([k,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Fo=y(l.createSelector([k,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),o_=y(l.createSelector([k,(t,s)=>s],(t,s)=>S(t.filter(({organization:e})=>e===s)))),h_=y(l.createSelector([k,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>e===s)))),m_=y(l.createSelector([k,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({project:n,form:c})=>n===s&&c===e)))),p_=y(l.createSelector([k,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({organization:n,form:c})=>n===s&&c===e)))),bo=y(l.createSelector([k,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>e===s)))),_o=y(l.createSelector([k,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({issue:n})=>n&&e.has(n)))})),go=y(l.createSelector([k,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>e===s)))),Mo=y(l.createSelector([k,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({asset:n})=>n&&e.has(n)))})),Ro=hi.reducer,pe=P(t=>t.uuid),wo={instances:{}},mi=l.createSlice({name:"geoImages",initialState:wo,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,wo)),reducers:{initializeGeoImages:pe.initialize,setGeoImage:pe.setOne,setGeoImages:pe.setMany,addGeoImage:pe.addOne,addGeoImages:pe.addMany,updateGeoImage:pe.updateOne,updateGeoImages:pe.updateMany,deleteGeoImage:pe.deleteOne,deleteGeoImages:pe.deleteMany}}),{initializeGeoImages:vo,setGeoImage:Eo,setGeoImages:Bo,addGeoImage:Vo,addGeoImages:zo,updateGeoImage:Do,updateGeoImages:jo,deleteGeoImage:qo,deleteGeoImages:Co}=mi.actions,$o=t=>t.geoImageReducer.instances,pi=l.createSelector([$o],t=>Object.values(t)),Uo=t=>s=>s.geoImageReducer.instances[t],Lo=y(l.createSelector([pi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),y_=y(l.createSelector([pi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),ko=mi.reducer,ye=P(t=>t.uuid),No={instances:{}},yi=l.createSlice({name:"issueAssociations",initialState:No,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,No)),reducers:{initializeIssueAssociations:ye.initialize,addIssueAssociation:ye.addOne,addIssueAssociations:ye.addMany,setIssueAssociation:ye.setOne,setIssueAssociations:ye.setMany,updateIssueAssociation:ye.updateOne,updateIssueAssociations:ye.updateMany,deleteIssueAssociation:ye.deleteOne,deleteIssueAssociations:ye.deleteMany}}),{initializeIssueAssociations:Go,setIssueAssociations:Ho,setIssueAssociation:Wo,updateIssueAssociation:Ko,updateIssueAssociations:Yo,addIssueAssociation:Zo,addIssueAssociations:It,deleteIssueAssociation:Jo,deleteIssueAssociations:Tt}=yi.actions,Xo=t=>t.issueAssociationReducer.instances,Ot=l.createSelector([Xo],t=>Object.values(t)),Qo=t=>s=>s.issueAssociationReducer.instances[t],xo=y(l.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),eh=y(l.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({issue:n})=>e.has(n)))})),th=y(l.createSelector([Ot,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>e===s)))),sh=y(l.createSelector([Ot,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>e===s)))),ih=y(l.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({asset:n})=>e.has(n)))})),nh=yi.reducer,fe=P(t=>t.uuid),ch={instances:{}},fi=l.createSlice({name:"issueAttachments",initialState:ch,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ch)),reducers:{initializeIssueAttachments:fe.initialize,addIssueAttachment:fe.addOne,addIssueAttachments:fe.addMany,setIssueAttachment:fe.setOne,setIssueAttachments:fe.setMany,updateIssueAttachment:fe.updateOne,updateIssueAttachments:fe.updateMany,deleteIssueAttachment:fe.deleteOne,deleteIssueAttachments:fe.deleteMany}}),{initializeIssueAttachments:ah,addIssueAttachment:rh,addIssueAttachments:Si,setIssueAttachment:dh,setIssueAttachments:uh,updateIssueAttachment:lh,updateIssueAttachments:oh,deleteIssueAttachment:hh,deleteIssueAttachments:Ai}=fi.actions,mh=t=>t.issueAttachmentReducer.instances,Ii=l.createSelector([mh],t=>Object.values(t)),ph=y(l.createSelector([Ii,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>s===e)))),yh=t=>s=>s.issueAttachmentReducer.instances[t],fh=y(l.createSelector([Ii,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Sh=fi.reducer,Se=P(t=>t.uuid),Ah={instances:{}},Ti=l.createSlice({name:"issueCommentAttachments",initialState:Ah,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Ah)),reducers:{initializeIssueCommentAttachments:Se.initialize,addIssueCommentAttachment:Se.addOne,addIssueCommentAttachments:Se.addMany,setIssueCommentAttachment:Se.setOne,setIssueCommentAttachments:Se.setMany,updateIssueCommentAttachment:Se.updateOne,updateIssueCommentAttachments:Se.updateMany,deleteIssueCommentAttachment:Se.deleteOne,deleteIssueCommentAttachments:Se.deleteMany}}),{initializeIssueCommentAttachments:Ih,addIssueCommentAttachment:Th,addIssueCommentAttachments:Oh,setIssueCommentAttachment:Ph,setIssueCommentAttachments:Fh,updateIssueCommentAttachment:bh,updateIssueCommentAttachments:_h,deleteIssueCommentAttachment:gh,deleteIssueCommentAttachments:Mh}=Ti.actions,Rh=t=>t.issueCommentAttachmentReducer.instances,Oi=l.createSelector([Rh],t=>Object.values(t)),wh=t=>s=>s.issueCommentAttachmentReducer.instances[t],vh=y(l.createSelector([Oi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),f_=y(l.createSelector([Oi,(t,s)=>s],(t,s)=>S(t.filter(({issue_comment:e})=>s===e)))),Eh=Ti.reducer,Ae=P(t=>t.uuid),Bh={instances:{}},Pi=l.createSlice({name:"issueComments",initialState:Bh,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Bh)),reducers:{initializeIssueComments:Ae.initialize,addIssueComment:Ae.addOne,addIssueComments:Ae.addMany,setIssueComment:Ae.setOne,setIssueComments:Ae.setMany,updateIssueComment:Ae.updateOne,updateIssueComments:Ae.updateMany,deleteIssueComment:Ae.deleteOne,deleteIssueComments:Ae.deleteMany}}),{initializeIssueComments:Vh,addIssueComment:zh,addIssueComments:Dh,setIssueComment:jh,setIssueComments:qh,updateIssueComment:Ch,updateIssueComments:$h,deleteIssueComment:Uh,deleteIssueComments:Lh}=Pi.actions,Fi=t=>t.issueCommentReducer.instances,kh=t=>s=>s.issueCommentReducer.instances[t],Nh=y(l.createSelector([Fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),S_=y(l.createSelector([Fi,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.issue===s)))),Gh=Pi.reducer,Ie=P(t=>t.uuid),Hh={instances:{}},bi=l.createSlice({name:"issues",initialState:Hh,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Hh)),reducers:{initializeIssues:Ie.initialize,addIssue:Ie.addOne,addIssues:Ie.addMany,setIssue:Ie.setOne,setIssues:Ie.setMany,updateIssue:Ie.updateOne,updateIssues:Ie.updateMany,deleteIssue:Ie.deleteOne,deleteIssues:Ie.deleteMany}}),{initializeIssues:Wh,addIssue:Kh,addIssues:_i,setIssue:Yh,setIssues:Zh,updateIssue:Jh,updateIssues:Xh,deleteIssue:Qh,deleteIssues:gi}=bi.actions,xh=t=>t.issueReducer.instances,Jt=l.createSelector([xh],t=>Object.values(t)),em=t=>s=>s.issueReducer.instances[t],tm=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),A_=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),sm=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),im=bi.reducer,Te=P(t=>t.uuid),nm={instances:{}},Mi=l.createSlice({name:"issueTypeAttachments",initialState:nm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,nm)),reducers:{initializeIssueTypeAttachments:Te.initialize,addIssueTypeAttachment:Te.addOne,addIssueTypeAttachments:Te.addMany,setIssueTypeAttachment:Te.setOne,setIssueTypeAttachments:Te.setMany,updateIssueTypeAttachment:Te.updateOne,updateIssueTypeAttachments:Te.updateMany,deleteIssueTypeAttachment:Te.deleteOne,deleteIssueTypeAttachments:Te.deleteMany}}),{initializeIssueTypeAttachments:cm,addIssueTypeAttachment:am,addIssueTypeAttachments:rm,setIssueTypeAttachment:dm,setIssueTypeAttachments:um,updateIssueTypeAttachment:lm,updateIssueTypeAttachments:om,deleteIssueTypeAttachment:hm,deleteIssueTypeAttachments:mm}=Mi.actions,pm=t=>t.issueTypeAttachmentReducer.instances,Ri=l.createSelector([pm],t=>Object.values(t)),ym=t=>s=>s.issueTypeAttachmentReducer.instances[t],fm=y(l.createSelector([Ri,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),I_=y(l.createSelector([Ri,(t,s)=>s],(t,s)=>S(t.filter(({issue_type:e})=>s===e)))),Sm=Mi.reducer,Oe=P(t=>t.uuid),Am={instances:{}},wi=l.createSlice({name:"issueTypeFieldsAttachments",initialState:Am,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Am)),reducers:{initializeIssueTypeFieldsAttachments:Oe.initialize,addIssueTypeFieldsAttachment:Oe.addOne,addIssueTypeFieldsAttachments:Oe.addMany,setIssueTypeFieldsAttachment:Oe.setOne,setIssueTypeFieldsAttachments:Oe.setMany,updateIssueTypeFieldsAttachment:Oe.updateOne,updateIssueTypeFieldsAttachments:Oe.updateMany,deleteIssueTypeFieldsAttachment:Oe.deleteOne,deleteIssueTypeFieldsAttachments:Oe.deleteMany}}),{initializeIssueTypeFieldsAttachments:Im,addIssueTypeFieldsAttachment:Tm,addIssueTypeFieldsAttachments:Om,setIssueTypeFieldsAttachment:Pm,setIssueTypeFieldsAttachments:Fm,updateIssueTypeFieldsAttachment:bm,updateIssueTypeFieldsAttachments:_m,deleteIssueTypeFieldsAttachment:gm,deleteIssueTypeFieldsAttachments:Mm}=wi.actions,Rm=t=>t.issueTypeFieldsAttachmentReducer.instances,vi=l.createSelector([Rm],t=>Object.values(t)),T_=y(l.createSelector([vi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),wm=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],vm=y(l.createSelector([vi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Em=wi.reducer,Pe=P(t=>t.uuid),Bm={instances:{}},Ei=l.createSlice({name:"issueTypeFieldValues",initialState:Bm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Bm)),reducers:{initializeIssueTypeFieldValues:Pe.initialize,addIssueTypeFieldValues:Pe.addOne,addIssueTypeFieldValuesMany:Pe.addMany,setIssueTypeFieldValues:Pe.setOne,setIssueTypeFieldValuesMany:Pe.setMany,updateIssueTypeFieldValues:Pe.updateOne,updateIssueTypeFieldValuesMany:Pe.updateMany,deleteIssueTypeFieldValues:Pe.deleteOne,deleteIssueTypeFieldValuesMany:Pe.deleteMany}}),{initializeIssueTypeFieldValues:Vm,addIssueTypeFieldValues:zm,addIssueTypeFieldValuesMany:Dm,setIssueTypeFieldValues:jm,setIssueTypeFieldValuesMany:qm,updateIssueTypeFieldValues:Cm,updateIssueTypeFieldValuesMany:$m,deleteIssueTypeFieldValues:Um,deleteIssueTypeFieldValuesMany:Lm}=Ei.actions,km=t=>t.issueTypeFieldValuesReducer.instances,Xt=l.createSelector([km],t=>Object.values(t)),O_=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),Nm=t=>s=>s.issueTypeFieldValuesReducer.instances[t],Gm=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Hm=Ei.reducer,Fe=P(t=>t.uuid),Wm={instances:{}},Bi=l.createSlice({name:"issueTypeFields",initialState:Wm,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Wm)),reducers:{initializeIssueTypeFields:Fe.initialize,addIssueTypeFields:Fe.addOne,addIssueTypeFieldsMany:Fe.addMany,setIssueTypeFields:Fe.setOne,setIssueTypeFieldsMany:Fe.setMany,updateIssueTypeFields:Fe.updateOne,updateIssueTypeFieldsMany:Fe.updateMany,deleteIssueTypeFields:Fe.deleteOne,deleteIssueTypeFieldsMany:Fe.deleteMany}}),{initializeIssueTypeFields:Km,addIssueTypeFields:Ym,addIssueTypeFieldsMany:Zm,setIssueTypeFields:Jm,setIssueTypeFieldsMany:Xm,updateIssueTypeFields:Qm,updateIssueTypeFieldsMany:xm,deleteIssueTypeFields:ep,deleteIssueTypeFieldsMany:tp}=Bi.actions,sp=t=>t.issueTypeFieldsReducer.instances,vt=l.createSelector([sp],t=>Object.values(t)),P_=y(l.createSelector([vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),F_=y(l.createSelector([vt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),b_=y(l.createSelector([vt,Xt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(c=>c.issue_type===e).map(c=>c.uuid));return S(s.filter(c=>n.has(c.fields_revision)))})),ip=t=>s=>s.issueTypeFieldsReducer.instances[t],np=y(l.createSelector([vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),cp=Bi.reducer,be=P(t=>t.uuid),ap={instances:{}},Vi=l.createSlice({name:"issueTypeFieldValuesAttachments",initialState:ap,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,ap)),reducers:{initializeIssueTypeFieldValuesAttachments:be.initialize,addIssueTypeFieldValuesAttachment:be.addOne,addIssueTypeFieldValuesAttachments:be.addMany,setIssueTypeFieldValuesAttachment:be.setOne,setIssueTypeFieldValuesAttachments:be.setMany,updateIssueTypeFieldValuesAttachment:be.updateOne,updateIssueTypeFieldValuesAttachments:be.updateMany,deleteIssueTypeFieldValuesAttachment:be.deleteOne,deleteIssueTypeFieldValuesAttachments:be.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:rp,addIssueTypeFieldValuesAttachment:dp,addIssueTypeFieldValuesAttachments:zi,setIssueTypeFieldValuesAttachment:up,setIssueTypeFieldValuesAttachments:lp,updateIssueTypeFieldValuesAttachment:op,updateIssueTypeFieldValuesAttachments:hp,deleteIssueTypeFieldValuesAttachment:mp,deleteIssueTypeFieldValuesAttachments:Di}=Vi.actions,pp=t=>t.issueTypeFieldValuesAttachmentReducer.instances,ji=l.createSelector([pp],t=>Object.values(t)),yp=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],fp=y(l.createSelector([ji,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Sp=y(l.createSelector([ji,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Ap=Vi.reducer,_e=P(t=>t.uuid),Ip={instances:{}},qi=l.createSlice({name:"issueTypeIdentifiers",initialState:Ip,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ip)),reducers:{initializeIssueTypeIdentifiers:_e.initialize,addIssueTypeIdentifier:_e.addOne,addIssueTypeIdentifiers:_e.addMany,setIssueTypeIdentifier:_e.setOne,setIssueTypeIdentifiers:_e.setMany,updateIssueTypeIdentifier:_e.updateOne,updateIssueTypeIdentifiers:_e.updateMany,deleteIssueTypeIdentifier:_e.deleteOne,deleteIssueTypeIdentifiers:_e.deleteMany}}),{initializeIssueTypeIdentifiers:Tp,addIssueTypeIdentifier:Op,addIssueTypeIdentifiers:Pp,setIssueTypeIdentifier:Fp,setIssueTypeIdentifiers:bp,updateIssueTypeIdentifier:_p,updateIssueTypeIdentifiers:gp,deleteIssueTypeIdentifier:Mp,deleteIssueTypeIdentifiers:Rp}=qi.actions,wp=t=>t.issueTypeIdentifierReducer.instances,Ci=l.createSelector([wp],t=>Object.values(t)),vp=t=>s=>s.issueTypeIdentifierReducer.instances[t],Ep=y(l.createSelector([Ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),__=y(l.createSelector([Ci,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),Bp=qi.reducer,ge=P(t=>t.uuid),Vp={instances:{}},$i=l.createSlice({name:"issueTypeIdentifierValues",initialState:Vp,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Vp)),reducers:{initializeIssueTypeIdentifierValues:ge.initialize,addIssueTypeIdentifierValue:ge.addOne,addIssueTypeIdentifierValues:ge.addMany,setIssueTypeIdentifierValue:ge.setOne,setIssueTypeIdentifierValues:ge.setMany,updateIssueTypeIdentifierValue:ge.updateOne,updateIssueTypeIdentifierValues:ge.updateMany,deleteIssueTypeIdentifierValue:ge.deleteOne,deleteIssueTypeIdentifierValues:ge.deleteMany}}),{initializeIssueTypeIdentifierValues:zp,addIssueTypeIdentifierValue:Dp,addIssueTypeIdentifierValues:jp,setIssueTypeIdentifierValue:qp,setIssueTypeIdentifierValues:Cp,updateIssueTypeIdentifierValue:$p,updateIssueTypeIdentifierValues:Up,deleteIssueTypeIdentifierValue:Lp,deleteIssueTypeIdentifierValues:kp}=$i.actions,Np=t=>t.issueTypeIdentifierValueReducer.instances,Qt=l.createSelector([Np],t=>Object.values(t)),Gp=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],Hp=y(l.createSelector([Qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),g_=y(l.createSelector([Qt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),M_=y(l.createSelector([Qt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type_identifier===s)))),Wp=$i.reducer,Me=P(t=>t.uuid),Kp={instances:{}},Ui=l.createSlice({name:"issueTypePriorities",initialState:Kp,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Kp)),reducers:{initializeIssueTypePriorities:Me.initialize,addIssueTypePriority:Me.addOne,addIssueTypePriorities:Me.addMany,setIssueTypePriority:Me.setOne,setIssueTypePriorities:Me.setMany,updateIssueTypePriority:Me.updateOne,updateIssueTypePriorities:Me.updateMany,deleteIssueTypePriority:Me.deleteOne,deleteIssueTypePriorities:Me.deleteMany}}),{initializeIssueTypePriorities:Yp,addIssueTypePriority:Zp,addIssueTypePriorities:Jp,setIssueTypePriority:Xp,setIssueTypePriorities:Qp,updateIssueTypePriority:xp,updateIssueTypePriorities:ey,deleteIssueTypePriority:ty,deleteIssueTypePriorities:sy}=Ui.actions,iy=t=>t.issueTypePriorityReducer.instances,Li=l.createSelector([iy],t=>S(Object.values(t).toSorted(Vc))),ki=t=>s=>s.issueTypePriorityReducer.instances[t],ny=y(l.createSelector([Li,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),R_=y(l.createSelector([Li,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),cy=Ui.reducer,Re=P(t=>t.uuid),ay={instances:{}},Ni=l.createSlice({name:"issueTypes",initialState:ay,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,ay)),reducers:{initializeIssueTypes:Re.initialize,addIssueType:Re.addOne,addIssueTypes:Re.addMany,setIssueType:Re.setOne,setIssueTypes:Re.setMany,updateIssueType:Re.updateOne,updateIssueTypes:Re.updateMany,deleteIssueType:Re.deleteOne,deleteIssueTypes:Re.deleteMany}}),{initializeIssueTypes:ry,addIssueType:dy,addIssueTypes:uy,setIssueType:ly,setIssueTypes:oy,updateIssueType:hy,updateIssueTypes:my,deleteIssueType:py,deleteIssueTypes:yy}=Ni.actions,fy=t=>t.issueTypeReducer.instances,Gi=l.createSelector(fy,t=>Object.values(t)),Sy=t=>s=>s.issueTypeReducer.instances[t],Ay=y(l.createSelector([Gi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),w_=y(l.createSelector([Gi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Iy=Ni.reducer,we=P(t=>t.uuid),Ty={instances:{}},Hi=l.createSlice({name:"issueTypeStatuses",initialState:Ty,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Ty)),reducers:{initializeIssueTypeStatuses:we.initialize,addIssueTypeStatus:we.addOne,addIssueTypeStatuses:we.addMany,setIssueTypeStatus:we.setOne,setIssueTypeStatuses:we.setMany,updateIssueTypeStatus:we.updateOne,updateIssueTypeStatuses:we.updateMany,deleteIssueTypeStatus:we.deleteOne,deleteIssueTypeStatuses:we.deleteMany}}),{initializeIssueTypeStatuses:Oy,addIssueTypeStatus:Py,addIssueTypeStatuses:Fy,setIssueTypeStatus:by,setIssueTypeStatuses:_y,updateIssueTypeStatus:gy,updateIssueTypeStatuses:My,deleteIssueTypeStatus:Ry,deleteIssueTypeStatuses:wy}=Hi.actions,vy=t=>t.issueTypeStatusReducer.instances,Wi=l.createSelector([vy],t=>S(Object.values(t).toSorted(Bc))),Ki=t=>s=>s.issueTypeStatusReducer.instances[t],Ey=y(l.createSelector([Wi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),v_=y(l.createSelector([Wi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),By=Hi.reducer,ve=P(t=>t.uuid),Vy={instances:{}},Yi=l.createSlice({name:"issueUpdates",initialState:Vy,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,Vy)),reducers:{initializeIssueUpdates:ve.initialize,addIssueUpdate:ve.addOne,addIssueUpdates:ve.addMany,setIssueUpdate:ve.setOne,setIssueUpdates:ve.setMany,updateIssueUpdate:ve.updateOne,updateIssueUpdates:ve.updateMany,deleteIssueUpdate:ve.deleteOne,deleteIssueUpdates:ve.deleteMany}}),{initializeIssueUpdates:zy,addIssueUpdate:Zi,addIssueUpdates:Ji,setIssueUpdate:Dy,setIssueUpdates:jy,updateIssueUpdate:qy,updateIssueUpdates:Cy,deleteIssueUpdate:Xi,deleteIssueUpdates:Qi}=Yi.actions,xi=t=>t.issueUpdateReducer.instances,en=l.createSelector([xi],t=>Object.values(t)),$y=y(l.createSelector([xi,(t,s)=>s],(t,s)=>t[s])),Uy=y(l.createSelector([en,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Ly=y(l.createSelector([en,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),ky=Yi.reducer,Ee=P(t=>t.id),Ny={instances:{},currentUser:null},tn=l.createSlice({name:"users",initialState:Ny,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Ny)).addCase(F,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:Ee.initialize,setUsers:Ee.setMany,setUser:Ee.setOne,addUsers:Ee.addMany,addUser:Ee.addOne,updateUsers:Ee.updateMany,updateUser:Ee.updateOne,deleteUser:Ee.deleteOne,deleteUsers:Ee.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload},setCurrentUserProfile:(t,s)=>{if(!t.currentUser)return;t.currentUser.profile=s.payload;const e=t.instances[t.currentUser.id];if(!e)throw new Error("Unable to find current user in users slice");e.profile=s.payload}}}),{initializeUsers:Gy,setUsers:Hy,setUser:Wy,addUsers:Ky,addUser:sn,updateUsers:Yy,updateUser:Zy,deleteUser:nn,deleteUsers:Jy,setCurrentUser:E_,setCurrentUserProfile:B_}=tn.actions,Xy=tn.reducer,Qy=t=>t.userReducer.currentUser,cn=t=>t.userReducer.instances,xt=l.createSelector([cn],t=>Object.values(t)),es=t=>s=>s.userReducer.instances[t],xy=y(l.createSelector([xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({id:n})=>e.has(n)))})),Be=P(t=>t.uuid),ef={instances:{}},an=l.createSlice({name:"organizationAccess",initialState:ef,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,ef)),reducers:{initializeOrganizationAccesses:Be.initialize,addOrganizationAccess:Be.addOne,addOrganizationAccesses:Be.addMany,setOrganizationAccess:Be.setOne,setOrganizationAccesses:Be.setMany,updateOrganizationAccess:Be.updateOne,updateOrganizationAccesses:Be.updateMany,deleteOrganizationAccess:Be.deleteOne,deleteOrganizationAccesses:Be.deleteMany}}),{initializeOrganizationAccesses:tf,addOrganizationAccess:sf,addOrganizationAccesses:nf,setOrganizationAccess:cf,setOrganizationAccesses:af,updateOrganizationAccess:rf,updateOrganizationAccesses:df,deleteOrganizationAccess:uf,deleteOrganizationAccesses:lf}=an.actions,of=an.reducer,ts=t=>t.organizationAccessReducer.instances,hf=t=>s=>s.organizationAccessReducer.instances[t],mf=y(l.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),V_=l.createSelector([Qy,ts],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.id))??null),pf=l.createSelector([ts],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return hs(s)}),z_=y(l.createSelector([cn,pf,(t,s)=>s],(t,s,e)=>S(Object.values(t).filter(n=>{const c=s[n.id];return!!c&&c.organization===e})))),Ve=P(t=>t.uuid),yf={instances:{}},rn=l.createSlice({name:"organizations",initialState:yf,extraReducers:t=>t.addMatcher(l.isAnyOf(T),s=>Object.assign(s,yf)),reducers:{initializeOrganizations:Ve.initialize,setOrganizations:Ve.setMany,setOrganization:Ve.setOne,addOrganizations:Ve.addMany,addOrganization:Ve.addOne,updateOrganizations:Ve.updateMany,updateOrganization:Ve.updateOne,deleteOrganization:Ve.deleteOne,deleteOrganizations:Ve.deleteMany}}),{initializeOrganizations:ff,setOrganizations:Sf,setOrganization:Af,addOrganizations:If,addOrganization:Tf,updateOrganizations:Of,updateOrganization:Pf,deleteOrganization:Ff,deleteOrganizations:bf}=rn.actions,_f=t=>t.organizationReducer.instances,gf=l.createSelector([_f],t=>Object.values(t)),Mf=t=>s=>s.organizationReducer.instances[t],Rf=y(l.createSelector([gf,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),wf=rn.reducer,vf=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:dt.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},Ef={deletedRequests:[],latestRetryTime:0},dn=l.createSlice({name:"outbox",initialState:Ef,extraReducers:t=>t.addCase(T,s=>Object.assign(s,Ef)),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 vf(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}}}),D_=t=>t.outboxReducer.deletedRequests,j_=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:Bf,markForDeletion:q_,markAsDeleted:Vf,_setLatestRetryTime:zf}=dn.actions,Df=dn.reducer,ze=P(t=>t.uuid),jf={instances:{}},un=l.createSlice({name:"projectAccess",initialState:jf,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,jf)),reducers:{initializeProjectAccesses:ze.initialize,addProjectAccess:ze.addOne,addProjectAccesses:ze.addMany,setProjectAccess:ze.setOne,setProjectAccesses:ze.setMany,updateProjectAccess:ze.updateOne,updateProjectAccesses:ze.updateMany,deleteProjectAccess:ze.deleteOne,deleteProjectAccesses:ze.deleteMany}}),{initializeProjectAccesses:qf,addProjectAccess:Cf,addProjectAccesses:$f,setProjectAccess:Uf,setProjectAccesses:Lf,updateProjectAccess:kf,updateProjectAccesses:Nf,deleteProjectAccess:Gf,deleteProjectAccesses:Hf}=un.actions,Wf=un.reducer,ln=t=>t.projectAccessReducer.instances,Et=l.createSelector(ln,t=>Object.values(t)),Kf=t=>s=>s.projectAccessReducer.instances[t],Yf=y(l.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),C_=y(l.createSelector([ln,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.project===s)))),$_=y(l.createSelector([Et,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(c=>c.project===s))e[n.user]=n;return e})),U_=y(l.createSelector([xt,Et,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.project===e).map(c=>c.user));return S(t.filter(c=>n.has(c.id)))})),De=P(t=>t.uuid),Zf={instances:{}},on=l.createSlice({name:"projectAttachments",initialState:Zf,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,Zf)),reducers:{initializeProjectAttachments:De.initialize,addProjectAttachment:De.addOne,addProjectAttachments:De.addMany,setProjectAttachment:De.setOne,setProjectAttachments:De.setMany,updateProjectAttachment:De.updateOne,updateProjectAttachments:De.updateMany,deleteProjectAttachment:De.deleteOne,deleteProjectAttachments:De.deleteMany}}),{initializeProjectAttachments:Jf,addProjectAttachment:Xf,addProjectAttachments:Qf,setProjectAttachment:xf,setProjectAttachments:eS,updateProjectAttachment:tS,updateProjectAttachments:sS,deleteProjectAttachment:iS,deleteProjectAttachments:nS}=on.actions,cS=t=>t.projectAttachmentReducer.instances,hn=l.createSelector([cS],t=>Object.values(t)),aS=t=>s=>s.projectAttachmentReducer.instances[t],rS=y(l.createSelector([hn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),L_=y(l.createSelector([hn,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>s===e)))),dS=on.reducer,je=P(t=>t.uuid),uS={instances:{}},mn=l.createSlice({name:"projectComments",initialState:uS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,uS)),reducers:{initializeProjectComments:je.initialize,addProjectComment:je.addOne,addProjectComments:je.addMany,setProjectComment:je.setOne,setProjectComments:je.setMany,updateProjectComment:je.updateOne,updateProjectComments:je.updateMany,deleteProjectComment:je.deleteOne,deleteProjectComments:je.deleteMany}}),{initializeProjectComments:lS,addProjectComment:oS,addProjectComments:hS,setProjectComment:mS,setProjectComments:pS,updateProjectComment:yS,updateProjectComments:fS,deleteProjectComment:SS,deleteProjectComments:AS}=mn.actions,IS=t=>t.projectCommentReducer.instances,ss=l.createSelector([IS],t=>S(Object.values(t).toSorted(At))),TS=t=>s=>s.projectCommentReducer.instances[t],OS=y(l.createSelector([ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),k_=y(l.createSelector([ss,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),N_=y(l.createSelector([ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.project)))})),PS=mn.reducer,qe=P(t=>t.uuid),FS={instances:{}},pn=l.createSlice({name:"projectFiles",initialState:FS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,FS)),reducers:{initializeProjectFiles:qe.initialize,setProjectFile:qe.setOne,setProjectFiles:qe.setMany,addProjectFile:qe.addOne,addProjectFiles:qe.addMany,updateProjectFile:qe.updateOne,updateProjectFiles:qe.updateMany,deleteProjectFile:qe.deleteOne,deleteProjectFiles:qe.deleteMany}}),{initializeProjectFiles:bS,setProjectFile:_S,setProjectFiles:gS,addProjectFile:MS,addProjectFiles:RS,updateProjectFile:wS,updateProjectFiles:vS,deleteProjectFile:ES,deleteProjectFiles:BS}=pn.actions,VS=t=>t.projectFileReducer.instances,zS=l.createSelector([VS],t=>S(Object.values(t).toSorted((s,e)=>s.z_index-e.z_index))),DS=t=>s=>s.projectFileReducer.instances[t],jS=y(l.createSelector([zS,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),qS=pn.reducer,Ce=P(t=>t.uuid),CS={instances:{}},yn=l.createSlice({name:"projects",initialState:CS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,CS)),reducers:{initializeProjects:Ce.initialize,setProjects:Ce.setMany,setProject:Ce.setOne,addProjects:Ce.addMany,addProject:Ce.addOne,updateProjects:Ce.updateMany,updateProject:Ce.updateOne,deleteProject:Ce.deleteOne,deleteProjects:Ce.deleteMany}}),{initializeProjects:$S,setProjects:US,setProject:LS,addProjects:kS,addProject:NS,updateProjects:GS,updateProject:HS,deleteProject:WS,deleteProjects:KS}=yn.actions,YS=yn.reducer,ZS=t=>t.projectReducer.instances,is=l.createSelector([ZS],t=>Object.values(t)),JS=t=>s=>s.projectReducer.instances[t],XS=y(l.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),G_=y(l.createSelector([is,Et,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.user===e).map(c=>c.project));return S(t.filter(c=>n.has(c.uuid)))})),H_=y(l.createSelector([is,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),$e=P(({uuid:t})=>t),QS={instances:{}},fn=l.createSlice({name:"procedureInitiatives",initialState:QS,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,QS)),reducers:{initializeProcedureInitiatives:$e.initialize,addProcedureInitiative:$e.addOne,addProcedureInitiatives:$e.addMany,setProcedureInitiative:$e.setOne,setProcedureInitiatives:$e.setMany,updateProcedureInitiative:$e.updateOne,updateProcedureInitiatives:$e.updateMany,deleteProcedureInitiative:$e.deleteOne,deleteProcedureInitiatives:$e.deleteMany}}),{initializeProcedureInitiatives:xS,addProcedureInitiative:eA,addProcedureInitiatives:tA,setProcedureInitiative:sA,setProcedureInitiatives:iA,updateProcedureInitiative:nA,updateProcedureInitiatives:cA,deleteProcedureInitiative:aA,deleteProcedureInitiatives:rA}=fn.actions,dA=fn.reducer,uA=t=>t.procedureInitiativeReducer.instances,ns=l.createSelector([uA],t=>Object.values(t)),lA=t=>s=>s.procedureInitiativeReducer.instances[t],oA=y(l.createSelector([ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),W_=y(l.createSelector([ns,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),K_=y(l.createSelector([ns,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),Ue=P(({uuid:t})=>t),hA={instances:{}},Sn=l.createSlice({name:"procedures",initialState:hA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,hA)),reducers:{initializeProcedures:Ue.initialize,addProcedure:Ue.addOne,addProcedures:Ue.addMany,setProcedure:Ue.setOne,setProcedures:Ue.setMany,updateProcedure:Ue.updateOne,updateProcedures:Ue.updateMany,deleteProcedure:Ue.deleteOne,deleteProcedures:Ue.deleteMany}}),{initializeProcedures:mA,addProcedure:pA,addProcedures:Pt,setProcedure:yA,setProcedures:fA,updateProcedure:SA,updateProcedures:AA,deleteProcedure:IA,deleteProcedures:Ft}=Sn.actions,TA=Sn.reducer,OA=t=>t.procedureReducer.instances,ot=l.createSelector([OA],t=>Object.values(t)),PA=t=>s=>s.procedureReducer.instances[t],FA=y(l.createSelector([ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Y_=y(l.createSelector([ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),bA=y(l.createSelector([ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),_A=y(l.createSelector([ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),gA=y(l.createSelector([ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({asset:n})=>e.has(n)))})),MA=y(l.createSelector([ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_initiative===s)))),Le=P(t=>t.uuid),RA={instances:{}},An=l.createSlice({name:"procedureStepAssignees",initialState:RA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,RA)),reducers:{initializeProcedureStepAssignees:Le.initialize,addProcedureStepAssignee:Le.addOne,addProcedureStepAssignees:Le.addMany,setProcedureStepAssignee:Le.setOne,setProcedureStepAssignees:Le.setMany,updateProcedureStepAssignee:Le.updateOne,updateProcedureStepAssignees:Le.updateMany,deleteProcedureStepAssignee:Le.deleteOne,deleteProcedureStepAssignees:Le.deleteMany}}),{initializeProcedureStepAssignees:wA,addProcedureStepAssignee:vA,addProcedureStepAssignees:EA,setProcedureStepAssignee:BA,setProcedureStepAssignees:VA,updateProcedureStepAssignee:zA,updateProcedureStepAssignees:DA,deleteProcedureStepAssignee:jA,deleteProcedureStepAssignees:qA}=An.actions,CA=t=>t.procedureStepAssigneeReducer.instances,Bt=l.createSelector([CA],t=>Object.values(t)),$A=t=>s=>s.procedureStepAssigneeReducer.instances[t],UA=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Z_=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),J_=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),X_=y(l.createSelector([Bt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),LA=An.reducer,ke=P(t=>t.uuid),kA={instances:{}},In=l.createSlice({name:"procedureStepComments",initialState:kA,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,kA)),reducers:{initializeProcedureStepComments:ke.initialize,addProcedureStepComment:ke.addOne,addProcedureStepComments:ke.addMany,setProcedureStepComment:ke.setOne,setProcedureStepComments:ke.setMany,updateProcedureStepComment:ke.updateOne,updateProcedureStepComments:ke.updateMany,deleteProcedureStepComment:ke.deleteOne,deleteProcedureStepComments:ke.deleteMany}}),{initializeProcedureStepComments:NA,addProcedureStepComment:GA,addProcedureStepComments:HA,setProcedureStepComment:WA,setProcedureStepComments:KA,updateProcedureStepComment:YA,updateProcedureStepComments:ZA,deleteProcedureStepComment:JA,deleteProcedureStepComments:XA}=In.actions,QA=t=>t.procedureStepCommentReducer.instances,Vt=l.createSelector([QA],t=>Object.values(t)),xA=t=>s=>s.procedureStepCommentReducer.instances[t],eI=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Q_=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),x_=y(l.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),eg=y(l.createSelector([Vt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),tI=In.reducer,Ne=P(t=>t.uuid),sI={instances:{}},Tn=l.createSlice({name:"procedureStepDefaultAssignees",initialState:sI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,sI)),reducers:{initializeProcedureStepDefaultAssignees:Ne.initialize,addProcedureStepDefaultAssignee:Ne.addOne,addProcedureStepDefaultAssignees:Ne.addMany,setProcedureStepDefaultAssignee:Ne.setOne,setProcedureStepDefaultAssignees:Ne.setMany,updateProcedureStepDefaultAssignee:Ne.updateOne,updateProcedureStepDefaultAssignees:Ne.updateMany,deleteProcedureStepDefaultAssignee:Ne.deleteOne,deleteProcedureStepDefaultAssignees:Ne.deleteMany}}),{initializeProcedureStepDefaultAssignees:iI,addProcedureStepDefaultAssignee:nI,addProcedureStepDefaultAssignees:cI,setProcedureStepDefaultAssignee:aI,setProcedureStepDefaultAssignees:rI,updateProcedureStepDefaultAssignee:dI,updateProcedureStepDefaultAssignees:uI,deleteProcedureStepDefaultAssignee:lI,deleteProcedureStepDefaultAssignees:oI}=Tn.actions,hI=t=>t.procedureStepDefaultAssigneeReducer.instances,On=l.createSelector([hI],t=>Object.values(t)),mI=t=>s=>s.procedureStepDefaultAssigneeReducer.instances[t],pI=y(l.createSelector([On,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),tg=y(l.createSelector([On,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),yI=Tn.reducer,Ge=P(t=>t.uuid),fI={instances:{}},Pn=l.createSlice({name:"procedureStepDefaultReviewers",initialState:fI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,fI)),reducers:{initializeProcedureStepDefaultReviewers:Ge.initialize,addProcedureStepDefaultReviewer:Ge.addOne,addProcedureStepDefaultReviewers:Ge.addMany,setProcedureStepDefaultReviewer:Ge.setOne,setProcedureStepDefaultReviewers:Ge.setMany,updateProcedureStepDefaultReviewer:Ge.updateOne,updateProcedureStepDefaultReviewers:Ge.updateMany,deleteProcedureStepDefaultReviewer:Ge.deleteOne,deleteProcedureStepDefaultReviewers:Ge.deleteMany}}),{initializeProcedureStepDefaultReviewers:SI,addProcedureStepDefaultReviewer:AI,addProcedureStepDefaultReviewers:II,setProcedureStepDefaultReviewer:TI,setProcedureStepDefaultReviewers:OI,updateProcedureStepDefaultReviewer:PI,updateProcedureStepDefaultReviewers:FI,deleteProcedureStepDefaultReviewer:bI,deleteProcedureStepDefaultReviewers:_I}=Pn.actions,gI=t=>t.procedureStepDefaultReviewerReducer.instances,Fn=l.createSelector([gI],t=>Object.values(t)),MI=t=>s=>s.procedureStepDefaultReviewerReducer.instances[t],RI=y(l.createSelector([Fn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),sg=y(l.createSelector([Fn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),wI=Pn.reducer,He=P(t=>t.uuid),vI={instances:{}},bn=l.createSlice({name:"procedureStepEvents",initialState:vI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,vI)),reducers:{initializeProcedureStepEvents:He.initialize,addProcedureStepEvent:He.addOne,addProcedureStepEvents:He.addMany,setProcedureStepEvent:He.setOne,setProcedureStepEvents:He.setMany,updateProcedureStepEvent:He.updateOne,updateProcedureStepEvents:He.updateMany,deleteProcedureStepEvent:He.deleteOne,deleteProcedureStepEvents:He.deleteMany}}),{initializeProcedureStepEvents:EI,addProcedureStepEvent:BI,addProcedureStepEvents:VI,setProcedureStepEvent:zI,setProcedureStepEvents:DI,updateProcedureStepEvent:jI,updateProcedureStepEvents:qI,deleteProcedureStepEvent:CI,deleteProcedureStepEvents:$I}=bn.actions,UI=t=>t.procedureStepEventReducer.instances,zt=l.createSelector([UI],t=>Object.values(t)),LI=t=>s=>s.procedureStepEventReducer.instances[t],kI=y(l.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ig=y(l.createSelector([zt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),ng=y(l.createSelector([zt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),cg=y(l.createSelector([zt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),NI=bn.reducer,We=P(t=>t.uuid),GI={instances:{}},_n=l.createSlice({name:"procedureStepFieldsAttachments",initialState:GI,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,GI)),reducers:{initializeProcedureStepFieldsAttachments:We.initialize,addProcedureStepFieldsAttachment:We.addOne,addProcedureStepFieldsAttachments:We.addMany,setProcedureStepFieldsAttachment:We.setOne,setProcedureStepFieldsAttachments:We.setMany,updateProcedureStepFieldsAttachment:We.updateOne,updateProcedureStepFieldsAttachments:We.updateMany,deleteProcedureStepFieldsAttachment:We.deleteOne,deleteProcedureStepFieldsAttachments:We.deleteMany}}),{initializeProcedureStepFieldsAttachments:HI,addProcedureStepFieldsAttachment:WI,addProcedureStepFieldsAttachments:gn,setProcedureStepFieldsAttachment:KI,setProcedureStepFieldsAttachments:YI,updateProcedureStepFieldsAttachment:ZI,updateProcedureStepFieldsAttachments:JI,deleteProcedureStepFieldsAttachment:XI,deleteProcedureStepFieldsAttachments:Mn}=_n.actions,QI=t=>t.procedureStepFieldsAttachmentReducer.instances,Rn=l.createSelector([QI],t=>Object.values(t)),xI=y(l.createSelector([Rn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),eT=t=>s=>s.procedureStepFieldsAttachmentReducer.instances[t],tT=y(l.createSelector([Rn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),sT=_n.reducer,Ke=P(t=>t.uuid),iT={instances:{}},wn=l.createSlice({name:"procedureStepFields",initialState:iT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,iT)),reducers:{initializeProcedureStepFields:Ke.initialize,addProcedureStepFields:Ke.addOne,addProcedureStepFieldsMany:Ke.addMany,setProcedureStepFields:Ke.setOne,setProcedureStepFieldsMany:Ke.setMany,updateProcedureStepFields:Ke.updateOne,updateProcedureStepFieldsMany:Ke.updateMany,deleteProcedureStepFields:Ke.deleteOne,deleteProcedureStepFieldsMany:Ke.deleteMany}}),{initializeProcedureStepFields:nT,addProcedureStepFields:cT,addProcedureStepFieldsMany:aT,setProcedureStepFields:rT,setProcedureStepFieldsMany:dT,updateProcedureStepFields:uT,updateProcedureStepFieldsMany:lT,deleteProcedureStepFields:oT,deleteProcedureStepFieldsMany:hT}=wn.actions,vn=t=>t.procedureStepFieldsReducer.instances,cs=l.createSelector([vn],t=>Object.values(t)),ag=y(l.createSelector([cs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),rg=y(l.createSelector([cs,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_step===s).toSorted(At).pop())),dg=l.createSelector([vn],t=>{const s={};for(const e of Object.values(t)){const n=s[e.procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.procedure_step]=e)}return s}),mT=t=>s=>s.procedureStepFieldsReducer.instances[t],pT=y(l.createSelector([cs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),yT=wn.reducer,Ye=P(t=>t.uuid),fT={instances:{}},En=l.createSlice({name:"procedureStepFieldValuesAttachments",initialState:fT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,fT)),reducers:{initializeProcedureStepFieldValuesAttachments:Ye.initialize,addProcedureStepFieldValuesAttachment:Ye.addOne,addProcedureStepFieldValuesAttachments:Ye.addMany,setProcedureStepFieldValuesAttachment:Ye.setOne,setProcedureStepFieldValuesAttachments:Ye.setMany,updateProcedureStepFieldValuesAttachment:Ye.updateOne,updateProcedureStepFieldValuesAttachments:Ye.updateMany,deleteProcedureStepFieldValuesAttachment:Ye.deleteOne,deleteProcedureStepFieldValuesAttachments:Ye.deleteMany}}),{initializeProcedureStepFieldValuesAttachments:ST,addProcedureStepFieldValuesAttachment:AT,addProcedureStepFieldValuesAttachments:Bn,setProcedureStepFieldValuesAttachment:IT,setProcedureStepFieldValuesAttachments:TT,updateProcedureStepFieldValuesAttachment:OT,updateProcedureStepFieldValuesAttachments:PT,deleteProcedureStepFieldValuesAttachment:FT,deleteProcedureStepFieldValuesAttachments:Vn}=En.actions,bT=t=>t.procedureStepFieldValuesAttachmentReducer.instances,zn=l.createSelector([bT],t=>Object.values(t)),_T=t=>s=>s.procedureStepFieldValuesAttachmentReducer.instances[t],gT=y(l.createSelector([zn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),MT=y(l.createSelector([zn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),RT=En.reducer,Ze=P(t=>t.uuid),wT={instances:{}},Dn=l.createSlice({name:"procedureStepFieldValues",initialState:wT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,wT)),reducers:{initializeProcedureStepFieldValues:Ze.initialize,addProcedureStepFieldValues:Ze.addOne,addProcedureStepFieldValuesMany:Ze.addMany,setProcedureStepFieldValues:Ze.setOne,setProcedureStepFieldValuesMany:Ze.setMany,updateProcedureStepFieldValues:Ze.updateOne,updateProcedureStepFieldValuesMany:Ze.updateMany,deleteProcedureStepFieldValues:Ze.deleteOne,deleteProcedureStepFieldValuesMany:Ze.deleteMany}}),{initializeProcedureStepFieldValues:vT,addProcedureStepFieldValues:ET,addProcedureStepFieldValuesMany:BT,setProcedureStepFieldValues:VT,setProcedureStepFieldValuesMany:zT,updateProcedureStepFieldValues:DT,updateProcedureStepFieldValuesMany:jT,deleteProcedureStepFieldValues:qT,deleteProcedureStepFieldValuesMany:CT}=Dn.actions,$T=Dn.reducer,UT=t=>t.procedureStepFieldValuesReducer.instances,ht=l.createSelector([UT],t=>Object.values(t)),ug=y(l.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),lg=y(l.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),LT=t=>s=>s.procedureStepFieldValuesReducer.instances[t],kT=y(l.createSelector([ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),og=y(l.createSelector([ht,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),Je=P(t=>t.uuid),NT={instances:{}},jn=l.createSlice({name:"procedureStepFieldValuesReviews",initialState:NT,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,NT)),reducers:{initializeProcedureStepFieldValuesReviews:Je.initialize,addProcedureStepFieldValuesReview:Je.addOne,addProcedureStepFieldValuesReviews:Je.addMany,setProcedureStepFieldValuesReview:Je.setOne,setProcedureStepFieldValuesReviews:Je.setMany,updateProcedureStepFieldValuesReview:Je.updateOne,updateProcedureStepFieldValuesReviews:Je.updateMany,deleteProcedureStepFieldValuesReview:Je.deleteOne,deleteProcedureStepFieldValuesReviews:Je.deleteMany}}),{initializeProcedureStepFieldValuesReviews:GT,addProcedureStepFieldValuesReview:HT,addProcedureStepFieldValuesReviews:qn,setProcedureStepFieldValuesReview:WT,setProcedureStepFieldValuesReviews:KT,updateProcedureStepFieldValuesReview:YT,updateProcedureStepFieldValuesReviews:ZT,deleteProcedureStepFieldValuesReview:JT,deleteProcedureStepFieldValuesReviews:Cn}=jn.actions,XT=t=>t.procedureStepFieldValuesReviewReducer.instances,mt=l.createSelector([XT],t=>Object.values(t)),QT=t=>s=>s.procedureStepFieldValuesReviewReducer.instances[t],xT=y(l.createSelector([mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),eO=y(l.createSelector([mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),hg=y(l.createSelector([mt,(t,s)=>s],(t,s)=>{let e;for(const n of t){const{field_values:c}=n;c===s&&(!e||e.submitted_at<=n.submitted_at)&&(e=n)}return e})),mg=y(l.createSelector([ht,mt,(t,s)=>s],(t,s,e)=>{const n=new Set(w(t.filter(({procedure:c})=>e===c)));return S(s.filter(({field_values:c})=>n.has(c)))})),pg=y(l.createSelector([ht,mt,(t,s)=>s,(t,s,e)=>e],(t,s,e,n)=>{const c=new Set(w(t.filter(({procedure_step:r,procedure:a})=>e===a&&r===n)));return S(s.filter(({field_values:r})=>c.has(r)))})),yg=l.createSelector([mt],t=>{const s={};for(const e of t){const{field_values:n}=e,c=s[n];(!c||c.submitted_at<=e.submitted_at)&&(s[n]=e)}return s}),tO=jn.reducer,Xe=P(t=>t.uuid),sO={instances:{}},$n=l.createSlice({name:"procedureStepReviewers",initialState:sO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,sO)),reducers:{initializeProcedureStepReviewers:Xe.initialize,addProcedureStepReviewer:Xe.addOne,addProcedureStepReviewers:Xe.addMany,setProcedureStepReviewer:Xe.setOne,setProcedureStepReviewers:Xe.setMany,updateProcedureStepReviewer:Xe.updateOne,updateProcedureStepReviewers:Xe.updateMany,deleteProcedureStepReviewer:Xe.deleteOne,deleteProcedureStepReviewers:Xe.deleteMany}}),{initializeProcedureStepReviewers:iO,addProcedureStepReviewer:nO,addProcedureStepReviewers:cO,setProcedureStepReviewer:aO,setProcedureStepReviewers:rO,updateProcedureStepReviewer:dO,updateProcedureStepReviewers:uO,deleteProcedureStepReviewer:lO,deleteProcedureStepReviewers:oO}=$n.actions,hO=t=>t.procedureStepReviewerReducer.instances,Dt=l.createSelector([hO],t=>Object.values(t)),mO=t=>s=>s.procedureStepReviewerReducer.instances[t],pO=y(l.createSelector([Dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fg=y(l.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),Sg=y(l.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_step===s)))),Ag=y(l.createSelector([Dt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>S(t.filter(({procedure:n,procedure_step:c})=>n===s&&c===e)))),yO=$n.reducer,Qe=P(t=>t.uuid),fO={instances:{}},Un=l.createSlice({name:"procedureSteps",initialState:fO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,fO)),reducers:{initializeProcedureSteps:Qe.initialize,setProcedureStep:Qe.setOne,setProcedureSteps:Qe.setMany,addProcedureStep:Qe.addOne,addProcedureSteps:Qe.addMany,updateProcedureStep:Qe.updateOne,updateProcedureSteps:Qe.updateMany,deleteProcedureStep:Qe.deleteOne,deleteProcedureSteps:Qe.deleteMany}}),{initializeProcedureSteps:SO,setProcedureStep:AO,setProcedureSteps:IO,addProcedureStep:TO,addProcedureSteps:OO,updateProcedureStep:PO,updateProcedureSteps:FO,deleteProcedureStep:bO,deleteProcedureSteps:_O}=Un.actions,gO=Un.reducer,Ln=t=>t.procedureStepReducer.instances,MO=t=>s=>s.procedureStepReducer.instances[t],kn=l.createSelector([Ln],t=>Object.values(t).toSorted((s,e)=>s.order-e.order)),Ig=y(l.createSelector([Ln,(t,s)=>s],(t,s)=>{const e={};for(const[n,c]of Object.entries(t))c.procedure_type===s&&(e[n]=c);return hs(e)})),Tg=y(l.createSelector([kn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),RO=y(l.createSelector([kn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xe=P(({uuid:t})=>t),wO={instances:{}},Nn=l.createSlice({name:"procedureTypeAttachments",initialState:wO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,wO)),reducers:{initializeProcedureTypeAttachments:xe.initialize,addProcedureTypeAttachment:xe.addOne,addProcedureTypeAttachments:xe.addMany,setProcedureTypeAttachment:xe.setOne,setProcedureTypeAttachments:xe.setMany,updateProcedureTypeAttachment:xe.updateOne,updateProcedureTypeAttachments:xe.updateMany,deleteProcedureTypeAttachment:xe.deleteOne,deleteProcedureTypeAttachments:xe.deleteMany}}),{initializeProcedureTypeAttachments:vO,addProcedureTypeAttachment:EO,addProcedureTypeAttachments:BO,setProcedureTypeAttachment:VO,setProcedureTypeAttachments:zO,updateProcedureTypeAttachment:DO,updateProcedureTypeAttachments:jO,deleteProcedureTypeAttachment:qO,deleteProcedureTypeAttachments:CO}=Nn.actions,$O=Nn.reducer,UO=t=>t.procedureTypeAttachmentReducer.instances,Gn=l.createSelector([UO],t=>Object.values(t)),LO=t=>s=>s.procedureTypeAttachmentReducer.instances[t],kO=y(l.createSelector([Gn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Og=y(l.createSelector([Gn,(t,s)=>s],(t,s)=>S(t.filter(({procedure_type:e})=>s===e)))),et=P(({uuid:t})=>t),NO={instances:{}},Hn=l.createSlice({name:"procedureTypeFieldsAttachments",initialState:NO,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,NO)),reducers:{initializeProcedureTypeFieldsAttachments:et.initialize,addProcedureTypeFieldsAttachment:et.addOne,addProcedureTypeFieldsAttachments:et.addMany,setProcedureTypeFieldsAttachment:et.setOne,setProcedureTypeFieldsAttachments:et.setMany,updateProcedureTypeFieldsAttachment:et.updateOne,updateProcedureTypeFieldsAttachments:et.updateMany,deleteProcedureTypeFieldsAttachment:et.deleteOne,deleteProcedureTypeFieldsAttachments:et.deleteMany}}),{initializeProcedureTypeFieldsAttachments:GO,addProcedureTypeFieldsAttachment:HO,addProcedureTypeFieldsAttachments:WO,setProcedureTypeFieldsAttachment:KO,setProcedureTypeFieldsAttachments:YO,updateProcedureTypeFieldsAttachment:ZO,updateProcedureTypeFieldsAttachments:JO,deleteProcedureTypeFieldsAttachment:XO,deleteProcedureTypeFieldsAttachments:QO}=Hn.actions,xO=Hn.reducer,eP=t=>t.procedureTypeFieldsAttachmentReducer.instances,Wn=l.createSelector([eP],t=>Object.values(t)),Pg=y(l.createSelector([Wn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),tP=t=>s=>s.procedureTypeFieldsAttachmentReducer.instances[t],sP=y(l.createSelector([Wn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),tt=P(({uuid:t})=>t),iP={instances:{}},Kn=l.createSlice({name:"procedureTypeFields",initialState:iP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,iP)),reducers:{initializeProcedureTypeFields:tt.initialize,addProcedureTypeFields:tt.addOne,addProcedureTypeFieldsMany:tt.addMany,setProcedureTypeFields:tt.setOne,setProcedureTypeFieldsMany:tt.setMany,updateProcedureTypeFields:tt.updateOne,updateProcedureTypeFieldsMany:tt.updateMany,deleteProcedureTypeFields:tt.deleteOne,deleteProcedureTypeFieldsMany:tt.deleteMany}}),{initializeProcedureTypeFields:nP,addProcedureTypeFields:cP,addProcedureTypeFieldsMany:aP,setProcedureTypeFields:rP,setProcedureTypeFieldsMany:dP,updateProcedureTypeFields:uP,updateProcedureTypeFieldsMany:lP,deleteProcedureTypeFields:oP,deleteProcedureTypeFieldsMany:hP}=Kn.actions,mP=Kn.reducer,pP=t=>t.procedureTypeFieldsReducer.instances,as=l.createSelector([pP],t=>Object.values(t)),Fg=y(l.createSelector([as,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure_type===s)))),bg=y(l.createSelector([as,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),yP=t=>s=>s.procedureTypeFieldsReducer.instances[t],fP=y(l.createSelector([as,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),st=P(({uuid:t})=>t),SP={instances:{}},Yn=l.createSlice({name:"procedureFieldValuesAttachments",initialState:SP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,SP)),reducers:{initializeProcedureFieldValuesAttachments:st.initialize,addProcedureFieldValuesAttachment:st.addOne,addProcedureFieldValuesAttachments:st.addMany,setProcedureFieldValuesAttachment:st.setOne,setProcedureFieldValuesAttachments:st.setMany,updateProcedureFieldValuesAttachment:st.updateOne,updateProcedureFieldValuesAttachments:st.updateMany,deleteProcedureFieldValuesAttachment:st.deleteOne,deleteProcedureFieldValuesAttachments:st.deleteMany}}),{initializeProcedureFieldValuesAttachments:AP,addProcedureFieldValuesAttachment:IP,addProcedureFieldValuesAttachments:Zn,setProcedureFieldValuesAttachment:TP,setProcedureFieldValuesAttachments:OP,updateProcedureFieldValuesAttachment:PP,updateProcedureFieldValuesAttachments:FP,deleteProcedureFieldValuesAttachment:bP,deleteProcedureFieldValuesAttachments:Jn}=Yn.actions,_P=Yn.reducer,gP=t=>t.procedureFieldValuesAttachmentReducer.instances,Xn=l.createSelector([gP],t=>Object.values(t)),MP=t=>s=>s.procedureFieldValuesAttachmentReducer.instances[t],RP=y(l.createSelector([Xn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),wP=y(l.createSelector([Xn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),it=P(({uuid:t})=>t),vP={instances:{}},Qn=l.createSlice({name:"procedureFieldValues",initialState:vP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,V,F),s=>Object.assign(s,vP)),reducers:{initializeProcedureFieldValues:it.initialize,addProcedureFieldValues:it.addOne,addProcedureFieldValuesMany:it.addMany,setProcedureFieldValues:it.setOne,setProcedureFieldValuesMany:it.setMany,updateProcedureFieldValues:it.updateOne,updateProcedureFieldValuesMany:it.updateMany,deleteProcedureFieldValues:it.deleteOne,deleteProcedureFieldValuesMany:it.deleteMany}}),{initializeProcedureFieldValues:EP,addProcedureFieldValues:BP,addProcedureFieldValuesMany:VP,setProcedureFieldValues:zP,setProcedureFieldValuesMany:DP,updateProcedureFieldValues:jP,updateProcedureFieldValuesMany:qP,deleteProcedureFieldValues:CP,deleteProcedureFieldValuesMany:$P}=Qn.actions,UP=Qn.reducer,LP=t=>t.procedureFieldValuesReducer.instances,xn=l.createSelector([LP],t=>Object.values(t)),_g=y(l.createSelector([xn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.procedure===s)))),kP=t=>s=>s.procedureFieldValuesReducer.instances[t],NP=y(l.createSelector([xn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),nt=P(t=>t.uuid),GP={instances:{}},ec=l.createSlice({name:"procedureTypes",initialState:GP,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,GP)),reducers:{initializeProcedureTypes:nt.initialize,addProcedureType:nt.addOne,addProcedureTypes:nt.addMany,setProcedureType:nt.setOne,setProcedureTypes:nt.setMany,updateProcedureType:nt.updateOne,updateProcedureTypes:nt.updateMany,deleteProcedureType:nt.deleteOne,deleteProcedureTypes:nt.deleteMany}}),{initializeProcedureTypes:HP,addProcedureType:WP,addProcedureTypes:KP,setProcedureType:YP,setProcedureTypes:ZP,updateProcedureType:JP,updateProcedureTypes:XP,deleteProcedureType:QP,deleteProcedureTypes:xP}=ec.actions,eF=ec.reducer,tF=t=>t.procedureTypeReducer.instances,tc=l.createSelector([tF],t=>Object.values(t)),sF=t=>s=>s.procedureTypeReducer.instances[t],iF=y(l.createSelector([tc,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gg=y(l.createSelector([tc,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Mg={isRehydrated:!1},sc=l.createSlice({name:"rehydrated",initialState:Mg,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:Rg}=sc.actions,wg=t=>t.rehydratedReducer.isRehydrated,nF=sc.reducer,ct=P(t=>t.uuid),cF={instances:{}},ic=l.createSlice({name:"teamMemberships",initialState:cF,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,cF)),reducers:{initializeTeamMemberships:ct.initialize,addTeamMembership:ct.addOne,addTeamMemberships:ct.addMany,setTeamMembership:ct.setOne,setTeamMemberships:ct.setMany,updateTeamMembership:ct.updateOne,updateTeamMemberships:ct.updateMany,deleteTeamMembership:ct.deleteOne,deleteTeamMemberships:ct.deleteMany}}),{initializeTeamMemberships:aF,addTeamMembership:rF,addTeamMemberships:dF,setTeamMembership:uF,setTeamMemberships:lF,updateTeamMembership:oF,updateTeamMemberships:hF,deleteTeamMembership:mF,deleteTeamMemberships:pF}=ic.actions,yF=ic.reducer,fF=t=>t.teamMembershipReducer.instances,rs=l.createSelector([fF],t=>Object.values(t)),SF=t=>s=>s.teamMembershipReducer.instances[t],AF=y(l.createSelector([rs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),vg=y(l.createSelector([rs,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(c=>c.team===s))e[n.user]=n;return e})),Eg=y(l.createSelector([xt,rs,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(c=>c.team===e).map(c=>c.user));return S(t.filter(c=>n.has(c.id)))})),at=P(t=>t.uuid),IF={instances:{}},nc=l.createSlice({name:"teams",initialState:IF,extraReducers:t=>t.addMatcher(l.isAnyOf(T,F),s=>Object.assign(s,IF)),reducers:{initializeTeams:at.initialize,addTeam:at.addOne,addTeams:at.addMany,setTeam:at.setOne,setTeams:at.setMany,updateTeam:at.updateOne,updateTeams:at.updateMany,deleteTeam:at.deleteOne,deleteTeams:at.deleteMany}}),{initializeTeams:TF,addTeam:OF,addTeams:PF,setTeam:FF,setTeams:bF,updateTeam:_F,updateTeams:gF,deleteTeam:MF,deleteTeams:RF}=nc.actions,wF=t=>t.teamReducer.instances,cc=l.createSelector([wF],t=>Object.values(t)),vF=t=>s=>s.teamReducer.instances[t],EF=y(l.createSelector([cc,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Bg=y(l.createSelector([cc,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),BF=nc.reducer,ac={outboxReducer:Df,fileReducer:qu,authReducer:Wd},Vg=l.combineReducers(ac),VF={...ac,assetReducer:Ma,assetAttachmentReducer:ea,assetCommentReducer:pa,assetTypeReducer:wd,assetTypeAttachmentReducer:Ua,issueReducer:im,issueAttachmentReducer:Sh,issueTypeReducer:Iy,issueTypeAttachmentReducer:Sm,organizationReducer:wf,projectReducer:YS,projectAttachmentReducer:dS,projectCommentReducer:PS,projectAccessReducer:Wf,organizationAccessReducer:of,projectFileReducer:qS,procedureTypeReducer:eF,procedureInitiativeReducer:dA,procedureReducer:TA,procedureTypeFieldsReducer:mP,procedureFieldValuesReducer:UP,procedureTypeAttachmentReducer:$O,procedureTypeFieldsAttachmentReducer:xO,procedureFieldValuesAttachmentReducer:_P,procedureStepFieldsAttachmentReducer:sT,procedureStepFieldsReducer:yT,procedureStepFieldValuesAttachmentReducer:RT,procedureStepFieldValuesReducer:$T,procedureStepFieldValuesReviewReducer:tO,procedureStepAssigneeReducer:LA,procedureStepCommentReducer:tI,procedureStepDefaultAssigneeReducer:yI,procedureStepDefaultReviewerReducer:wI,procedureStepEventReducer:NI,procedureStepReviewerReducer:yO,procedureStepReducer:gO,rehydratedReducer:nF,formReducer:Zl,formRevisionReducer:Cl,formRevisionAttachmentReducer:_l,formSubmissionAttachmentReducer:oo,formSubmissionReducer:Ro,formIdentifierReducer:Xu,formIdentifierValueReducer:ol,userReducer:Xy,emailDomainsReducer:zu,documentsReducer:Su,documentAttachmentReducer:au,teamReducer:BF,agentsReducer:Lc,issueCommentReducer:Gh,issueCommentAttachmentReducer:Eh,issueUpdateReducer:ky,geoImageReducer:ko,issueAssociationReducer:nh,issueTypeFieldsReducer:cp,issueTypeFieldValuesReducer:Hm,issueTypeFieldsAttachmentReducer:Em,issueTypeFieldValuesAttachmentReducer:Ap,issueTypeIdentifierReducer:Bp,issueTypeIdentifierValueReducer:Wp,issueTypePriorityReducer:cy,issueTypeStatusReducer:By,assetTypeFieldsReducer:pr,assetTypeFieldValuesReducer:Lr,assetTypeFieldsAttachmentReducer:er,assetTypeFieldValuesAttachmentReducer:Mr,assetTypeIdentifierReducer:td,assetTypeIdentifierValueReducer:yd,assetTypeStatusReducer:Nd,teamMembershipReducer:yF},zg=l.combineReducers(VF),zF=1e4,DF=200,rc=[400,409,403,404,405,500],N=1e4,jF={};class qF{constructor(s){h(this,"client");h(this,"pageSize",zF);jF[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 Dg=t=>{if(t)throw t;const s=gt();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},CF=(t,s,e)=>{const n=ft();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},$F=(t,s,e)=>{const n=ft();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const r=s.meta.offlineAction.payload.uuid;return n.remove(r),n.getQueue()};async function jg(t,s){if(!s.payload)throw new Error("Received empty payload");return QF(s)}const qg={...pc,effect:jg,discard:LF,returnPromises:!0,persistCallback:Dg,retry:Ug,persistOptions:{storage:cb},queue:{...pc.queue,enqueue:CF,dequeue:$F,peek:(...t)=>$g(...t)}},Cg=nb.offline(qg);async function UF(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const c=jF[t.meta.offline.effect.serviceName];if(!c)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return uc(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,c,e)}function LF(t,s,e=0){var p;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=Ft(),r=n.getState().outboxReducer.deletedRequests,a=s.payload.uuid;function u(){n.dispatch(Ef(a));const m=mt();if(!m)throw new Error("Outbox coordinator not set");m.remove(s.payload.uuid);const f=s.meta.offline.rollback;throw f&&(console.warn("Rolling back request due to SDK error:",s),n.dispatch(f)),t}if(t instanceof U&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",s.payload.url),u()),r.includes(a)&&(console.debug("Discarding request due to deletion:",s.payload.url),u()),t instanceof U){const m=t.status||((p=t.response)==null?void 0:p.status);if(m||console.warn("Error has no status code:",t),m!==void 0&&dc.includes(m)){console.warn("Discarding request due to error:",t,`
4
- Action:`,s);const f=mt();if(!f)throw new Error("Outbox coordinator not set");f.remove(s.payload.uuid),t.options.discard=!0,u()}}console.debug("Registering a retry for request:",s.payload.uuid);const d=mt();if(!d)throw new Error("Outbox coordinator not set");return d.registerRetry(s.payload.uuid),!1}function Kg(t,s,e){var n;return(n=mt())==null?void 0:n.peek()}function Yg(t,s){return Ft().dispatch(Bf(new Date().getTime())),Ac}const Pt="An unknown error occurred",Zg=500,WF=["non_field_errors","detail"];function Jg(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(([c,r])=>typeof r=="string"?WF.includes(c)?r:`${c}: ${r}`:Array.isArray(r)?WF.includes(c)?r.join(`
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=gt(),r=n.getState().outboxReducer.deletedRequests,a=s.payload.uuid;function u(){n.dispatch(Vf(a));const m=ft();if(!m)throw new Error("Outbox coordinator not set");m.remove(s.payload.uuid);const f=s.meta.offline.rollback;throw f&&(console.warn("Rolling back request due to SDK error:",s),n.dispatch(f)),t}if(t instanceof U&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",s.payload.url),u()),r.includes(a)&&(console.debug("Discarding request due to deletion:",s.payload.url),u()),t instanceof U){const m=t.status||((p=t.response)==null?void 0:p.status);if(m||console.warn("Error has no status code:",t),m!==void 0&&rc.includes(m)){console.warn("Discarding request due to error:",t,`
4
+ Action:`,s);const f=ft();if(!f)throw new Error("Outbox coordinator not set");f.remove(s.payload.uuid),t.options.discard=!0,u()}}console.debug("Registering a retry for request:",s.payload.uuid);const d=ft();if(!d)throw new Error("Outbox coordinator not set");return d.registerRetry(s.payload.uuid),!1}function $g(t,s,e){var n;return(n=ft())==null?void 0:n.peek()}function Ug(t,s){return gt().dispatch(zf(new Date().getTime())),Sc}const bt="An unknown error occurred",Lg=500,kF=["non_field_errors","detail"];function kg(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(([c,r])=>typeof r=="string"?kF.includes(c)?r:`${c}: ${r}`:Array.isArray(r)?kF.includes(c)?r.join(`
5
5
  `):r.map(a=>`${c}: ${a}`).join(`
6
6
  `):`${c}: ${JSON.stringify(r)}`).join(`
7
- `)}catch(c){console.error("Failed to extract error message from response body",c)}}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>Zg?Pt:e}class U extends Error{constructor(e){super(Pt);h(this,"status");h(this,"response");h(this,"message");h(this,"options");const{response:n,innerError:c}=e;this.message=e.message??Jg(n,c)??Pt,this.status=(n==null?void 0:n.status)??0,this.response=n,e.discard=e.discard??!1,this.options=e}}function KF(t){function s(e){return typeof e=="object"&&e!==null&&["ok","redirect","clientError","serverError","error"].every(c=>c 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 Xg extends qF{constructor(s){super(s)}}class ot extends qF{constructor(e,n){super(e);h(this,"auth");this.auth=n}}class Qg extends ot{async startConversation(s,e){return this.enqueueRequest({description:"Start agent conversation",method:o.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:e},blockers:["prompt"],blocks:["prompt"]}).then(n=>(this.dispatch(Uc(n)),n))}async continueConversation(s,e,n){return this.enqueueRequest({description:"Prompt agent",method:o.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:n},blockers:["prompt"],blocks:["prompt"],queryParams:{conversation_id:e}}).then(c=>{this.dispatch(kc(c))})}async fetchDetails(s){return this.enqueueRequest({description:"Get agent conversation",method:o.GET,url:`/agents/conversations/${s}/`,blockers:["conversation"],blocks:["conversation"]}).then(e=>{this.dispatch(Lc(e))})}async rate(s,e){return this.enqueueRequest({description:"Rate agent response",method:o.PUT,url:`/agents/responses/${s}/rate/`,payload:{rating:e},blockers:["rate"],blocks:["rate"]})}async list(s,e){return this.performRequest({method:o.GET,url:"/agents/conversations/",...s},e)}async refreshStore(s,e){const n=await this.list({queryParams:{project:s}},e);return this.dispatch($c(n)),n}}function at(t,s){const e=[];let n=0;const c=t.length;for(;n<c;)e.push(t.slice(n,n+=s));return e}function A(t,s,e){const n=`${s}${e?"s":""}`;switch(t){case o.GET:return`Get ${n}`;case o.POST:return`Create ${n}`;case o.PATCH:return`Update ${n}`;case o.PUT:return`Update ${n}`;case o.DELETE:return`Delete ${n}`}}class v extends ot{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:o.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:o.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:o.GET,...s},e)}}class j extends v{constructor(){super(...arguments);h(this,"pageSize",DF)}async add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions;let a,u=null,d=null;if("file"in e){const{file:b,...g}=e;u=await this.client.files.getFilePayload(b),d=URL.createObjectURL(b),a={...g,file_sha1:u.sha1,file_type:u.file_type,file_name:b.name,file_extension:u.extension,file_url:d}}else a=e;const p=this.buildModel(a),m=this.buildPayload(p);this.dispatch(n(p));const f=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:{...m,...u?{file:u}:{}},blockers:this.getBlockers(p),blocks:this.getBlocks(p)});f.then(({instance:b})=>{this.dispatch(c(b))}).catch(b=>{throw this.dispatch(r(this.getId(p))),b}).finally(()=>{d&&URL.revokeObjectURL(d)});const I=f.then(({instance:b})=>b),R=f.then(async({instance:b,presigned_url:g})=>{try{return g&&await this.client.files.processPresignedUrl(b.file_sha1,g),b.file_sha1}catch(_){throw console.error("Upload to s3 using presigned url failed.",_),_}});return[p,I,R]}async bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=[],p=new Set,m=at(e,Math.min(n??e.length,k)),f=[];for(const g of m){const _=[],w={},B=[],C=[];for(const z of g){let bt;if("file"in z){const{file:mc,...FR}=z,_t=await this.client.files.getFilePayload(mc);_t.sha1 in w||(w[_t.sha1]=_t);const cb=URL.createObjectURL(mc);p.add(cb),bt={...FR,file_sha1:_t.sha1,file_type:_t.file_type,file_name:mc.name,file_extension:_t.extension,file_url:cb}}else bt=z;const q=this.buildModel(bt);d.push(q);const N=this.buildBulkPayload(q);_.push(N);const as=this.getBlockers(q);B.push(...as);const OR=this.getBlocks(q);C.push(...OR)}const D={payloads:_,submittedAt:u,files:Object.values(w),blockers:B,blocks:C};f.push(D)}this.dispatch(c(d));const I=f.map(g=>{const{submittedAt:_,files:w,payloads:B,blocks:C,blockers:D}=g;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:_,files:w,payloads:B},blockers:D,blocks:C})});Promise.all(I).then(g=>{const _=g.flatMap(w=>w.instances);this.dispatch(r(_))}).catch(g=>{throw this.dispatch(a(d.map(_=>this.getId(_)))),console.error(g),g}).finally(()=>{for(const g of p)URL.revokeObjectURL(g)});const R=Promise.all(I).then(g=>g.flatMap(({instances:_})=>_)),b=Promise.all(I).then(async g=>{const _=[];for(const{presigned_urls:w}of g){const B=this.client.files.processPresignedUrls(w);for(const[C,D]of Object.entries(B))try{await D,_.push(C)}catch(z){throw console.error("Upload to s3 using presigned url failed.",z),z}}return _});return[d,R,b]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Attempting to delete ${this.name} with pk ${e} that does not exist in the store`);this.dispatch(c(this.getId(a)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}}class xg extends j{constructor(){super(...arguments);h(this,"name","Asset attachment");h(this,"url","/asset-attachments");h(this,"actions",{addOne:Wc,addMany:fs,setOne:Kc,setMany:Yc,updateOne:Zc,updateMany:Jc,deleteOne:Xc,deleteMany:Ss,initialize:Hc});h(this,"selectors",{selectById:xc,selectByIds:ea})}getId(e){return e.uuid}getBlockers(e){const{asset:n}=e;return[n]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(c(a)),a}}class eM extends v{constructor(){super(...arguments);h(this,"name","Asset Comment");h(this,"url","/asset-comments");h(this,"actions",{addOne:ca,addMany:qt,setOne:aa,setMany:ra,updateOne:da,updateMany:ua,deleteOne:la,deleteMany:Ct,initialize:na});h(this,"selectors",{selectById:ha,selectByIds:ma})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.asset],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Asset comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Asset comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(c(a)),a}}class tM extends v{constructor(){super(...arguments);h(this,"url","/assets");h(this,"name","Asset");h(this,"actions",{addOne:Ia,addMany:Ps,setOne:Fa,setMany:ba,updateOne:Ta,updateMany:Pa,deleteOne:Oa,deleteMany:Os,initialize:Aa});h(this,"selectors",{selectById:Ma,selectByIds:Ra})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No asset with uuid ${e} found in the store`);const u=this.select(ta(e)),d=this.select(pa(e)),p=this.select(eh(e)),m=this.select(FA(e));this.dispatch(c(e)),this.dispatch(Ss(E(u))),this.dispatch(Ct(E(d))),this.dispatch(St(E(p))),this.dispatch(Tt(E(m)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(f){throw this.dispatch(n(a)),this.dispatch(fs(u)),this.dispatch(qt(d)),this.dispatch(ft(p)),this.dispatch(It(m)),f}}bulkAdd(e,n){const{addMany:c}=this.actions,r=new Date().toISOString(),a=at(e,Math.min(n??e.length,k)).map(p=>{const m=p.map(f=>P(f));return{batchId:rt.v4(),payload:{submitted_at:r,assets:m}}}),u=[];let d=null;for(const p of a){const{batchId:m,payload:f}=p,I=f.assets.map(({uuid:w})=>w),R=f.assets.map(({asset_type:w})=>w),b=f.assets.map(({project:w})=>w),g=f.assets.map(({status:w})=>w),_=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:f,blockers:(d?[d]:[]).concat(R).concat(b).concat(g),blocks:[m].concat(I)});d=p.batchId,u.push(_)}return Promise.all(u).then(p=>{const m=p.flat();this.dispatch(c(m))}),u}bulkUpdate(e,n){const{updateMany:c}=this.actions,{selectByIds:r}=this.selectors,a=E(e).toSorted(jt);if(a.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(a)).toSorted(hs);if(a.length!=u.length)throw new Error(`Attempting to bulk update ${a.length-u.length} assets that dont exist in the store`);const d=[];for(let I=0;I<a.length;I++)d.push({...u[I],...e[I]});this.dispatch(c(d));const p=at(e,Math.min(n??e.length,k)),m=[];let f=null;for(const I of p){const R=rt.v4(),b=E(I),g=I.map(({status:w})=>w).filter(Boolean),_=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(f?[f]:[]).concat(b).concat(g),blocks:[R].concat(b)});m.push(_),f=R}return Promise.all(m).then(I=>{this.dispatch(c(I.flat()))}).catch(()=>{this.dispatch(c(u))}),[d,m]}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e)),u=this.select(ya(e)),d=this.select(th(e)),p=this.select(bA(e));this.dispatch(c(e)),this.dispatch(Ct(E(u))),this.dispatch(St(E(d))),this.dispatch(Tt(E(p)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(m){throw this.dispatch(n(a)),this.dispatch(qt(u)),this.dispatch(ft(d)),this.dispatch(It(p)),m}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class sM extends j{constructor(){super(...arguments);h(this,"name","Asset Type Attachment");h(this,"url","/asset-type-attachments");h(this,"actions",{addOne:Ba,addMany:bs,setOne:Va,setMany:za,updateOne:Da,updateMany:ja,deleteOne:qa,deleteMany:_s,initialize:Ea});h(this,"selectors",{selectById:$a,selectByIds:Ua})}getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class iM extends j{constructor(){super(...arguments);h(this,"name","Asset Type Fields Attachment");h(this,"url","/asset-type-fields-attachments");h(this,"actions",{addOne:Ha,addMany:Wa,setOne:Ka,setMany:Ya,updateOne:Za,updateMany:Ja,deleteOne:Xa,deleteMany:Qa,initialize:Ga});h(this,"selectors",{selectById:er,selectByIds:tr})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class nM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Fields");h(this,"url","/asset-type-fields");h(this,"actions",{addOne:cr,addMany:ar,setOne:rr,setMany:dr,updateOne:ur,updateMany:lr,deleteOne:or,deleteMany:hr,initialize:nr});h(this,"selectors",{selectById:pr,selectByIds:yr})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class cM extends j{constructor(){super(...arguments);h(this,"name","Asset Type Field Values Attachment");h(this,"url","/asset-type-field-values-attachments");h(this,"actions",{addOne:Ir,addMany:Es,setOne:Tr,setMany:Pr,updateOne:Or,updateMany:Fr,deleteOne:br,deleteMany:Bs,initialize:Ar});h(this,"selectors",{selectById:gr,selectByIds:Mr})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class aM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Field Values");h(this,"url","/asset-type-field-values");h(this,"actions",{addOne:Br,addMany:Vr,setOne:zr,setMany:Dr,updateOne:jr,updateMany:qr,deleteOne:Cr,deleteMany:$r,initialize:Er});h(this,"selectors",{selectById:Lr,selectByIds:kr})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{payloads:c,values:r}=e,{addMany:a,setMany:u,deleteMany:d}=this.actions,p=new Date().toISOString(),m=[],f=at(c,Math.min(n??c.length,k)),I=[];for(const b of f){const g=[];for(const _ of b){const w=P({..._,values:_.values,created_by:this.select(B=>{var C;return((C=B.userReducer.currentUser)==null?void 0:C.id)??null}),submitted_at:p});m.push(w),g.push({uuid:w.uuid,asset:_.asset,fields_revision:_.fields_revision,published_at:_.published_at,values:w.values})}I.push({submitted_at:p,values:r,field_values:g})}this.dispatch(a(m));const R=[];for(const b of I){const{field_values:g}=b,_=g.map(({asset:D})=>D),w=g.map(({fields_revision:D})=>D),B=g.map(({uuid:D})=>D),C=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_.concat(w),blocks:B});R.push(C)}return Promise.all(R).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(d(E(m)))}),[m,R]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.fields_revision,a.asset],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Rr(e));this.dispatch(n(e)),this.dispatch(Bs(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Es(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class rM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Identifier");h(this,"url","/asset-type-identifiers");h(this,"actions",{addOne:Wr,addMany:Kr,setOne:Yr,setMany:Zr,updateOne:Jr,updateMany:Xr,deleteOne:Qr,deleteMany:xr,initialize:Hr});h(this,"selectors",{selectById:td,selectByIds:sd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class dM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Identifier Value");h(this,"url","/asset-type-identifier-values");h(this,"actions",{addOne:ad,addMany:rd,setOne:dd,setMany:ud,updateOne:ld,updateMany:od,deleteOne:hd,deleteMany:md,initialize:cd});h(this,"selectors",{selectById:yd,selectByIds:fd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset,e.asset_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(b=>{var g;return((g=b.userReducer.currentUser)==null?void 0:g.id)??null}),p=at(e,Math.min(n??e.length,k)),m=[],f=[];for(const b of p){const g=[],_=[],w=[];for(const C of b){const D=P({...C,submitted_at:u,created_by:d});f.push(D);const z={uuid:D.uuid,asset:D.asset,asset_type_identifier:D.asset_type_identifier,value:D.value};g.push(z),_.push(D.asset),_.push(D.asset_type_identifier),w.push(D.uuid)}const B={payloads:g,submitted_at:u,blockers:_,blocks:w};m.push(B)}this.dispatch(c(f));const I=m.map(b=>{const{payloads:g,submitted_at:_,blockers:w,blocks:B}=b;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:_,payloads:g},blockers:w,blocks:B})});Promise.all(I).then(b=>{this.dispatch(r(b.flat()))}).catch(b=>{throw this.dispatch(a(E(f))),b});const R=Promise.all(I).then(b=>b.flat());return[f,R]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class uM extends v{constructor(){super(...arguments);h(this,"name","Asset Type");h(this,"url","/asset-types");h(this,"actions",{addOne:Od,addMany:Fd,setOne:Td,setMany:Pd,updateOne:bd,updateMany:_d,deleteOne:gd,deleteMany:Md,initialize:Id});h(this,"selectors",{selectById:wd,selectByIds:vd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type with uuid ${e} to exist`);const u=this.select(ga(e)),d=this.select(La(e));this.dispatch(n(e)),this.dispatch(Os(E(u))),this.dispatch(_s(E(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(Ps(u)),this.dispatch(bs(d)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class lM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Status");h(this,"url","/asset-type-statuses");h(this,"actions",{addOne:zd,addMany:Dd,setOne:jd,setMany:qd,updateOne:Cd,updateMany:$d,deleteOne:Ud,deleteMany:Ld,initialize:Vd});h(this,"selectors",{selectById:Nd,selectByIds:Gd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No asset type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class oM extends j{constructor(){super(...arguments);h(this,"name","Document Attachment");h(this,"url","/document-attachments");h(this,"actions",{addOne:Xd,addMany:Qd,setOne:xd,setMany:eu,updateOne:tu,updateMany:su,deleteOne:iu,deleteMany:nu,initialize:Jd});h(this,"selectors",{selectById:au,selectByIds:ru})}getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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[c,r,a]=await super.bulkAdd(e,n),u={};for(const{file_sha1:d,uuid:p}of c)d in u||(u[d]=[]),u[d].push(p);return a.then(d=>{const p=d.flatMap(m=>u[m]??[]);for(const m of p)this.makeReadable(m)}),[c,r,a]}makeReadable(e){this.enqueueRequest({description:"Add attachment to AI assistant",method:o.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:c}=this.actions,r=this.list({queryParams:{document__project__organization:e}},n),a=this.list({queryParams:{document__organization:e}},n),d=(await Promise.all([r,a])).flat();return this.dispatch(c(d)),d}}class hM extends v{constructor(){super(...arguments);h(this,"name","Document");h(this,"url","/documents");h(this,"actions",{addOne:ou,addMany:hu,setOne:mu,setMany:pu,updateOne:yu,updateMany:fu,deleteOne:Su,deleteMany:Au,initialize:lu});h(this,"selectors",{selectById:Tu,selectByIds:Pu})}add(e){const{addOne:n,deleteOne:c,updateOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:d.parent_document?[d.parent_document]:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c,addMany:r,deleteMany:a}=this.actions,{selectById:u}=this.selectors,d=this.select(u(e));if(!d)throw new Error(`attempting to delete a document with uuid ${e} that does not exist in store.documents`);const p=this.select(Ou(e));this.dispatch(n(e)),this.dispatch(a(E(p)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(m){throw this.dispatch(c(d)),this.dispatch(r(p)),m}}async refreshStore(e,n){const{initialize:c}=this.actions,r=this.list({queryParams:{project__organization:e}},n),a=this.list({queryParams:{organization:e}},n),d=(await Promise.all([r,a])).flat();return this.dispatch(c(d)),d}}class ht extends ot{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:o.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:o.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:o.GET,...s},e)}}class mM extends ht{constructor(){super(...arguments);h(this,"name","Email Domains");h(this,"url","/organization-email-domains");h(this,"actions",{addOne:_u,addMany:gu,setOne:Mu,setMany:Ru,updateOne:wu,updateMany:vu,deleteOne:Eu,deleteMany:Bu,initialize:bu});h(this,"selectors",{selectById:zu,selectByIds:Du})}async add(e,n){return this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:{email:n,organization:e},blockers:[e,"create-org"],blocks:[]})}async delete(e){const{deleteOne:n,addOne:c}=this.actions;this.dispatch(n(e.uuid));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e.uuid}/`,blockers:[e.domain],blocks:[]})}catch(r){throw this.dispatch(c(e)),r}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class pM extends ot{async getVerificationCode(s){return this.enqueueRequest({description:"Get verification code",method:o.GET,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,blockers:[],blocks:[]})}validateVerificationCode(s,e=void 0){return this.enqueueRequest({description:"Validate verification code",method:o.POST,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,payload:e,blockers:[],blocks:[]})}}const zt={},uc=new Set;class yM extends ot{constructor(){super(...arguments);h(this,"host");h(this,"dbPromise",hb.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 Dt(e);if(uc.has(n))return;const c=await this.getDB();!!await c.get("files",n)?console.warn(`Attempting to add a file already cached, ${e.name}`):await c.put("files",e,n),uc.add(n)}async removeCache(e){await(await this.getDB()).delete("files",e),uc.delete(e)}async fetchCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,n,c=n){const r=e.split("?")[0]??e,a=await this.fetchCache(n);if(a)return a;let u;r in zt?u=zt[r]:vc(e)?(u=wc(e,c),zt[r]=u):(u=new Promise(m=>{this.performRequest({method:o.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1}).then(f=>{const I=new File([f],c,{type:f.type});m(I)})}),zt[r]=u);let d;try{d=await u}catch(m){throw m instanceof U&&delete zt[r],m}const p=await Dt(d);if(p!==n){const m=`The hash of the file returned from the server (${p}) does not match the
7
+ `)}catch(c){console.error("Failed to extract error message from response body",c)}}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>Lg?bt:e}class U extends Error{constructor(e){super(bt);h(this,"status");h(this,"response");h(this,"message");h(this,"options");const{response:n,innerError:c}=e;this.message=e.message??kg(n,c)??bt,this.status=(n==null?void 0:n.status)??0,this.response=n,e.discard=e.discard??!1,this.options=e}}function NF(t){function s(e){return typeof e=="object"&&e!==null&&["ok","redirect","clientError","serverError","error"].every(c=>c 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 Ng extends qF{constructor(s){super(s)}}class pt extends qF{constructor(e,n){super(e);h(this,"auth");this.auth=n}}class Gg extends pt{async startConversation(s,e){return this.enqueueRequest({description:"Start agent conversation",method:o.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:e},blockers:["prompt"],blocks:["prompt"]}).then(n=>(this.dispatch(Cc(n)),n))}async continueConversation(s,e,n){return this.enqueueRequest({description:"Prompt agent",method:o.POST,url:"/agents/prompt/",payload:{prompt:s,active_project:n},blockers:["prompt"],blocks:["prompt"],queryParams:{conversation_id:e}}).then(c=>{this.dispatch(Uc(c))})}async fetchDetails(s){return this.enqueueRequest({description:"Get agent conversation",method:o.GET,url:`/agents/conversations/${s}/`,blockers:["conversation"],blocks:["conversation"]}).then(e=>{this.dispatch($c(e))})}async rate(s,e){return this.enqueueRequest({description:"Rate agent response",method:o.PUT,url:`/agents/responses/${s}/rate/`,payload:{rating:e},blockers:["rate"],blocks:["rate"]})}async list(s,e){return this.performRequest({method:o.GET,url:"/agents/conversations/",...s},e)}async refreshStore(s,e){const n=await this.list({queryParams:{project:s}},e);return this.dispatch(qc(n)),n}}function rt(t,s){const e=[];let n=0;const c=t.length;for(;n<c;)e.push(t.slice(n,n+=s));return e}function A(t,s,e){const n=`${s}${e?"s":""}`;switch(t){case o.GET:return`Get ${n}`;case o.POST:return`Create ${n}`;case o.PATCH:return`Update ${n}`;case o.PUT:return`Update ${n}`;case o.DELETE:return`Delete ${n}`}}function M(t){const s={...t};for(const e of[...Ac,"created_by"])e in s&&delete s[e];return s}class E extends pt{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:o.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:o.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:o.GET,...s},e)}}class j extends E{constructor(){super(...arguments);h(this,"pageSize",DF)}async add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions;let a,u=null,d=null;if("file"in e){const{file:b,...g}=e;u=await this.client.files.getFilePayload(b),d=URL.createObjectURL(b),a={...g,file_sha1:u.sha1,file_type:u.file_type,file_name:b.name,file_extension:u.extension,file_url:d}}else a=e;const p=this.buildModel(a),m=this.buildPayload(p);this.dispatch(n(p));const f=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:{...m,...u?{file:u}:{}},blockers:this.getBlockers(p),blocks:this.getBlocks(p)});f.then(({instance:b})=>{this.dispatch(c(b))}).catch(b=>{throw this.dispatch(r(this.getId(p))),b}).finally(()=>{d&&URL.revokeObjectURL(d)});const I=f.then(({instance:b})=>b),R=f.then(async({instance:b,presigned_url:g})=>{try{return g&&await this.client.files.processPresignedUrl(b.file_sha1,g),b.file_sha1}catch(_){throw console.error("Upload to s3 using presigned url failed.",_),_}});return[p,I,R]}async bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=[],p=new Set,m=rt(e,Math.min(n??e.length,N)),f=[];for(const g of m){const _=[],v={},B=[],C=[];for(const z of g){let Mt;if("file"in z){const{file:hc,...yR}=z,Rt=await this.client.files.getFilePayload(hc);Rt.sha1 in v||(v[Rt.sha1]=Rt);const tb=URL.createObjectURL(hc);p.add(tb),Mt={...yR,file_sha1:Rt.sha1,file_type:Rt.file_type,file_name:hc.name,file_extension:Rt.extension,file_url:tb}}else Mt=z;const q=this.buildModel(Mt);d.push(q);const G=this.buildBulkPayload(q);_.push(G);const ds=this.getBlockers(q);B.push(...ds);const pR=this.getBlocks(q);C.push(...pR)}const D={payloads:_,submittedAt:u,files:Object.values(v),blockers:B,blocks:C};f.push(D)}this.dispatch(c(d));const I=f.map(g=>{const{submittedAt:_,files:v,payloads:B,blocks:C,blockers:D}=g;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:_,files:v,payloads:B},blockers:D,blocks:C})});Promise.all(I).then(g=>{const _=g.flatMap(v=>v.instances);this.dispatch(r(_))}).catch(g=>{throw this.dispatch(a(d.map(_=>this.getId(_)))),console.error(g),g}).finally(()=>{for(const g of p)URL.revokeObjectURL(g)});const R=Promise.all(I).then(g=>g.flatMap(({instances:_})=>_)),b=Promise.all(I).then(async g=>{const _=[];for(const{presigned_urls:v}of g){const B=this.client.files.processPresignedUrls(v);for(const[C,D]of Object.entries(B))try{await D,_.push(C)}catch(z){throw console.error("Upload to s3 using presigned url failed.",z),z}}return _});return[d,R,b]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Attempting to delete ${this.name} with pk ${e} that does not exist in the store`);this.dispatch(c(this.getId(a)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}}class Hg extends j{constructor(){super(...arguments);h(this,"name","Asset attachment");h(this,"url","/asset-attachments");h(this,"actions",{addOne:Gc,addMany:As,setOne:Hc,setMany:Wc,updateOne:Kc,updateMany:Yc,deleteOne:Zc,deleteMany:Is,initialize:Nc});h(this,"selectors",{selectById:Xc,selectByIds:Qc})}getId(e){return e.uuid}getBlockers(e){const{asset:n}=e;return[n]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(c(a)),a}}class Wg extends E{constructor(){super(...arguments);h(this,"name","Asset Comment");h(this,"url","/asset-comments");h(this,"actions",{addOne:ia,addMany:$t,setOne:na,setMany:ca,updateOne:aa,updateMany:ra,deleteOne:da,deleteMany:Ut,initialize:sa});h(this,"selectors",{selectById:la,selectByIds:oa})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.asset],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Asset comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Asset comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(c(a)),a}}class Kg extends E{constructor(){super(...arguments);h(this,"url","/assets");h(this,"name","Asset");h(this,"actions",{addOne:Sa,addMany:Fs,setOne:Oa,setMany:Pa,updateOne:Aa,updateMany:Ia,deleteOne:Ta,deleteMany:bs,initialize:fa});h(this,"selectors",{selectById:_a,selectByIds:ga})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No asset with uuid ${e} found in the store`);const u=this.select(xc(e)),d=this.select(ha(e)),p=this.select(sh(e)),m=this.select(_A(e)),f=this.select(go(e));this.dispatch(c(e)),this.dispatch(Is(w(u))),this.dispatch(Ut(w(d))),this.dispatch(Tt(w(p))),this.dispatch(Ft(w(m))),this.dispatch(lt(w(f)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(I){throw this.dispatch(n(a)),this.dispatch(As(u)),this.dispatch($t(d)),this.dispatch(It(p)),this.dispatch(Pt(m)),this.dispatch(ut(f)),I}}bulkAdd(e,n){const{addMany:c}=this.actions,r=new Date().toISOString(),a=rt(e,Math.min(n??e.length,N)).map(p=>{const m=p.map(f=>O(f));return{batchId:dt.v4(),payload:{submitted_at:r,assets:m}}}),u=[];let d=null;for(const p of a){const{batchId:m,payload:f}=p,I=f.assets.map(({uuid:v})=>v),R=f.assets.map(({asset_type:v})=>v),b=f.assets.map(({project:v})=>v),g=f.assets.map(({status:v})=>v),_=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:f,blockers:(d?[d]:[]).concat(R).concat(b).concat(g),blocks:[m].concat(I)});d=p.batchId,u.push(_)}return Promise.all(u).then(p=>{const m=p.flat();this.dispatch(c(m))}),u}bulkUpdate(e,n){const{updateMany:c}=this.actions,{selectByIds:r}=this.selectors,a=w(e).toSorted(Ct);if(a.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(a)).toSorted(ps);if(a.length!=u.length)throw new Error(`Attempting to bulk update ${a.length-u.length} assets that dont exist in the store`);const d=[];for(let I=0;I<a.length;I++)d.push({...u[I],...e[I]});this.dispatch(c(d));const p=rt(e,Math.min(n??e.length,N)),m=[];let f=null;for(const I of p){const R=dt.v4(),b=w(I),g=I.map(({status:v})=>v).filter(Boolean),_=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(f?[f]:[]).concat(b).concat(g),blocks:[R].concat(b)});m.push(_),f=R}return Promise.all(m).then(I=>{this.dispatch(c(I.flat()))}).catch(()=>{this.dispatch(c(u))}),[d,m]}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e)),u=this.select(ma(e)),d=this.select(ih(e)),p=this.select(gA(e)),m=this.select(Mo(e));this.dispatch(c(e)),this.dispatch(Ut(w(u))),this.dispatch(Tt(w(d))),this.dispatch(Ft(w(p))),this.dispatch(lt(w(m)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(f){throw this.dispatch(n(a)),this.dispatch($t(u)),this.dispatch(It(d)),this.dispatch(Pt(p)),this.dispatch(ut(m)),f}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class Yg extends j{constructor(){super(...arguments);h(this,"name","Asset Type Attachment");h(this,"url","/asset-type-attachments");h(this,"actions",{addOne:va,addMany:gs,setOne:Ea,setMany:Ba,updateOne:Va,updateMany:za,deleteOne:Da,deleteMany:Ms,initialize:wa});h(this,"selectors",{selectById:qa,selectByIds:Ca})}getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class Zg extends j{constructor(){super(...arguments);h(this,"name","Asset Type Fields Attachment");h(this,"url","/asset-type-fields-attachments");h(this,"actions",{addOne:Na,addMany:Ga,setOne:Ha,setMany:Wa,updateOne:Ka,updateMany:Ya,deleteOne:Za,deleteMany:Ja,initialize:ka});h(this,"selectors",{selectById:Qa,selectByIds:xa})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class Jg extends E{constructor(){super(...arguments);h(this,"name","Asset Type Fields");h(this,"url","/asset-type-fields");h(this,"actions",{addOne:ir,addMany:nr,setOne:cr,setMany:ar,updateOne:rr,updateMany:dr,deleteOne:ur,deleteMany:lr,initialize:sr});h(this,"selectors",{selectById:hr,selectByIds:mr})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class Xg extends j{constructor(){super(...arguments);h(this,"name","Asset Type Field Values Attachment");h(this,"url","/asset-type-field-values-attachments");h(this,"actions",{addOne:Sr,addMany:Vs,setOne:Ar,setMany:Ir,updateOne:Tr,updateMany:Or,deleteOne:Pr,deleteMany:zs,initialize:fr});h(this,"selectors",{selectById:br,selectByIds:_r})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class Qg extends E{constructor(){super(...arguments);h(this,"name","Asset Type Field Values");h(this,"url","/asset-type-field-values");h(this,"actions",{addOne:vr,addMany:Er,setOne:Br,setMany:Vr,updateOne:zr,updateMany:Dr,deleteOne:jr,deleteMany:qr,initialize:wr});h(this,"selectors",{selectById:$r,selectByIds:Ur})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{payloads:c,values:r}=e,{addMany:a,setMany:u,deleteMany:d}=this.actions,p=new Date().toISOString(),m=[],f=rt(c,Math.min(n??c.length,N)),I=[];for(const b of f){const g=[];for(const _ of b){const v=O({..._,values:_.values,created_by:this.select(B=>{var C;return((C=B.userReducer.currentUser)==null?void 0:C.id)??null}),submitted_at:p});m.push(v),g.push({uuid:v.uuid,asset:_.asset,fields_revision:_.fields_revision,published_at:_.published_at,values:v.values})}I.push({submitted_at:p,values:r,field_values:g})}this.dispatch(a(m));const R=[];for(const b of I){const{field_values:g}=b,_=g.map(({asset:D})=>D),v=g.map(({fields_revision:D})=>D),B=g.map(({uuid:D})=>D),C=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_.concat(v),blocks:B});R.push(C)}return Promise.all(R).then(b=>{this.dispatch(u(b.flat()))}).catch(()=>{this.dispatch(d(w(m)))}),[m,R]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.fields_revision,a.asset],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(gr(e));this.dispatch(n(e)),this.dispatch(zs(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Vs(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class xg extends E{constructor(){super(...arguments);h(this,"name","Asset Type Identifier");h(this,"url","/asset-type-identifiers");h(this,"actions",{addOne:Gr,addMany:Hr,setOne:Wr,setMany:Kr,updateOne:Yr,updateMany:Zr,deleteOne:Jr,deleteMany:Xr,initialize:Nr});h(this,"selectors",{selectById:xr,selectByIds:ed})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class eM extends E{constructor(){super(...arguments);h(this,"name","Asset Type Identifier Value");h(this,"url","/asset-type-identifier-values");h(this,"actions",{addOne:nd,addMany:cd,setOne:ad,setMany:rd,updateOne:dd,updateMany:ud,deleteOne:ld,deleteMany:od,initialize:id});h(this,"selectors",{selectById:md,selectByIds:pd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset,e.asset_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(b=>{var g;return((g=b.userReducer.currentUser)==null?void 0:g.id)??null}),p=rt(e,Math.min(n??e.length,N)),m=[],f=[];for(const b of p){const g=[],_=[],v=[];for(const C of b){const D=O({...C,submitted_at:u,created_by:d});f.push(D);const z={uuid:D.uuid,asset:D.asset,asset_type_identifier:D.asset_type_identifier,value:D.value};g.push(z),_.push(D.asset),_.push(D.asset_type_identifier),v.push(D.uuid)}const B={payloads:g,submitted_at:u,blockers:_,blocks:v};m.push(B)}this.dispatch(c(f));const I=m.map(b=>{const{payloads:g,submitted_at:_,blockers:v,blocks:B}=b;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:_,payloads:g},blockers:v,blocks:B})});Promise.all(I).then(b=>{this.dispatch(r(b.flat()))}).catch(b=>{throw this.dispatch(a(w(f))),b});const R=Promise.all(I).then(b=>b.flat());return[f,R]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class tM extends E{constructor(){super(...arguments);h(this,"name","Asset Type");h(this,"url","/asset-types");h(this,"actions",{addOne:Td,addMany:Od,setOne:Ad,setMany:Id,updateOne:Pd,updateMany:Fd,deleteOne:bd,deleteMany:_d,initialize:Sd});h(this,"selectors",{selectById:Md,selectByIds:Rd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected asset type with uuid ${e} to exist`);const u=this.select(ba(e)),d=this.select($a(e));this.dispatch(n(e)),this.dispatch(bs(w(u))),this.dispatch(Ms(w(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(Fs(u)),this.dispatch(gs(d)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class sM extends E{constructor(){super(...arguments);h(this,"name","Asset Type Status");h(this,"url","/asset-type-statuses");h(this,"actions",{addOne:Bd,addMany:Vd,setOne:zd,setMany:Dd,updateOne:jd,updateMany:qd,deleteOne:Cd,deleteMany:$d,initialize:Ed});h(this,"selectors",{selectById:Ld,selectByIds:kd})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No asset type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(c(r)),r}}class iM extends j{constructor(){super(...arguments);h(this,"name","Document Attachment");h(this,"url","/document-attachments");h(this,"actions",{addOne:Zd,addMany:Jd,setOne:Xd,setMany:Qd,updateOne:xd,updateMany:eu,deleteOne:tu,deleteMany:su,initialize:Yd});h(this,"selectors",{selectById:nu,selectByIds:cu})}getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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[c,r,a]=await super.bulkAdd(e,n),u={};for(const{file_sha1:d,uuid:p}of c)d in u||(u[d]=[]),u[d].push(p);return a.then(d=>{const p=d.flatMap(m=>u[m]??[]);for(const m of p)this.makeReadable(m)}),[c,r,a]}makeReadable(e){this.enqueueRequest({description:"Add attachment to AI assistant",method:o.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:c}=this.actions,r=this.list({queryParams:{document__project__organization:e}},n),a=this.list({queryParams:{document__organization:e}},n),d=(await Promise.all([r,a])).flat();return this.dispatch(c(d)),d}}class nM extends E{constructor(){super(...arguments);h(this,"name","Document");h(this,"url","/documents");h(this,"actions",{addOne:uu,addMany:lu,setOne:ou,setMany:hu,updateOne:mu,updateMany:pu,deleteOne:yu,deleteMany:fu,initialize:du});h(this,"selectors",{selectById:Au,selectByIds:Iu})}add(e){const{addOne:n,deleteOne:c,updateOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:d.parent_document?[d.parent_document]:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c,addMany:r,deleteMany:a}=this.actions,{selectById:u}=this.selectors,d=this.select(u(e));if(!d)throw new Error(`attempting to delete a document with uuid ${e} that does not exist in store.documents`);const p=this.select(Tu(e));this.dispatch(n(e)),this.dispatch(a(w(p)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(m){throw this.dispatch(c(d)),this.dispatch(r(p)),m}}async refreshStore(e,n){const{initialize:c}=this.actions,r=this.list({queryParams:{project__organization:e}},n),a=this.list({queryParams:{organization:e}},n),d=(await Promise.all([r,a])).flat();return this.dispatch(c(d)),d}}class yt extends pt{async get(s,e){return this.performRequest({url:`${this.url}/${s}/`,method:o.GET},e)}async list(s,e){return this.performRequest({url:`${this.url}/`,method:o.GET,...s},e)}async listPaginated(s,e){return this.performPagination({url:`${this.url}/`,method:o.GET,...s},e)}}class cM extends yt{constructor(){super(...arguments);h(this,"name","Email Domains");h(this,"url","/organization-email-domains");h(this,"actions",{addOne:Fu,addMany:bu,setOne:_u,setMany:gu,updateOne:Mu,updateMany:Ru,deleteOne:wu,deleteMany:vu,initialize:Pu});h(this,"selectors",{selectById:Bu,selectByIds:Vu})}async add(e,n){return this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:{email:n,organization:e},blockers:[e,"create-org"],blocks:[]})}async delete(e){const{deleteOne:n,addOne:c}=this.actions;this.dispatch(n(e.uuid));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e.uuid}/`,blockers:[e.domain],blocks:[]})}catch(r){throw this.dispatch(c(e)),r}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class aM extends pt{async getVerificationCode(s){return this.enqueueRequest({description:"Get verification code",method:o.GET,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,blockers:[],blocks:[]})}validateVerificationCode(s,e=void 0){return this.enqueueRequest({description:"Validate verification code",method:o.POST,url:`/verification/email-verification/${s}/`,isAuthNeeded:!1,payload:e,blockers:[],blocks:[]})}}const jt={},dc=new Set;class rM extends pt{constructor(){super(...arguments);h(this,"host");h(this,"dbPromise",ab.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 qt(e);if(dc.has(n))return;const c=await this.getDB();!!await c.get("files",n)?console.warn(`Attempting to add a file already cached, ${e.name}`):await c.put("files",e,n),dc.add(n)}async removeCache(e){await(await this.getDB()).delete("files",e),dc.delete(e)}async fetchCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,n,c=n){const r=e.split("?")[0]??e,a=await this.fetchCache(n);if(a)return a;let u;r in jt?u=jt[r]:wc(e)?(u=Rc(e,c),jt[r]=u):(u=new Promise(m=>{this.performRequest({method:o.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1}).then(f=>{const I=new File([f],c,{type:f.type});m(I)})}),jt[r]=u);let d;try{d=await u}catch(m){throw m instanceof U&&delete jt[r],m}const p=await qt(d);if(p!==n){const m=`The hash of the file returned from the server (${p}) 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(m)}return await this.addCache(d),d}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:o.POST,isExternalUrl:!0,isAuthNeeded:!1,attachmentHash:e,blockers:[`s3-${n.fields.key}`],blocks:[e],s3url:n})}processPresignedUrls(e){const n={};for(const[c,r]of Object.entries(e))n[c]=this.processPresignedUrl(c,r);return n}async getFilePayload(e){const c={sha1:await Dt(e),file_type:e.type,extension:Mc(e),size:e.size};return await this.client.files.addCache(e),c}}class fM extends v{constructor(){super(...arguments);h(this,"name","Form Identifier");h(this,"url","/form-identifiers");h(this,"actions",{addOne:ku,addMany:Nu,setOne:Gu,setMany:Hu,updateOne:Wu,updateMany:Ku,deleteOne:Yu,deleteMany:Zu,initialize:Lu});h(this,"selectors",{selectById:Xu,selectByIds:Qu})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected form identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(c(r)),r}}class SM extends v{constructor(){super(...arguments);h(this,"name","Form Identifier Value");h(this,"url","/form-identifier-values");h(this,"actions",{addOne:sl,addMany:il,setOne:nl,setMany:cl,updateOne:al,updateMany:rl,deleteOne:dl,deleteMany:ul,initialize:tl});h(this,"selectors",{selectById:ol,selectByIds:hl})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form_submission,e.form_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected form identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class AM extends j{constructor(){super(...arguments);h(this,"name","Form Revision Attachment");h(this,"url","/form-revision-attachments");h(this,"actions",{addOne:fl,addMany:Sl,setOne:Al,setMany:Il,updateOne:Tl,updateMany:Pl,deleteOne:Ol,deleteMany:Fl,initialize:yl});h(this,"selectors",{selectById:_l,selectByIds:gl})}getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form_revision__form__organization:e}},n);return this.dispatch(c(r)),r}}class IM extends v{constructor(){super(...arguments);h(this,"name","Form Revision");h(this,"url","/form-revisions");h(this,"actions",{addOne:vl,addMany:ei,setOne:El,setMany:Bl,updateOne:Vl,updateMany:zl,deleteOne:Dl,deleteMany:ti,initialize:wl});h(this,"selectors",{selectById:ql,selectByIds:Cl})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(c(r)),r}}class TM extends v{constructor(){super(...arguments);h(this,"name","Form");h(this,"url","/forms");h(this,"actions",{addOne:Nl,addMany:Gl,setOne:Hl,setMany:Wl,updateOne:Kl,updateMany:Yl,deleteOne:Zl,deleteMany:Jl,initialize:kl});h(this,"selectors",{selectById:xl,selectByIds:eo})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=P({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error("Expected form to exist");const u=this.select(_o(e)),d=this.select($l(e));this.dispatch(n(e)),this.dispatch(hi(E(u))),this.dispatch(ti(E(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(ei(d)),this.dispatch(oi(u)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class PM extends j{constructor(){super(...arguments);h(this,"name","Form Submission Attachment");h(this,"url","/form-submission-attachments");h(this,"actions",{addOne:io,addMany:ci,setOne:no,setMany:co,updateOne:ao,updateMany:ro,deleteOne:uo,deleteMany:ai,initialize:so});h(this,"selectors",{selectById:lo,selectByIds:oo})}getId(e){return e.uuid}getBlockers(e){return[e.form_submission]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,r=this.select(ui(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(a){throw this.dispatch(c(r)),a}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{form_submission__form_revision__form__organization:e}},n)).flat();return this.dispatch(c(a)),a}}class OM extends v{constructor(){super(...arguments);h(this,"name","Form Submission");h(this,"url","/form-submissions");h(this,"actions",{addOne:Ao,addMany:oi,setOne:fo,setMany:So,updateOne:Io,updateMany:To,deleteOne:Po,deleteMany:hi,initialize:yo});h(this,"selectors",{selectById:Fo,selectByIds:bo})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${a.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(ho(e));this.dispatch(n(e)),this.dispatch(ai(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(ci(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_revision__form_organization:e}},n)).flat();return this.dispatch(c(a)),a}}class FM extends j{constructor(){super(...arguments);h(this,"name","Geo Image");h(this,"url","/geo-images");h(this,"actions",{addOne:Eo,addMany:Bo,setOne:wo,setMany:vo,updateOne:Vo,updateMany:zo,deleteOne:Do,deleteMany:jo,initialize:Ro});h(this,"selectors",{selectById:Co,selectByIds:$o})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{project:e}},n);return this.dispatch(c(r)),r}}class bM extends v{constructor(){super(...arguments);h(this,"name","Issue Association");h(this,"url","/issue-associations");h(this,"actions",{addOne:Ko,addMany:ft,setOne:Go,setMany:No,updateOne:Ho,updateMany:Wo,deleteOne:Yo,deleteMany:St,initialize:ko});h(this,"selectors",{selectById:Jo,selectByIds:Xo})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=P({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.asset],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e){const{addMany:n,deleteMany:c,updateMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,submitted_at:u,created_by:a}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{payloads:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.issue,m.asset]),blocks:E(d)});return p.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(c(E(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Issue association with uuid ${e} not found in store.`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class _M extends j{constructor(){super(...arguments);h(this,"name","Issue Attachment");h(this,"url","/issue-attachments");h(this,"actions",{addOne:ch,addMany:Ai,setOne:ah,setMany:rh,updateOne:dh,updateMany:uh,deleteOne:lh,deleteMany:Ii,initialize:nh});h(this,"selectors",{selectById:mh,selectByIds:ph})}getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class gM extends j{constructor(){super(...arguments);h(this,"name","Issue Comment Attachment");h(this,"url","/issue-comment-attachments");h(this,"actions",{addOne:Ah,addMany:Ih,setOne:Th,setMany:Ph,updateOne:Oh,updateMany:Fh,deleteOne:bh,deleteMany:_h,initialize:Sh});h(this,"selectors",{selectById:Mh,selectByIds:Rh})}getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class MM extends v{constructor(){super(...arguments);h(this,"name","Issue Comment");h(this,"url","/issue-comments");h(this,"actions",{addOne:Bh,addMany:Vh,setOne:zh,setMany:Dh,updateOne:jh,updateMany:qh,deleteOne:Ch,deleteMany:$h,initialize:Eh});h(this,"selectors",{selectById:Uh,selectByIds:Lh})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>d.userReducer.currentUser.id),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[e.issue],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{setMany:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class RM extends v{constructor(){super(...arguments);h(this,"name","Issue");h(this,"url","/issues");h(this,"actions",{addOne:Hh,addMany:gi,setOne:Wh,setMany:Kh,updateOne:Yh,updateMany:Zh,deleteOne:Jh,deleteMany:Mi,initialize:Gh});h(this,"selectors",{selectById:Qh,selectByIds:xh})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=P({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.project,d.issue_type,d.status,d.priority],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const a={...r,...e};this.dispatch(n(a));const u={};for(const m of[$.TITLE,$.DESCRIPTION,$.STATUS,$.PRIORITY,$.ASSIGNED_TO,$.DUE_DATE])if(m in e&&e[m]!==r[m])switch(m){case $.PRIORITY:{const f=e[m],I=this.select(Ni(f));if(!I)throw new Error(`Trying to update issue type priority with ${f} which does not exist in store`);u[m]={name:I.name,color:I.color,uuid:I.uuid};break}case $.DUE_DATE:u[m]=e.due_date;break;case $.DESCRIPTION:u[m]=e.description??"";break;case $.TITLE:u[m]=e.title??"";break;case $.STATUS:{const f=e[m],I=this.select(Yi(f));if(!I)throw new Error(`Trying to update issue type status with ${f} which does not exist in store`);u[m]={name:I.name,color:I.color,uuid:I.uuid};break}case $.ASSIGNED_TO:{const f=e[m];if(f===null)u[m]=null;else{const I=this.select(Qt(f));if(!I)throw new Error(`Trying to update assigned to with ${f} which does not exist in store.`);u[m]={full_name:I.username,id:I.id}}break}}const d=P({created_by:this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),submitted_at:new Date().toISOString(),issue:r.uuid,changes:u});this.dispatch(Ji(d));const p=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return p.then(m=>{this.dispatch(n(m))}).catch(()=>{this.dispatch(n(r)),this.dispatch(Qi(d.uuid))}),[a,p]}bulkUpdate(e,n){const{updateMany:c}=this.actions,{selectByIds:r}=this.selectors,a=E(e).toSorted(jt);if(a.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(a)).toSorted(hs);if(a.length!=u.length)throw new Error(`Attempting to bulk update ${a.length-u.length} issues that dont exist in the store`);const d=[];for(let I=0;I<a.length;I++)d.push({...u[I],...e[I]});this.dispatch(c(d));const p=at(e,Math.min(n??e.length,k)),m=[];let f=null;for(const I of p){const R=rt.v4(),b=E(I),g=I.map(({status:B})=>B).filter(Boolean),_=I.map(({priority:B})=>B).filter(Boolean),w=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(f?[f]:[]).concat(b).concat(g).concat(_),blocks:[R].concat(b)});m.push(w),f=R}return Promise.all(m).then(I=>{this.dispatch(c(I.flat()))}).catch(()=>{this.dispatch(c(u))}),[d,m]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue with uuid ${e} found in the store`);const u=this.select(xo(e)),d=this.select(hh(e)),p=this.select($y(e));this.dispatch(n(e)),this.dispatch(Ii(E(d))),this.dispatch(xi(E(p))),this.dispatch(St(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(m){throw this.dispatch(c(a)),this.dispatch(Ai(d)),this.dispatch(Xi(p)),this.dispatch(ft(u)),m}}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e)),u=this.select(Qo(e));this.dispatch(c(e)),this.dispatch(St(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(a)),this.dispatch(ft(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class wM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Attachment");h(this,"url","/issue-type-attachments");h(this,"actions",{addOne:nm,addMany:cm,setOne:am,setMany:rm,updateOne:dm,updateMany:um,deleteOne:lm,deleteMany:om,initialize:im});h(this,"selectors",{selectById:mm,selectByIds:pm})}getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class vM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Fields Attachment");h(this,"url","/issue-type-fields-attachments");h(this,"actions",{addOne:Am,addMany:Im,setOne:Tm,setMany:Pm,updateOne:Om,updateMany:Fm,deleteOne:bm,deleteMany:_m,initialize:Sm});h(this,"selectors",{selectById:Mm,selectByIds:Rm})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class EM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Fields");h(this,"url","/issue-type-fields");h(this,"actions",{addOne:Wm,addMany:Km,setOne:Ym,setMany:Zm,updateOne:Jm,updateMany:Xm,deleteOne:Qm,deleteMany:xm,initialize:Hm});h(this,"selectors",{selectById:tp,selectByIds:sp})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class BM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Field Values Attachment");h(this,"url","/issue-type-field-values-attachments");h(this,"actions",{addOne:ap,addMany:Di,setOne:rp,setMany:dp,updateOne:up,updateMany:lp,deleteOne:op,deleteMany:ji,initialize:cp});h(this,"selectors",{selectById:mp,selectByIds:pp})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class VM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Field Values");h(this,"url","/issue-type-field-values");h(this,"actions",{addOne:Bm,addMany:Vm,setOne:zm,setMany:Dm,updateOne:jm,updateMany:qm,deleteOne:Cm,deleteMany:$m,initialize:Em});h(this,"selectors",{selectById:Lm,selectByIds:km})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.fields_revision,a.issue],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(yp(e));this.dispatch(n(e)),this.dispatch(ji(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Di(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class zM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Identifier");h(this,"url","/issue-type-identifiers");h(this,"actions",{addOne:Ip,addMany:Tp,setOne:Pp,setMany:Op,updateOne:Fp,updateMany:bp,deleteOne:_p,deleteMany:gp,initialize:Ap});h(this,"selectors",{selectById:Rp,selectByIds:wp})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected issue type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class DM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Identifier Value");h(this,"url","/issue-type-identifier-values");h(this,"actions",{addOne:Vp,addMany:zp,setOne:Dp,setMany:jp,updateOne:qp,updateMany:Cp,deleteOne:$p,deleteMany:Up,initialize:Bp});h(this,"selectors",{selectById:kp,selectByIds:Np})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.issue_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected issue type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class jM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Priority");h(this,"url","/issue-type-priorities");h(this,"actions",{addOne:Kp,addMany:Yp,setOne:Zp,setMany:Jp,updateOne:Xp,updateMany:Qp,deleteOne:xp,deleteMany:ey,initialize:Wp});h(this,"selectors",{selectById:Ni,selectByIds:sy})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing issue type priority with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue type priority with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class qM extends v{constructor(){super(...arguments);h(this,"name","Issue Type");h(this,"url","/issue-types");h(this,"actions",{addOne:ay,addMany:ry,setOne:dy,setMany:uy,updateOne:ly,updateMany:oy,deleteOne:hy,deleteMany:my,initialize:cy});h(this,"selectors",{selectById:yy,selectByIds:fy})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,submitted_at:u,created_by:a});this.dispatch(n(d));const p=this.enqueueRequest({method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const u=this.select(em(e));this.dispatch(n(e)),this.dispatch(Mi(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(gi(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class CM extends v{constructor(){super(...arguments);h(this,"name","Issue Type Status");h(this,"url","/issue-type-statuses");h(this,"actions",{addOne:Ty,addMany:Py,setOne:Oy,setMany:Fy,updateOne:by,updateMany:_y,deleteOne:gy,deleteMany:My,initialize:Iy});h(this,"selectors",{selectById:Yi,selectByIds:wy})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class $M extends v{constructor(){super(...arguments);h(this,"name","Issue Update");h(this,"url","/issue-updates");h(this,"actions",{addOne:Ji,addMany:Xi,setOne:Vy,setMany:zy,updateOne:Dy,updateMany:jy,deleteOne:Qi,deleteMany:xi,initialize:By});h(this,"selectors",{selectById:qy,selectByIds:Cy})}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}const UM=1800;function LM(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 kM extends Xg{constructor(){super(...arguments);h(this,"_getRenewedTokens",async e=>{const n=this.performRequest({method:o.POST,url:this.refreshTokensUrl,payload:{refresh:e},isAuthNeeded:!1,checkAuth:!1});let c;try{c=await n}catch(r){console.error("Could not renew tokens; clearing auth",r),this.clearAuth();return}if(!c.access)throw new Error("Missing access token");return{accessToken:c.access,refreshToken:c.refresh??this.getRefreshToken()}})}clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(Kd(!1)),this.clearTokens(),this.dispatch(T()),this.dispatch(T())}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 c;try{c=mb(e).exp??n}catch{c=n}return c-n<UM}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??Pt).toString()))}}}async handleUnauthorized(e,n){if(e.url.endsWith("/token/refresh/"))throw this.select(c=>c.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(c=>c.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=rt.v4();return console.debug(this.constructor.name,"Initiating auth"),this.performRequest({uuid:n,method:o.POST,url:this.initTokensUrl,payload:e,isAuthNeeded:!1,checkAuth:!1}).then(c=>{this.setTokens(LM(c))})}}class NM extends ht{constructor(){super(...arguments);h(this,"name","Organization Access");h(this,"url","/organization-accesses");h(this,"actions",{addOne:ef,addMany:tf,setOne:sf,setMany:nf,updateOne:cf,updateMany:af,deleteOne:rf,deleteMany:df,initialize:xy});h(this,"selectors",{selectById:lf,selectByIds:of})}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid)),a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(d=>{throw this.dispatch(n(r)),d}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e)),u=this.select(Qt(a.user));this.dispatch(n(a.uuid)),this.dispatch(cn(a.user));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${a.uuid}/`,blockers:[a.uuid],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(nn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class GM extends ht{constructor(){super(...arguments);h(this,"name","Organization");h(this,"url","/organizations");h(this,"actions",{addOne:Af,addMany:Sf,setOne:ff,setMany:yf,updateOne:Tf,updateMany:If,deleteOne:Pf,deleteMany:Of,initialize:pf});h(this,"selectors",{selectById:_f,selectByIds:gf})}async add(e){const{addOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(n(c)),c}async update(e){const{setOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return this.dispatch(n(c)),c}async invite(e,n){return this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/${e}/invite/${n}/`,blockers:[],blocks:[]})}async refreshStore(e){const{initialize:n}=this.actions,c=await this.list({},e);return this.dispatch(n(c)),c}}class HM extends v{constructor(){super(...arguments);h(this,"name","Project Access");h(this,"url","/project-accesses");h(this,"actions",{addOne:jf,addMany:qf,setOne:Cf,setMany:$f,updateOne:Uf,updateMany:Lf,deleteOne:kf,deleteMany:Nf,initialize:Df});h(this,"selectors",{selectById:Hf,selectByIds:Wf})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.organization_access,a.project],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(d=>{throw this.dispatch(r(a.uuid)),d}),[a,u]}bulkAdd(e){const{addMany:n,deleteMany:c,updateMany:r}=this.actions,a=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>P({...p,created_by:a}));this.dispatch(n(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{project_accesses:u.map(p=>M(p))},blockers:u.flatMap(p=>[p.project,p.organization_access]),blocks:u.map(p=>p.uuid)});return d.then(p=>{this.dispatch(r(p))}).catch(p=>{throw this.dispatch(c(u.map(m=>m.uuid))),p}),[u,d]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid)),a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[]});return u.then(d=>{this.dispatch(n(d))}).catch(d=>{throw this.dispatch(n(r)),d}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(c(r)),r}}class WM extends j{constructor(){super(...arguments);h(this,"name","Project Attachment");h(this,"url","/project-attachments");h(this,"actions",{addOne:Zf,addMany:Jf,setOne:Xf,setMany:Qf,updateOne:xf,updateMany:eS,deleteOne:tS,deleteMany:sS,initialize:Yf});h(this,"selectors",{selectById:nS,selectByIds:cS})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(c(r)),r}}class KM extends v{constructor(){super(...arguments);h(this,"name","Project Comment");h(this,"url","/project-comments");h(this,"actions",{addOne:uS,addMany:lS,setOne:oS,setMany:hS,updateOne:mS,updateMany:pS,deleteOne:yS,deleteMany:fS,initialize:dS});h(this,"selectors",{selectById:AS,selectByIds:IS})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.project],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Project comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Project comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class YM extends j{constructor(){super(...arguments);h(this,"name","Project File");h(this,"url","/project-files");h(this,"actions",{addOne:_S,addMany:gS,setOne:FS,setMany:bS,updateOne:MS,updateMany:RS,deleteOne:wS,deleteMany:vS,initialize:OS});h(this,"selectors",{selectById:VS,selectByIds:zS})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}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:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class ZM extends ht{constructor(){super(...arguments);h(this,"name","Project");h(this,"url","/projects");h(this,"actions",{addOne:LS,addMany:US,setOne:$S,setMany:CS,updateOne:NS,updateMany:kS,deleteOne:GS,deleteMany:HS,initialize:qS});h(this,"selectors",{selectById:YS,selectByIds:ZS})}async add(e){const{addOne:n}=this.actions,c=await this.performRequest({method:o.POST,url:`${this.url}/`,payload:M(e)});return this.dispatch(n(c)),c}async update(e){const{updateOne:n}=this.actions,c=await this.performRequest({method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e)});return this.dispatch(n(c)),c}async delete(e){const{deleteOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(n(e)),c}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class JM extends v{constructor(){super(...arguments);h(this,"name","Procedure");h(this,"url","/procedures");h(this,"actions",{addOne:hA,addMany:It,setOne:mA,setMany:pA,updateOne:yA,updateMany:fA,deleteOne:SA,deleteMany:Tt,initialize:oA});h(this,"selectors",{selectById:TA,selectByIds:PA})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_type,a.project,a.asset,...a.procedure_initiative?[a.procedure_initiative]:[]],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e,n){var b;const{store:c}=this.client,{addMany:r,updateMany:a,deleteMany:u}=this.actions,d=new Date().toISOString(),p=((b=c.getState().userReducer.currentUser)==null?void 0:b.id)??null,m=[],f=at(e,Math.min(n??e.length,k)),I=[];for(const g of f){const _=[],w=[],B=[];for(const D of g){const z=P({...D,submitted_at:d,created_by:p});m.push(z),_.push(M(z)),w.push(z.procedure_type,z.project,z.asset,...z.procedure_initiative?[z.procedure_initiative]:[]),B.push(z.uuid)}const C={payload:{submitted_at:d,payloads:_},blockers:w,blocks:B};I.push(C)}this.dispatch(r(m));const R=I.map(g=>{const{payload:_,blocks:w,blockers:B}=g;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:_,blockers:B,blocks:w})});return Promise.all(R).then(g=>{this.dispatch(a(g.flat()))}).catch(()=>{this.dispatch(u(E(m)))}),[m,Promise.all(R).then(g=>g.flat())]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected procedure with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(c(E(a)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class XM extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Assignee");h(this,"url","/procedure-step-assignees");h(this,"actions",{addOne:RA,addMany:wA,setOne:vA,setMany:EA,updateOne:BA,updateMany:VA,deleteOne:zA,deleteMany:DA,initialize:MA});h(this,"selectors",{selectById:qA,selectByIds:CA})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,created_by:a,submitted_at:u}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{procedure_step_assignees:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.procedure,m.procedure_step]),blocks:E(d)});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(E(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step assignee with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class QM extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Comment");h(this,"url","/procedure-step-comments");h(this,"actions",{addOne:kA,addMany:NA,setOne:GA,setMany:HA,updateOne:WA,updateMany:KA,deleteOne:YA,deleteMany:ZA,initialize:LA});h(this,"selectors",{selectById:XA,selectByIds:QA})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Procedure step comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Procedure step comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class xM extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Default Assignee");h(this,"url","/procedure-step-default-assignees");h(this,"actions",{addOne:sI,addMany:iI,setOne:nI,setMany:cI,updateOne:aI,updateMany:rI,deleteOne:dI,deleteMany:uI,initialize:tI});h(this,"selectors",{selectById:oI,selectByIds:hI})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step default assignee with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class eR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Default Reviewer");h(this,"url","/procedure-step-default-reviewers");h(this,"actions",{addOne:fI,addMany:SI,setOne:AI,setMany:II,updateOne:TI,updateMany:PI,deleteOne:OI,deleteMany:FI,initialize:yI});h(this,"selectors",{selectById:_I,selectByIds:gI})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step default reviewer with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class tR extends ht{constructor(){super(...arguments);h(this,"name","Procedure Step Event");h(this,"url","/procedure-step-events");h(this,"actions",{addOne:vI,addMany:EI,setOne:BI,setMany:VI,updateOne:zI,updateMany:DI,deleteOne:jI,deleteMany:qI,initialize:wI});h(this,"selectors",{selectById:$I,selectByIds:UI})}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class sR extends j{constructor(){super(...arguments);h(this,"name","Procedure Step Fields Attachment");h(this,"url","/procedure-step-fields-attachments");h(this,"actions",{addOne:GI,addMany:Mn,setOne:HI,setMany:WI,updateOne:KI,updateMany:YI,deleteOne:ZI,deleteMany:Rn,initialize:NI});h(this,"selectors",{selectById:QI,selectByIds:xI})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){return P({...e,created_by:this.select(n=>{var c;return((c=n.userReducer.currentUser)==null?void 0:c.id)??null}),submitted_at:new Date().toISOString()})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class iR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Fields");h(this,"url","/procedure-step-fields");h(this,"actions",{addOne:iT,addMany:nT,setOne:cT,setMany:aT,updateOne:rT,updateMany:dT,deleteOne:uT,deleteMany:lT,initialize:sT});h(this,"selectors",{selectById:oT,selectByIds:hT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step fields with uuid ${e} to exist`);const u=this.select(XI(e));this.dispatch(n(e)),this.dispatch(Rn(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Mn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class nR extends j{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values Attachment");h(this,"url","/procedure-step-field-values-attachments");h(this,"actions",{addOne:fT,addMany:Vn,setOne:ST,setMany:AT,updateOne:IT,updateMany:TT,deleteOne:PT,deleteMany:zn,initialize:yT});h(this,"selectors",{selectById:FT,selectByIds:bT})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class cR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values Review");h(this,"url","/procedure-step-field-values-reviews");h(this,"actions",{addOne:NT,addMany:Cn,setOne:GT,setMany:HT,updateOne:WT,updateMany:KT,deleteOne:YT,deleteMany:$n,initialize:kT});h(this,"selectors",{selectById:JT,selectByIds:XT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.field_values],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Procedure step field values review with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Procedure step field values review with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class aR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values");h(this,"url","/procedure-step-field-values");h(this,"actions",{addOne:wT,addMany:vT,setOne:ET,setMany:BT,updateOne:VT,updateMany:zT,deleteOne:DT,deleteMany:jT,initialize:RT});h(this,"selectors",{selectById:$T,selectByIds:UT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.procedure,e.procedure_step,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(R=>{var b;return((b=R.userReducer.currentUser)==null?void 0:b.id)??null}),p=[],m=at(e,Math.min(n??e.length,k)),f=[];for(const R of m){const b=[],g=[],_=[];for(const w of R){const B=P({...w,values:w.values,created_by:d,submitted_at:u});p.push(B),b.push(M(B)),g.push(B.procedure_step,B.procedure,B.fields_revision),_.push(B.uuid)}f.push({payload:{payloads:b,submitted_at:u},blockers:g,blocks:_})}this.dispatch(c(p));const I=f.map(R=>{const{payload:b,blocks:g,blockers:_}=R;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_,blocks:g})});return Promise.all(I).then(R=>{this.dispatch(r(R.flat()))}).catch(()=>{this.dispatch(a(E(p)))}),[p,Promise.all(I).then(R=>R.flat())]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.procedure,a.procedure_step,a.fields_revision],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e} to exist`);const u=this.select(_T(e)),d=this.select(QT(e));this.dispatch(n(e)),this.dispatch(zn(E(u))),this.dispatch($n(E(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(Vn(u)),this.dispatch(Cn(d)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class rR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Reviewer");h(this,"url","/procedure-step-reviewers");h(this,"actions",{addOne:sP,addMany:iP,setOne:nP,setMany:cP,updateOne:aP,updateMany:rP,deleteOne:dP,deleteMany:uP,initialize:tP});h(this,"selectors",{selectById:oP,selectByIds:hP})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,created_by:a,submitted_at:u}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{procedure_step_reviewers:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.procedure,m.procedure_step]),blocks:d.map(m=>m.uuid)});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.map(m=>m.uuid)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step reviewer with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class dR extends v{constructor(){super(...arguments);h(this,"name","Procedure Initiative");h(this,"url","/procedure-initiatives");h(this,"actions",{addOne:QS,addMany:xS,setOne:eA,setMany:tA,updateOne:sA,updateMany:iA,deleteOne:nA,deleteMany:cA,initialize:XS});h(this,"selectors",{selectById:dA,selectByIds:uA})}add(e){var p;const{store:n}=this.client,{addOne:c,setOne:r,deleteOne:a}=this.actions,u=P({...e,created_by:((p=n.getState().userReducer.currentUser)==null?void 0:p.id)??null,submitted_at:new Date().toISOString()});this.dispatch(c(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(u),blockers:[u.procedure_type,u.project],blocks:[u.uuid]});return d.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(a(u.uuid))}),[u,d]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ${this.name} with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected ${this.name} with uuid ${e} to exist`);const u=this.select(_A(e));this.dispatch(n(e)),this.dispatch(Tt(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(It(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class uR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step");h(this,"url","/procedure-steps");h(this,"actions",{addOne:AP,addMany:IP,setOne:fP,setMany:SP,updateOne:TP,updateMany:PP,deleteOne:OP,deleteMany:FP,initialize:yP});h(this,"selectors",{selectById:_P,selectByIds:gP})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_type],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`No procedure step with uuid ${e.uuid} found in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${r.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No procedure step with uuid ${e} found in the store`);this.dispatch(c(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class lR extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Attachment");h(this,"url","/procedure-type-attachments");h(this,"actions",{addOne:wP,addMany:vP,setOne:EP,setMany:BP,updateOne:VP,updateMany:zP,deleteOne:DP,deleteMany:jP,initialize:RP});h(this,"selectors",{selectById:$P,selectByIds:UP})}getId(e){return e.uuid}getBlockers(e){return[e.procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const{procedure_type:n,file_sha1:c,file_extension:r,file_name:a,file_type:u,file_url:d}=e,p=this.select(f=>{var I;return((I=f.userReducer.currentUser)==null?void 0:I.id)??null}),m=new Date().toISOString();return P({file_url:d,file_sha1:c,file_extension:r,file_name:a,file_type:u,created_by:p,submitted_at:m,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,procedure_type:e.procedure_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,procedure_type:e.procedure_type}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class oR extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Fields Attachment");h(this,"url","/procedure-type-fields-attachments");h(this,"actions",{addOne:NP,addMany:GP,setOne:HP,setMany:WP,updateOne:KP,updateMany:YP,deleteOne:ZP,deleteMany:JP,initialize:kP});h(this,"selectors",{selectById:xP,selectByIds:eO})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class hR extends v{constructor(){super(...arguments);h(this,"name","Procedure Type Fields");h(this,"url","/procedure-type-fields");h(this,"actions",{addOne:iO,addMany:nO,setOne:cO,setMany:aO,updateOne:rO,updateMany:dO,deleteOne:uO,deleteMany:lO,initialize:sO});h(this,"selectors",{selectById:mO,selectByIds:pO})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.procedure_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class mR extends j{constructor(){super(...arguments);h(this,"name","Procedure Field Values Attachment");h(this,"url","/procedure-field-values-attachments");h(this,"actions",{addOne:SO,addMany:Jn,setOne:AO,setMany:IO,updateOne:TO,updateMany:PO,deleteOne:OO,deleteMany:Xn,initialize:fO});h(this,"selectors",{selectById:_O,selectByIds:gO})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return P({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class pR extends v{constructor(){super(...arguments);h(this,"name","Procedure Field Values");h(this,"url","/procedure-field-values");h(this,"actions",{addOne:vO,addMany:EO,setOne:BO,setMany:VO,updateOne:zO,updateMany:DO,deleteOne:jO,deleteMany:qO,initialize:wO});h(this,"selectors",{selectById:UO,selectByIds:LO})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.fields_revision,e.procedure],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(R=>{var b;return((b=R.userReducer.currentUser)==null?void 0:b.id)??null}),p=[],m=at(e,Math.min(n??e.length,k)),f=[];for(const R of m){const b=[],g=[],_=[];for(const w of R){const B=P({...w,values:w.values,created_by:d,submitted_at:u});p.push(B),b.push(M(B)),g.push(B.procedure,B.fields_revision),_.push(B.uuid)}f.push({payload:{payloads:b,submitted_at:u},blockers:g,blocks:_})}this.dispatch(c(p));const I=f.map(R=>{const{payload:b,blocks:g,blockers:_}=R;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_,blocks:g})});return Promise.all(I).then(R=>{this.dispatch(r(R.flat()))}).catch(()=>{this.dispatch(a(E(p)))}),[p,Promise.all(I).then(R=>R.flat())]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ProcedureFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.fields_revision,a.procedure],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(MO(e));this.dispatch(n(e)),this.dispatch(Xn(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Jn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class yR extends v{constructor(){super(...arguments);h(this,"name","Procedure Type");h(this,"url","/procedure-types");h(this,"actions",{addOne:GO,addMany:HO,setOne:WO,setMany:KO,updateOne:YO,updateMany:ZO,deleteOne:JO,deleteMany:XO,initialize:NO});h(this,"selectors",{selectById:eF,selectByIds:tF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected procedure type with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure type with uuid ${e} to exist`);const u=this.select(OA(e));this.dispatch(n(e)),this.dispatch(Tt(E(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(It(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class fR extends v{constructor(){super(...arguments);h(this,"name","Team Membership");h(this,"url","/team-memberships");h(this,"actions",{addOne:cF,addMany:aF,setOne:rF,setMany:dF,updateOne:uF,updateMany:lF,deleteOne:oF,deleteMany:hF,initialize:nF});h(this,"selectors",{selectById:yF,selectByIds:fF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[e.team],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>P({...p,created_by:a}));this.dispatch(n(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{team_memberships:u.map(p=>M(p))},blockers:u.map(p=>p.team),blocks:u.map(p=>p.uuid)});return d.then(p=>{this.dispatch(c(p))}).catch(()=>{this.dispatch(r(u.map(p=>p.uuid)))}),[u,d]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{team__organization:e}},n);return this.dispatch(c(r)),r}}class SR extends v{constructor(){super(...arguments);h(this,"name","Team");h(this,"url","/teams");h(this,"actions",{addOne:IF,addMany:TF,setOne:PF,setMany:OF,updateOne:FF,updateMany:bF,deleteOne:_F,deleteMany:gF,initialize:AF});h(this,"selectors",{selectById:RF,selectByIds:wF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=P({...e,submitted_at:new Date().toISOString(),created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e),blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class AR extends ht{constructor(){super(...arguments);h(this,"name","User");h(this,"url","/user");h(this,"actions",{addOne:nn,addMany:Hy,setOne:Gy,setMany:Ny,updateOne:Ky,updateMany:Wy,deleteOne:cn,deleteMany:Yy,initialize:ky});h(this,"selectors",{selectById:Qt,selectByIds:Xy})}async list(e,n){const{organizationUuid:c,...r}=e,a=c?`/organizations/${c}${this.url}s/`:`/${this.url}`;return this.performRequest({method:o.GET,url:a,...r},n)}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({organizationUuid:e},n);return this.dispatch(c(r)),r}}async function lc(t,s,e,n,c){const r=n instanceof ot;r&&s.checkAuth!==!1&&await n.auth.prepareAuth();const a={queryParams:"",isAuthNeeded:!0},{s3url:u,payload:d,headers:p,method:m,queryParams:f,attachmentHash:I,isExternalUrl:R,isAuthNeeded:b,isResponseBlob:g}={...a,...s};let _=s.url;const w=I?await e.files.fetchCache(I):void 0;if(I&&!w)throw new Error(`Cannot upload file ${I} because it's not cached.`);!R&&!_.startsWith("http")&&(!_.startsWith("/")&&!_.startsWith("blob:")&&(_="/"+_),_=t+_);const B=q=>{if(I){if(!u)throw new Error(`No S3 URL for file ${I}`);if("warning"in u)throw new Error(`S3 URL warning for file ${I}`);if(!w)throw new Error(`No file for file ${I}`);const N=u.fields["x-amz-checksum-sha1"];if(!N)throw new Error(`No checksum for file ${I}`);return q.set("x-amz-checksum-sha1",N).field({...d,...u.fields}).attach("file",w)}return q.send(d)},D={[o.GET]:()=>g?pt.get(_.toString()).responseType("blob"):pt.get(_.toString()),[o.POST]:()=>{const q=pt.post(_.toString());return B(q)},[o.PATCH]:()=>{const q=pt.patch(_.toString());return B(q)},[o.PUT]:()=>{const q=pt.put(_.toString());return B(q)},[o.DELETE]:()=>{const q=pt.delete(_.toString());return B(q)}}[m];let z=D();const bt=()=>{console.debug("aborting request:",s.url),z.abort()};if(c==null||c.addEventListener("abort",bt),b&&r){const q=n.auth.getAuthHeader();z=z.set("Authorization",q)}p&&(z=z.set(p));try{return await z.query(f)}catch(q){const N=KF(q),as=N==null?void 0:N.status;if(r&&as===401)return await n.auth.handleUnauthorized(z,N),z.query(f);throw new U({response:N,innerError:q,discard:dc.includes(as)})}finally{c==null||c.removeEventListener("abort",bt)}}class IR{constructor(s){h(this,"store");this.store=s}_performRequest(s,e,n,c){const r=new rs,a={...e,uuid:e.uuid??rt.v4()};return lc(s,a,this,n,c).then(u=>{r.resolve(u.body)}).catch(u=>{u instanceof Error?r.reject(u):r.reject(new Error((u??Pt).toString()))}),r}async performRequest(s,e,n,c){return this._performRequest(s,e,n,c).then(r=>{if(r instanceof U)throw r;return r})}async enqueueRequest(s,e,n){return this._enqueueRequest(s,e,n).then(c=>{if(c instanceof U)throw c;return c})}_enqueueRequest(s,e,n){const c=new rs,r={...s,BASE_URL:e,serviceName:n},a=this.store.dispatch(vf(r)),u=p=>{if(p)c.resolve(p.body);else{const m=new U({message:"Could not get a response from the server.",response:p,discard:!0});c.reject(m)}},d=p=>{p instanceof U?p.options.discard=!0:(console.error("Received an unexpected error while processing a request:",p,`
14
- Converting error to APIError and discarding.`),p=new U({message:"An error occurred while processing the request.",innerError:p,discard:!0})),c.reject(p)};return a.then(u,d),c}async performPagination(s,e,n,c,r){const a={...e,queryParams:{...e.queryParams,paginate:!0,limit:n}},{method:u}=a,d=[];let p=await this.performRequest(s,a,c,r);for(d.push(p.results);p.next;)p=await this.performRequest(s,{url:p.next,method:u},c,r),d.push(p.results);return d}}class Ot{constructor(){h(this,"graph");h(this,"requestAttemptCounter");this.graph=new pb.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(s){const e=new Ot;for(let n=0;n<s.length;n++){const c=s[n];if(!c){console.error("Outbox item was undefined");continue}e.sneakRequest(c);for(let r=0;r<n;r++){const a=s[r];if(!a){console.error("Previous outbox item was undefined");continue}a.payload.uuid!==c.payload.uuid&&a.payload.blocks.some(u=>c.payload.blockers.includes(u))&&Ot._addDependency(c.payload.uuid,a.payload.uuid,e.graph)}}return e}_addDependency(s,e){Ot._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),c=new Set(n.payload.blocks);s.payload.blockers.some(r=>c.has(r))&&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),c=new Set(s.payload.blocks);n.payload.blockers.some(r=>c.has(r))&&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 c of s){const r=this.requestAttemptCounter[c]||0;r<e&&(e=r,n=c)}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),c=s.findIndex(r=>r.payload.uuid===n.payload.uuid);c!==-1&&(s.splice(c,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 c=this.requestAttemptCounter[e.payload.uuid]||0,r=this.requestAttemptCounter[n.payload.uuid]||0;return c-r}),s}registerRetry(s){this.requestAttemptCounter[s]=(this.requestAttemptCounter[s]||0)+1}}let YF;function ZF(t){YF=t}function Ft(){return YF}let JF;function XF(t){JF=t}function QF(){return JF}let oc=null;function mt(){const t=Ft();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(oc)return oc;const s=t.getState().offline.outbox,e=Ot._fromOutbox(s);return oc=e,e}const TR=(t,s)=>{const e=new s(t);return XF(e),ZF(t),e};class PR{constructor(s){h(this,"_all");h(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 hc{constructor(){h(this,"next");this.next=null}then(s){return new PR(this).then(s)}async run(s){if(this.next)return this.next.run(s);{if(console.debug("Middleware finished. Performing request:",s.payload.url),!Ft())throw new Error("Client store not set");const n=QF();if(!n)throw new Error("Client SDK not set");return GF(s,n)}}}class xF extends hc{async run(s){return super.run(s)}}class eb extends hc{async run(s){return super.run(s)}}const tb=new xF().then(new eb).compile();function sb(t){var s;return(s=tb[0])==null?void 0:s.run(t)}var ib=(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))(ib||{});i.ALL_MIDDLEWARE=tb,i.APIError=U,i.AgentService=Qg,i.AssetAttachmentService=xg,i.AssetCommentService=eM,i.AssetService=tM,i.AssetStatusType=Tc,i.AssetTypeAttachmentService=sM,i.AssetTypeFieldValuesAttachmentService=cM,i.AssetTypeFieldValuesService=aM,i.AssetTypeFieldsAttachmentService=iM,i.AssetTypeFieldsService=nM,i.AssetTypeIdentifierService=rM,i.AssetTypeIdentifierValueService=dM,i.AssetTypeService=uM,i.AssetTypeStatusService=lM,i.AttachmentModel=Pc,i.BaseApiService=ot,i.BaseModelApiService=ht,i.BaseOfflineFileModelApiService=j,i.BaseOfflineModelApiService=v,i.BaseSDK=IR,i.COMMON_AUTO_FIELDS=Bc,i.DEFAULT_PAGE_SIZE=zF,i.DISCARD_HTTP_STATUSES=dc,i.DeferredPromise=rs,i.DocumentAttachmentService=oM,i.DocumentService=hM,i.EMPTY_ARRAY=fc,i.EMPTY_OBJECT=Sc,i.EmailDomainsService=mM,i.EmailVerificationService=pM,i.FILE_MODEL_DEFAULT_PAGE_SIZE=DF,i.FileService=yM,i.FormIdentifierService=fM,i.FormIdentifierValueService=SM,i.FormRevisionAttachmentService=AM,i.FormRevisionService=IM,i.FormService=TM,i.FormSubmissionAttachmentService=PM,i.FormSubmissionService=OM,i.GeoImageService=FM,i.HttpMethod=o,i.IssueAssociationService=bM,i.IssueAttachmentService=_M,i.IssueCommentAttachmentService=gM,i.IssueCommentService=MM,i.IssuePriorityType=Fc,i.IssueService=RM,i.IssueStatusType=Oc,i.IssueTypeAttachmentService=wM,i.IssueTypeFieldValuesAttachmentService=BM,i.IssueTypeFieldValuesService=VM,i.IssueTypeFieldsAttachmentService=vM,i.IssueTypeFieldsService=EM,i.IssueTypeIdentifierService=zM,i.IssueTypeIdentifierValueService=DM,i.IssueTypePriorityService=jM,i.IssueTypeService=qM,i.IssueTypeStatusService=CM,i.IssueUpdateChange=$,i.IssueUpdateService=$M,i.JWTService=kM,i.MAX_SERVICE_BATCH_SIZE=k,i.OUTBOX_RETRY_DELAY=Ac,i.OfflineAnalyticsMiddleware=xF,i.OfflineMiddleware=hc,i.OrganizationAccessLevel=Ic,i.OrganizationAccessService=NM,i.OrganizationService=GM,i.OutboxCoordinator=Ot,i.ProcdureInitiativeService=dR,i.ProcedureFieldValuesAttachmentService=mR,i.ProcedureFieldValuesService=pR,i.ProcedureService=JM,i.ProcedureStepAssigneeService=XM,i.ProcedureStepCommentService=QM,i.ProcedureStepDefaultAssigneeService=xM,i.ProcedureStepDefaultReviewerService=eR,i.ProcedureStepEventService=tR,i.ProcedureStepEventType=bc,i.ProcedureStepFieldValuesAttachmentService=nR,i.ProcedureStepFieldValuesReviewService=cR,i.ProcedureStepFieldValuesReviewType=_c,i.ProcedureStepFieldValuesService=aR,i.ProcedureStepFieldsAttachmentService=sR,i.ProcedureStepFieldsService=iR,i.ProcedureStepReviewerService=rR,i.ProcedureStepService=uR,i.ProcedureTypeAttachmentService=lR,i.ProcedureTypeFieldsAttachmentService=oR,i.ProcedureTypeFieldsService=hR,i.ProcedureTypeService=yR,i.ProjectAccessService=HM,i.ProjectAttachmentService=WM,i.ProjectCommentService=KM,i.ProjectFileService=YM,i.ProjectService=ZM,i.RESET_ORGANIZATION_STATE=F,i.RESET_PROJECT_STATE=V,i.RESET_STATE=T,i.RateLimitingMiddleware=eb,i.SelectorBuilder=jb,i.TeamMembershipService=fR,i.TeamService=SR,i.UNKNOWN_ERROR_MESSAGE=Pt,i.UserService=AR,i.VERSION_REDUCER_KEY=gt,i.VerificationCodeType=ib,i._setLatestRetryTime=Bf,i.addAsset=Ia,i.addAssetAttachment=Wc,i.addAssetAttachments=fs,i.addAssetComment=ca,i.addAssetComments=qt,i.addAssetType=Od,i.addAssetTypeAttachment=Ba,i.addAssetTypeAttachments=bs,i.addAssetTypeFieldValues=Br,i.addAssetTypeFieldValuesAttachment=Ir,i.addAssetTypeFieldValuesAttachments=Es,i.addAssetTypeFieldValuesMany=Vr,i.addAssetTypeFields=cr,i.addAssetTypeFieldsAttachment=Ha,i.addAssetTypeFieldsAttachments=Wa,i.addAssetTypeFieldsMany=ar,i.addAssetTypeIdentifier=Wr,i.addAssetTypeIdentifierValue=ad,i.addAssetTypeIdentifierValues=rd,i.addAssetTypeIdentifiers=Kr,i.addAssetTypeStatus=zd,i.addAssetTypeStatuses=Dd,i.addAssetTypes=Fd,i.addAssets=Ps,i.addConversation=Uc,i.addConversations=qb,i.addDocument=ou,i.addDocumentAttachment=Xd,i.addDocumentAttachments=Qd,i.addDocuments=hu,i.addEmailDomain=_u,i.addEmailDomains=gu,i.addForm=Nl,i.addFormIdentifier=ku,i.addFormIdentifierValue=sl,i.addFormIdentifierValues=il,i.addFormIdentifiers=Nu,i.addFormRevision=vl,i.addFormRevisionAttachment=fl,i.addFormRevisionAttachments=Sl,i.addFormRevisions=ei,i.addFormSubmission=Ao,i.addFormSubmissionAttachment=io,i.addFormSubmissionAttachments=ci,i.addFormSubmissions=oi,i.addForms=Gl,i.addGeoImage=Eo,i.addGeoImages=Bo,i.addIssue=Hh,i.addIssueAssociation=Ko,i.addIssueAssociations=ft,i.addIssueAttachment=ch,i.addIssueAttachments=Ai,i.addIssueComment=Bh,i.addIssueCommentAttachment=Ah,i.addIssueCommentAttachments=Ih,i.addIssueComments=Vh,i.addIssueType=ay,i.addIssueTypeAttachment=nm,i.addIssueTypeAttachments=cm,i.addIssueTypeFieldValues=Bm,i.addIssueTypeFieldValuesAttachment=ap,i.addIssueTypeFieldValuesAttachments=Di,i.addIssueTypeFieldValuesMany=Vm,i.addIssueTypeFields=Wm,i.addIssueTypeFieldsAttachment=Am,i.addIssueTypeFieldsAttachments=Im,i.addIssueTypeFieldsMany=Km,i.addIssueTypeIdentifier=Ip,i.addIssueTypeIdentifierValue=Vp,i.addIssueTypeIdentifierValues=zp,i.addIssueTypeIdentifiers=Tp,i.addIssueTypePriorities=Yp,i.addIssueTypePriority=Kp,i.addIssueTypeStatus=Ty,i.addIssueTypeStatuses=Py,i.addIssueTypes=ry,i.addIssueUpdate=Ji,i.addIssueUpdates=Xi,i.addIssues=gi,i.addOrganization=Af,i.addOrganizationAccess=ef,i.addOrganizationAccesses=tf,i.addOrganizations=Sf,i.addProcedure=hA,i.addProcedureFieldValues=vO,i.addProcedureFieldValuesAttachment=SO,i.addProcedureFieldValuesAttachments=Jn,i.addProcedureFieldValuesMany=EO,i.addProcedureInitiative=QS,i.addProcedureInitiatives=xS,i.addProcedureStep=AP,i.addProcedureStepAssignee=RA,i.addProcedureStepAssignees=wA,i.addProcedureStepComment=kA,i.addProcedureStepComments=NA,i.addProcedureStepDefaultAssignee=sI,i.addProcedureStepDefaultAssignees=iI,i.addProcedureStepDefaultReviewer=fI,i.addProcedureStepDefaultReviewers=SI,i.addProcedureStepEvent=vI,i.addProcedureStepEvents=EI,i.addProcedureStepFieldValues=wT,i.addProcedureStepFieldValuesAttachment=fT,i.addProcedureStepFieldValuesAttachments=Vn,i.addProcedureStepFieldValuesMany=vT,i.addProcedureStepFieldValuesReview=NT,i.addProcedureStepFieldValuesReviews=Cn,i.addProcedureStepFields=iT,i.addProcedureStepFieldsAttachment=GI,i.addProcedureStepFieldsAttachments=Mn,i.addProcedureStepFieldsMany=nT,i.addProcedureStepReviewer=sP,i.addProcedureStepReviewers=iP,i.addProcedureSteps=IP,i.addProcedureType=GO,i.addProcedureTypeAttachment=wP,i.addProcedureTypeAttachments=vP,i.addProcedureTypeFields=iO,i.addProcedureTypeFieldsAttachment=NP,i.addProcedureTypeFieldsAttachments=GP,i.addProcedureTypeFieldsMany=nO,i.addProcedureTypes=HO,i.addProcedures=It,i.addProject=LS,i.addProjectAccess=jf,i.addProjectAccesses=qf,i.addProjectAttachment=Zf,i.addProjectAttachments=Jf,i.addProjectComment=uS,i.addProjectComments=lS,i.addProjectFile=_S,i.addProjectFiles=gS,i.addProjects=US,i.addTeam=IF,i.addTeamMembership=cF,i.addTeamMemberships=aF,i.addTeams=TF,i.addUser=nn,i.addUsers=Hy,i.agentsReducer=Nc,i.agentsSlice=ms,i.areArraysEqual=Ab,i.assetAttachmentReducer=sa,i.assetAttachmentSlice=ys,i.assetCommentReducer=fa,i.assetCommentSlice=Is,i.assetReducer=wa,i.assetSlice=Ts,i.assetTypeAttachmentReducer=ka,i.assetTypeAttachmentSlice=Fs,i.assetTypeFieldValuesAttachmentReducer=wr,i.assetTypeFieldValuesAttachmentSlice=vs,i.assetTypeFieldValuesReducer=Nr,i.assetTypeFieldValuesSlice=zs,i.assetTypeFieldsAttachmentReducer=sr,i.assetTypeFieldsAttachmentSlice=Ms,i.assetTypeFieldsReducer=fr,i.assetTypeFieldsSlice=ws,i.assetTypeIdentifierReducer=id,i.assetTypeIdentifierSlice=Ds,i.assetTypeIdentifierValueReducer=Sd,i.assetTypeIdentifierValueSlice=qs,i.assetTypeReducer=Ed,i.assetTypeSlice=Cs,i.assetTypeStatusReducer=Hd,i.assetTypeStatusSlice=Us,i.assetTypeStatusSortFn=Vc,i.authReducer=Yd,i.authSlice=Nt,i.baseReducer=qg,i.baseReducers=rc,i.clearTokens=s_,i.createModelAdapter=O,i.createOfflineAction=Rf,i.createPayload=M,i.createSelectionAdapter=yb,i.deleteAsset=Oa,i.deleteAssetAttachment=Xc,i.deleteAssetAttachments=Ss,i.deleteAssetComment=la,i.deleteAssetComments=Ct,i.deleteAssetType=gd,i.deleteAssetTypeAttachment=qa,i.deleteAssetTypeAttachments=_s,i.deleteAssetTypeFieldValues=Cr,i.deleteAssetTypeFieldValuesAttachment=br,i.deleteAssetTypeFieldValuesAttachments=Bs,i.deleteAssetTypeFieldValuesMany=$r,i.deleteAssetTypeFields=or,i.deleteAssetTypeFieldsAttachment=Xa,i.deleteAssetTypeFieldsAttachments=Qa,i.deleteAssetTypeFieldsMany=hr,i.deleteAssetTypeIdentifier=Qr,i.deleteAssetTypeIdentifierValue=hd,i.deleteAssetTypeIdentifierValues=md,i.deleteAssetTypeIdentifiers=xr,i.deleteAssetTypeStatus=Ud,i.deleteAssetTypeStatuses=Ld,i.deleteAssetTypes=Md,i.deleteAssets=Os,i.deleteConversation=Ub,i.deleteConversations=Lb,i.deleteDocument=Su,i.deleteDocumentAttachment=iu,i.deleteDocumentAttachments=nu,i.deleteDocuments=Au,i.deleteEmailDomain=Eu,i.deleteEmailDomains=Bu,i.deleteForm=Zl,i.deleteFormIdentifier=Yu,i.deleteFormIdentifierValue=dl,i.deleteFormIdentifierValues=ul,i.deleteFormIdentifiers=Zu,i.deleteFormRevision=Dl,i.deleteFormRevisionAttachment=Ol,i.deleteFormRevisionAttachments=Fl,i.deleteFormRevisions=ti,i.deleteFormSubmission=Po,i.deleteFormSubmissionAttachment=uo,i.deleteFormSubmissionAttachments=ai,i.deleteFormSubmissions=hi,i.deleteForms=Jl,i.deleteGeoImage=Do,i.deleteGeoImages=jo,i.deleteIssue=Jh,i.deleteIssueAssociation=Yo,i.deleteIssueAssociations=St,i.deleteIssueAttachment=lh,i.deleteIssueAttachments=Ii,i.deleteIssueComment=Ch,i.deleteIssueCommentAttachment=bh,i.deleteIssueCommentAttachments=_h,i.deleteIssueComments=$h,i.deleteIssueType=hy,i.deleteIssueTypeAttachment=lm,i.deleteIssueTypeAttachments=om,i.deleteIssueTypeFieldValues=Cm,i.deleteIssueTypeFieldValuesAttachment=op,i.deleteIssueTypeFieldValuesAttachments=ji,i.deleteIssueTypeFieldValuesMany=$m,i.deleteIssueTypeFields=Qm,i.deleteIssueTypeFieldsAttachment=bm,i.deleteIssueTypeFieldsAttachments=_m,i.deleteIssueTypeFieldsMany=xm,i.deleteIssueTypeIdentifier=_p,i.deleteIssueTypeIdentifierValue=$p,i.deleteIssueTypeIdentifierValues=Up,i.deleteIssueTypeIdentifiers=gp,i.deleteIssueTypePriorities=ey,i.deleteIssueTypePriority=xp,i.deleteIssueTypeStatus=gy,i.deleteIssueTypeStatuses=My,i.deleteIssueTypes=my,i.deleteIssueUpdate=Qi,i.deleteIssueUpdates=xi,i.deleteIssues=Mi,i.deleteOrganization=Pf,i.deleteOrganizationAccess=rf,i.deleteOrganizationAccesses=df,i.deleteOrganizations=Of,i.deleteProcedure=SA,i.deleteProcedureFieldValues=jO,i.deleteProcedureFieldValuesAttachment=OO,i.deleteProcedureFieldValuesAttachments=Xn,i.deleteProcedureFieldValuesMany=qO,i.deleteProcedureInitiative=nA,i.deleteProcedureInitiatives=cA,i.deleteProcedureStep=OP,i.deleteProcedureStepAssignee=zA,i.deleteProcedureStepAssignees=DA,i.deleteProcedureStepComment=YA,i.deleteProcedureStepComments=ZA,i.deleteProcedureStepDefaultAssignee=dI,i.deleteProcedureStepDefaultAssignees=uI,i.deleteProcedureStepDefaultReviewer=OI,i.deleteProcedureStepDefaultReviewers=FI,i.deleteProcedureStepEvent=jI,i.deleteProcedureStepEvents=qI,i.deleteProcedureStepFieldValues=DT,i.deleteProcedureStepFieldValuesAttachment=PT,i.deleteProcedureStepFieldValuesAttachments=zn,i.deleteProcedureStepFieldValuesMany=jT,i.deleteProcedureStepFieldValuesReview=YT,i.deleteProcedureStepFieldValuesReviews=$n,i.deleteProcedureStepFields=uT,i.deleteProcedureStepFieldsAttachment=ZI,i.deleteProcedureStepFieldsAttachments=Rn,i.deleteProcedureStepFieldsMany=lT,i.deleteProcedureStepReviewer=dP,i.deleteProcedureStepReviewers=uP,i.deleteProcedureSteps=FP,i.deleteProcedureType=JO,i.deleteProcedureTypeAttachment=DP,i.deleteProcedureTypeAttachments=jP,i.deleteProcedureTypeFields=uO,i.deleteProcedureTypeFieldsAttachment=ZP,i.deleteProcedureTypeFieldsAttachments=JP,i.deleteProcedureTypeFieldsMany=lO,i.deleteProcedureTypes=XO,i.deleteProcedures=Tt,i.deleteProject=GS,i.deleteProjectAccess=kf,i.deleteProjectAccesses=Nf,i.deleteProjectAttachment=tS,i.deleteProjectAttachments=sS,i.deleteProjectComment=yS,i.deleteProjectComments=fS,i.deleteProjectFile=wS,i.deleteProjectFiles=vS,i.deleteProjects=HS,i.deleteTeam=_F,i.deleteTeamMembership=oF,i.deleteTeamMemberships=hF,i.deleteTeams=gF,i.deleteUser=cn,i.deleteUsers=Yy,i.dequeue=NF,i.discard=HF,i.documentAttachmentReducer=du,i.documentAttachmentSlice=ks,i.documentSlice=Gs,i.documentsReducer=Iu,i.downloadFile=gb,i.emailDomainsReducer=ju,i.emailDomainsSlice=Ws,i.emailRegex=zb,i.enqueue=kF,i.enqueueRequest=vf,i.extractResponseFromError=KF,i.fallbackToEmptyArray=S,i.fallbackToEmptyObject=ls,i.fetchBlobFromObjectUrl=Rc,i.fetchFileFromObjectUrl=wc,i.fileReducer=$u,i.fileSlice=Ys,i.formIdentifierReducer=xu,i.formIdentifierSlice=Zs,i.formIdentifierValueReducer=ml,i.formIdentifierValueSlice=Xs,i.formReducer=Xl,i.formRevisionAttachmentReducer=Ml,i.formRevisionAttachmentSlice=Qs,i.formRevisionReducer=Ul,i.formRevisionsSlice=xs,i.formSlice=si,i.formSubmissionAttachmentReducer=mo,i.formSubmissionAttachmentSlice=ni,i.formSubmissionReducer=go,i.formSubmissionSlice=li,i.geoImageReducer=Uo,i.geoImageSlice=pi,i.getClientSDK=QF,i.getClientStore=Ft,i.getDocumentSubTree=qc,i.getDocumentTrees=Db,i.getFileExtension=Mc,i.getLocalDateString=gc,i.getLocalRelativeDateString=Ob,i.getOutboxCoordinator=mt,i.getRenamedFile=_b,i.getRequestDescription=A,i.getS3FileKey=bb,i.hashFile=Dt,i.initSDK=TR,i.initializeAssetAttachments=Hc,i.initializeAssetComments=na,i.initializeAssetTypeAttachments=Ea,i.initializeAssetTypeFieldValues=Er,i.initializeAssetTypeFieldValuesAttachments=Ar,i.initializeAssetTypeFields=nr,i.initializeAssetTypeFieldsAttachments=Ga,i.initializeAssetTypeIdentifierValues=cd,i.initializeAssetTypeIdentifiers=Hr,i.initializeAssetTypeStatuses=Vd,i.initializeAssetTypes=Id,i.initializeAssets=Aa,i.initializeConversations=$c,i.initializeDocumentAttachments=Jd,i.initializeDocuments=lu,i.initializeEmailDomains=bu,i.initializeFormIdentifierValues=tl,i.initializeFormIdentifiers=Lu,i.initializeFormRevisionAttachments=yl,i.initializeFormRevisions=wl,i.initializeFormSubmissionAttachments=so,i.initializeFormSubmissions=yo,i.initializeForms=kl,i.initializeGeoImages=Ro,i.initializeIssueAssociations=ko,i.initializeIssueAttachments=nh,i.initializeIssueCommentAttachments=Sh,i.initializeIssueComments=Eh,i.initializeIssueTypeAttachments=im,i.initializeIssueTypeFieldValues=Em,i.initializeIssueTypeFieldValuesAttachments=cp,i.initializeIssueTypeFields=Hm,i.initializeIssueTypeFieldsAttachments=Sm,i.initializeIssueTypeIdentifierValues=Bp,i.initializeIssueTypeIdentifiers=Ap,i.initializeIssueTypePriorities=Wp,i.initializeIssueTypeStatuses=Iy,i.initializeIssueTypes=cy,i.initializeIssueUpdates=By,i.initializeIssues=Gh,i.initializeOrganizationAccesses=xy,i.initializeOrganizations=pf,i.initializeProcedureFieldValues=wO,i.initializeProcedureFieldValuesAttachments=fO,i.initializeProcedureInitiatives=XS,i.initializeProcedureStepAssignees=MA,i.initializeProcedureStepComments=LA,i.initializeProcedureStepDefaultAssignees=tI,i.initializeProcedureStepDefaultReviewers=yI,i.initializeProcedureStepEvents=wI,i.initializeProcedureStepFieldValues=RT,i.initializeProcedureStepFieldValuesAttachments=yT,i.initializeProcedureStepFieldValuesReviews=kT,i.initializeProcedureStepFields=sT,i.initializeProcedureStepFieldsAttachments=NI,i.initializeProcedureStepReviewers=tP,i.initializeProcedureSteps=yP,i.initializeProcedureTypeAttachments=RP,i.initializeProcedureTypeFields=sO,i.initializeProcedureTypeFieldsAttachments=kP,i.initializeProcedureTypes=NO,i.initializeProcedures=oA,i.initializeProjectAccesses=Df,i.initializeProjectAttachments=Yf,i.initializeProjectComments=dS,i.initializeProjectFiles=OS,i.initializeProjects=qS,i.initializeTeamMemberships=nF,i.initializeTeams=AF,i.initializeUsers=ky,i.isImageFile=Mb,i.isObjectUrl=vc,i.isToday=Pb,i.issueAssociationReducer=sh,i.issueAssociationSlice=fi,i.issueAttachmentReducer=yh,i.issueAttachmentSlice=Si,i.issueCommentAttachmentReducer=wh,i.issueCommentAttachmentSlice=Pi,i.issueCommentReducer=kh,i.issueCommentSlice=Fi,i.issueReducer=tm,i.issueSlice=_i,i.issueTypeAttachmentReducer=ym,i.issueTypeAttachmentSlice=Ri,i.issueTypeFieldValuesAttachmentReducer=fp,i.issueTypeFieldValuesAttachmentSlice=zi,i.issueTypeFieldValuesReducer=Nm,i.issueTypeFieldValuesSlice=Bi,i.issueTypeFieldsAttachmentReducer=wm,i.issueTypeFieldsAttachmentSlice=vi,i.issueTypeFieldsReducer=ip,i.issueTypeFieldsSlice=Vi,i.issueTypeIdentifierReducer=vp,i.issueTypeIdentifierSlice=Ci,i.issueTypeIdentifierValueReducer=Gp,i.issueTypeIdentifierValueSlice=Ui,i.issueTypePriorityReducer=iy,i.issueTypePrioritySlice=Li,i.issueTypePrioritySortFn=Dc,i.issueTypeReducer=Sy,i.issueTypeSlice=Gi,i.issueTypeStatusReducer=vy,i.issueTypeStatusSlice=Wi,i.issueTypeStatusSortFn=zc,i.issueUpdateReducer=Uy,i.issueUpdateSlice=Zi,i.logOnlyOnce=Rb,i.markAsDeleted=Ef,i.markForDeletion=U_,i.memoize=us,i.organizationAccessReducer=uf,i.organizationAccessSlice=rn,i.organizationReducer=Mf,i.organizationSlice=dn,i.outboxReducer=Vf,i.outboxSlice=un,i.overmapEnhancer=Wg,i.overmapReducer=Cg,i.overmapReducers=VF,i.performRequest=lc,i.performRequestFromAction=GF,i.procedureFieldValuesAttachmentReducer=FO,i.procedureFieldValuesAttachmentSlice=Zn,i.procedureFieldValuesReducer=CO,i.procedureFieldValuesSlice=xn,i.procedureInitiativeReducer=aA,i.procedureInitiativeSlice=Sn,i.procedureReducer=AA,i.procedureSlice=An,i.procedureStepAssigneeReducer=$A,i.procedureStepAssigneeSlice=In,i.procedureStepCommentReducer=xA,i.procedureStepCommentSlice=Tn,i.procedureStepDefaultAssigneeReducer=mI,i.procedureStepDefaultAssigneeSlice=Pn,i.procedureStepDefaultReviewerReducer=MI,i.procedureStepDefaultReviewerSlice=Fn,i.procedureStepEventReducer=LI,i.procedureStepEventSlice=_n,i.procedureStepFieldValuesAttachmentReducer=gT,i.procedureStepFieldValuesAttachmentSlice=Bn,i.procedureStepFieldValuesReducer=qT,i.procedureStepFieldValuesReviewReducer=xT,i.procedureStepFieldValuesReviewSlice=qn,i.procedureStepFieldValuesSlice=jn,i.procedureStepFieldsAttachmentReducer=eT,i.procedureStepFieldsAttachmentSlice=gn,i.procedureStepFieldsReducer=mT,i.procedureStepFieldsSlice=vn,i.procedureStepReducer=bP,i.procedureStepReviewerReducer=mP,i.procedureStepReviewerSlice=Un,i.procedureStepSlice=Ln,i.procedureTypeAttachmentReducer=qP,i.procedureTypeAttachmentSlice=Gn,i.procedureTypeFieldsAttachmentReducer=XP,i.procedureTypeFieldsAttachmentSlice=Wn,i.procedureTypeFieldsReducer=oO,i.procedureTypeFieldsSlice=Yn,i.procedureTypeReducer=QO,i.procedureTypeSlice=tc,i.projectAccessReducer=Gf,i.projectAccessSlice=ln,i.projectAttachmentReducer=aS,i.projectAttachmentSlice=hn,i.projectCommentReducer=TS,i.projectCommentSlice=pn,i.projectFileReducer=DS,i.projectFileSlice=yn,i.projectReducer=WS,i.projectSlice=fn,i.rehydratedReducer=sF,i.rehydratedSlice=ic,i.restructureSelectorWithArgs=y,i.runMiddleware=sb,i.selectAccessToken=i_,i.selectAccessesByUserOfProject=k_,i.selectAccessibleProjects=K_,i.selectActiveOrganizationAccess=j_,i.selectAllDocumentAttachments=Ns,i.selectAssetAttachmentById=xc,i.selectAssetAttachmentMapping=Qc,i.selectAssetAttachments=As,i.selectAssetAttachmentsByIds=ea,i.selectAssetById=Ma,i.selectAssetCommentById=ha,i.selectAssetCommentMapping=oa,i.selectAssetComments=$t,i.selectAssetCommentsByIds=ma,i.selectAssetTypeAttachmentById=$a,i.selectAssetTypeAttachmentMapping=Ca,i.selectAssetTypeAttachments=gs,i.selectAssetTypeAttachmentsByIds=Ua,i.selectAssetTypeById=wd,i.selectAssetTypeFieldValues=Lt,i.selectAssetTypeFieldValuesAttachmentById=gr,i.selectAssetTypeFieldValuesAttachments=Vs,i.selectAssetTypeFieldValuesAttachmentsByIds=Mr,i.selectAssetTypeFieldValuesAttachmentsMapping=_r,i.selectAssetTypeFieldValuesById=Lr,i.selectAssetTypeFieldValuesByIds=kr,i.selectAssetTypeFieldValuesMapping=Ur,i.selectAssetTypeFieldValuesOfAsset=Yb,i.selectAssetTypeFields=Mt,i.selectAssetTypeFieldsAttachmentById=er,i.selectAssetTypeFieldsAttachments=Rs,i.selectAssetTypeFieldsAttachmentsByIds=tr,i.selectAssetTypeFieldsAttachmentsMapping=xa,i.selectAssetTypeFieldsById=pr,i.selectAssetTypeFieldsByIds=yr,i.selectAssetTypeFieldsMapping=mr,i.selectAssetTypeFieldsOfAssetType=Wb,i.selectAssetTypeIdentifierById=td,i.selectAssetTypeIdentifierMapping=ed,i.selectAssetTypeIdentifierValueById=yd,i.selectAssetTypeIdentifierValueMapping=pd,i.selectAssetTypeIdentifierValues=kt,i.selectAssetTypeIdentifierValuesByIds=fd,i.selectAssetTypeIdentifierValuesOfAsset=Xb,i.selectAssetTypeIdentifierValuesOfIdentifier=Qb,i.selectAssetTypeIdentifiers=js,i.selectAssetTypeIdentifiersByIds=sd,i.selectAssetTypeIdentifiersOfAssetType=Jb,i.selectAssetTypeStatusById=Nd,i.selectAssetTypeStatusMapping=kd,i.selectAssetTypeStatuses=Ls,i.selectAssetTypeStatusesByIds=Gd,i.selectAssetTypeStatusesOfAssetType=e_,i.selectAssetTypeValuesOfAssetType=Zb,i.selectAssetTypes=$s,i.selectAssetTypesByIds=vd,i.selectAssetTypesMapping=Rd,i.selectAssetTypesOfOrganization=xb,i.selectAssets=Ut,i.selectAssetsByIds=Ra,i.selectAssetsMapping=_a,i.selectAssetsOfAssetType=ga,i.selectAssetsOfProject=Gb,i.selectAttachmentsOfAsset=ta,i.selectAttachmentsOfAssetType=La,i.selectAttachmentsOfAssetTypeFieldValues=Rr,i.selectAttachmentsOfAssetTypeFields=Hb,i.selectAttachmentsOfDocument=c_,i.selectAttachmentsOfFormRevision=y_,i.selectAttachmentsOfFormSubmission=ho,i.selectAttachmentsOfIssue=hh,i.selectAttachmentsOfIssueComment=I_,i.selectAttachmentsOfIssueType=O_,i.selectAttachmentsOfIssueTypeFieldValues=yp,i.selectAttachmentsOfIssueTypeFields=F_,i.selectAttachmentsOfProcedureFieldValues=MO,i.selectAttachmentsOfProcedureStepFieldValues=_T,i.selectAttachmentsOfProcedureStepFields=XI,i.selectAttachmentsOfProcedureType=bg,i.selectAttachmentsOfProcedureTypeFields=_g,i.selectAttachmentsOfProject=G_,i.selectCommentsOfAsset=pa,i.selectCommentsOfAssets=ya,i.selectCommentsOfIssue=T_,i.selectCommentsOfProject=H_,i.selectCommentsOfProjects=W_,i.selectConversation=Nb,i.selectConversationMapping=ps,i.selectConversations=kb,i.selectCurrentUser=Jy,i.selectDeletedRequests=C_,i.selectDescendantsOfDocument=Ou,i.selectDocumentAttachmentById=au,i.selectDocumentAttachmentMapping=cu,i.selectDocumentAttachmentsByIds=ru,i.selectDocumentById=Tu,i.selectDocuments=Gt,i.selectDocumentsByIds=Pu,i.selectDocumentsMapping=Hs,i.selectEmailDomainById=zu,i.selectEmailDomains=Ks,i.selectEmailDomainsAsMapping=Vu,i.selectEmailDomainsByIds=Du,i.selectEmailDomainsOfOrganization=d_,i.selectFieldValuesOfProcedure=Rg,i.selectFormById=xl,i.selectFormIdentifierById=Xu,i.selectFormIdentifierMapping=Ju,i.selectFormIdentifierValueById=ol,i.selectFormIdentifierValueMapping=ll,i.selectFormIdentifierValues=Ht,i.selectFormIdentifierValuesByIds=hl,i.selectFormIdentifierValuesOfFormSubmission=m_,i.selectFormIdentifierValuesOfIdentifier=p_,i.selectFormIdentifiers=Js,i.selectFormIdentifiersByIds=Qu,i.selectFormIdentifiersOfForm=h_,i.selectFormMapping=Ql,i.selectFormRevisionAttachmentById=_l,i.selectFormRevisionAttachments=bl,i.selectFormRevisionAttachmentsByIds=gl,i.selectFormRevisionAttachmentsMapping=Wt,i.selectFormRevisionById=ql,i.selectFormRevisionMapping=jl,i.selectFormRevisions=Kt,i.selectFormRevisionsByIds=Cl,i.selectFormRevisionsOfForm=$l,i.selectFormSubmissionAttachemntsByIds=ui,i.selectFormSubmissionAttachmentById=lo,i.selectFormSubmissionAttachments=di,i.selectFormSubmissionAttachmentsByIds=oo,i.selectFormSubmissionAttachmentsMapping=ri,i.selectFormSubmissionById=Fo,i.selectFormSubmissions=mi,i.selectFormSubmissionsByIds=bo,i.selectFormSubmissionsMapping=Oo,i.selectFormSubmissionsOfForm=_o,i.selectForms=ii,i.selectFormsByIds=eo,i.selectFormsOfOrganization=S_,i.selectGeoImageById=Co,i.selectGeoImageMapping=qo,i.selectGeoImages=yi,i.selectGeoImagesByIds=$o,i.selectGeoImagesOfProject=A_,i.selectIsLoggedIn=n_,i.selectIssueAssociationById=Jo,i.selectIssueAssociationMapping=Zo,i.selectIssueAssociations=At,i.selectIssueAssociationsByIds=Xo,i.selectIssueAssociationsOfAsset=eh,i.selectIssueAssociationsOfAssets=th,i.selectIssueAssociationsOfIssue=xo,i.selectIssueAssociationsOfIssues=Qo,i.selectIssueAttachmentById=mh,i.selectIssueAttachmentMapping=oh,i.selectIssueAttachments=Ti,i.selectIssueAttachmentsByIds=ph,i.selectIssueById=Qh,i.selectIssueCommentAttachmentById=Mh,i.selectIssueCommentAttachmentMapping=gh,i.selectIssueCommentAttachments=Oi,i.selectIssueCommentAttachmentsByIds=Rh,i.selectIssueCommentById=Uh,i.selectIssueCommentMapping=bi,i.selectIssueCommentsByIds=Lh,i.selectIssueMapping=Xh,i.selectIssueTypeAttachmentById=mm,i.selectIssueTypeAttachmentMapping=hm,i.selectIssueTypeAttachments=wi,i.selectIssueTypeAttachmentsByIds=pm,i.selectIssueTypeById=yy,i.selectIssueTypeFieldValues=Zt,i.selectIssueTypeFieldValuesAttachmentById=mp,i.selectIssueTypeFieldValuesAttachments=qi,i.selectIssueTypeFieldValuesAttachmentsByIds=pp,i.selectIssueTypeFieldValuesAttachmentsMapping=hp,i.selectIssueTypeFieldValuesById=Lm,i.selectIssueTypeFieldValuesByIds=km,i.selectIssueTypeFieldValuesMapping=Um,i.selectIssueTypeFieldValuesOfIssue=b_,i.selectIssueTypeFields=Rt,i.selectIssueTypeFieldsAttachmentById=Mm,i.selectIssueTypeFieldsAttachments=Ei,i.selectIssueTypeFieldsAttachmentsByIds=Rm,i.selectIssueTypeFieldsAttachmentsMapping=gm,i.selectIssueTypeFieldsById=tp,i.selectIssueTypeFieldsByIds=sp,i.selectIssueTypeFieldsMapping=ep,i.selectIssueTypeFieldsOfIssueType=__,i.selectIssueTypeIdentifierById=Rp,i.selectIssueTypeIdentifierMapping=Mp,i.selectIssueTypeIdentifierValueById=kp,i.selectIssueTypeIdentifierValueMapping=Lp,i.selectIssueTypeIdentifierValues=Jt,i.selectIssueTypeIdentifierValuesByIds=Np,i.selectIssueTypeIdentifierValuesOfIdentifier=v_,i.selectIssueTypeIdentifierValuesOfIssue=w_,i.selectIssueTypeIdentifiers=$i,i.selectIssueTypeIdentifiersByIds=wp,i.selectIssueTypeIdentifiersOfIssueType=R_,i.selectIssueTypeMapping=py,i.selectIssueTypePriorities=ki,i.selectIssueTypePrioritiesByIds=sy,i.selectIssueTypePrioritiesOfIssueType=E_,i.selectIssueTypePriorityById=Ni,i.selectIssueTypePriorityMapping=ty,i.selectIssueTypeStatusById=Yi,i.selectIssueTypeStatusMapping=Ry,i.selectIssueTypeStatuses=Ki,i.selectIssueTypeStatusesByIds=wy,i.selectIssueTypeStatusesOfIssueType=V_,i.selectIssueTypeValuesOfIssueType=M_,i.selectIssueTypes=Hi,i.selectIssueTypesByIds=fy,i.selectIssueTypesOfOrganization=B_,i.selectIssueUpdateById=qy,i.selectIssueUpdateMapping=en,i.selectIssueUpdates=tn,i.selectIssueUpdatesByIds=Cy,i.selectIssueUpdatesOfIssue=$y,i.selectIssues=Yt,i.selectIssuesByIds=xh,i.selectIssuesOfIssueType=em,i.selectIssuesOfProject=P_,i.selectLatestAssetTypeFieldsOfAssetType=Kb,i.selectLatestFieldsByProcedureStep=og,i.selectLatestFormRevisionOfForm=f_,i.selectLatestIssueTypeFieldsOfIssueType=g_,i.selectLatestProcedureStepFieldValuesReviewByProcedureStepFieldValues=Ag,i.selectLatestProcedureStepFieldsOfProcedureStep=lg,i.selectLatestProcedureTypeFieldsOfProcedureType=Mg,i.selectLatestRetryTime=$_,i.selectLatestReviewOfProcedureStepFieldValues=yg,i.selectMembershipsByUserOfTeam=Vg,i.selectOrganizationAccessById=lf,i.selectOrganizationAccessMapping=xt,i.selectOrganizationAccessUserMapping=hf,i.selectOrganizationAccessesByIds=of,i.selectOrganizationById=_f,i.selectOrganizationDocuments=r_,i.selectOrganizations=bf,i.selectOrganizationsByIds=gf,i.selectOrganizationsMapping=Ff,i.selectProcedureById=TA,i.selectProcedureFieldValues=ec,i.selectProcedureFieldValuesAttachmentById=_O,i.selectProcedureFieldValuesAttachments=Qn,i.selectProcedureFieldValuesAttachmentsByIds=gO,i.selectProcedureFieldValuesAttachmentsMapping=bO,i.selectProcedureFieldValuesById=UO,i.selectProcedureFieldValuesByIds=LO,i.selectProcedureFieldValuesMapping=$O,i.selectProcedureInitiativeById=dA,i.selectProcedureInitiatives=ss,i.selectProcedureInitiativesByIds=uA,i.selectProcedureInitiativesMapping=rA,i.selectProcedureInitiativesOfProcedureType=J_,i.selectProcedureInitiativesOfProject=Z_,i.selectProcedureStepAssigneeById=qA,i.selectProcedureStepAssignees=vt,i.selectProcedureStepAssigneesByIds=CA,i.selectProcedureStepAssigneesMapping=jA,i.selectProcedureStepAssigneesOfProcedure=Q_,i.selectProcedureStepAssigneesOfProcedureAndProcedureStep=eg,i.selectProcedureStepAssigneesOfProcedureStep=x_,i.selectProcedureStepById=_P,i.selectProcedureStepCommentById=XA,i.selectProcedureStepComments=Et,i.selectProcedureStepCommentsByIds=QA,i.selectProcedureStepCommentsMapping=JA,i.selectProcedureStepCommentsOfProcedure=tg,i.selectProcedureStepCommentsOfProcedureAndProcedureStep=ig,i.selectProcedureStepCommentsOfProcedureStep=sg,i.selectProcedureStepDefaultAssigneeById=oI,i.selectProcedureStepDefaultAssignees=On,i.selectProcedureStepDefaultAssigneesByIds=hI,i.selectProcedureStepDefaultAssigneesMapping=lI,i.selectProcedureStepDefaultAssigneesOfProcedureStep=ng,i.selectProcedureStepDefaultReviewerById=_I,i.selectProcedureStepDefaultReviewers=bn,i.selectProcedureStepDefaultReviewersByIds=gI,i.selectProcedureStepDefaultReviewersMapping=bI,i.selectProcedureStepDefaultReviewersOfProcedureStep=cg,i.selectProcedureStepEventById=$I,i.selectProcedureStepEvents=Bt,i.selectProcedureStepEventsByIds=UI,i.selectProcedureStepEventsMapping=CI,i.selectProcedureStepEventsOfProcedure=ag,i.selectProcedureStepEventsOfProcedureAndProcedureStep=dg,i.selectProcedureStepEventsOfProcedureStep=rg,i.selectProcedureStepFieldValues=ut,i.selectProcedureStepFieldValuesAttachmentById=FT,i.selectProcedureStepFieldValuesAttachments=Dn,i.selectProcedureStepFieldValuesAttachmentsByIds=bT,i.selectProcedureStepFieldValuesAttachmentsMapping=OT,i.selectProcedureStepFieldValuesById=$T,i.selectProcedureStepFieldValuesByIds=UT,i.selectProcedureStepFieldValuesMapping=CT,i.selectProcedureStepFieldValuesOfProcedure=hg,i.selectProcedureStepFieldValuesOfProcedureAndProcedureStep=pg,i.selectProcedureStepFieldValuesOfProcedureStep=mg,i.selectProcedureStepFieldValuesReviewById=JT,i.selectProcedureStepFieldValuesReviews=lt,i.selectProcedureStepFieldValuesReviewsByIds=XT,i.selectProcedureStepFieldValuesReviewsMapping=ZT,i.selectProcedureStepFieldValuesReviewsOfProcedure=fg,i.selectProcedureStepFieldValuesReviewsOfProcedureAndProcedureStep=Sg,i.selectProcedureStepFields=is,i.selectProcedureStepFieldsAttachmentById=QI,i.selectProcedureStepFieldsAttachments=wn,i.selectProcedureStepFieldsAttachmentsByIds=xI,i.selectProcedureStepFieldsAttachmentsMapping=JI,i.selectProcedureStepFieldsById=oT,i.selectProcedureStepFieldsByIds=hT,i.selectProcedureStepFieldsMapping=En,i.selectProcedureStepFieldsOfProcedureStep=ug,i.selectProcedureStepReviewerById=oP,i.selectProcedureStepReviewers=Vt,i.selectProcedureStepReviewersByIds=hP,i.selectProcedureStepReviewersMapping=lP,i.selectProcedureStepReviewersOfProcedure=Ig,i.selectProcedureStepReviewersOfProcedureAndProcedureStep=Pg,i.selectProcedureStepReviewersOfProcedureStep=Tg,i.selectProcedureSteps=Nn,i.selectProcedureStepsByIds=gP,i.selectProcedureStepsMapping=kn,i.selectProcedureStepsMappingOfProcedureType=Og,i.selectProcedureStepsOfProcedureType=Fg,i.selectProcedureTypeAttachmentById=$P,i.selectProcedureTypeAttachmentMapping=CP,i.selectProcedureTypeAttachments=Hn,i.selectProcedureTypeAttachmentsByIds=UP,i.selectProcedureTypeById=eF,i.selectProcedureTypeFields=ns,i.selectProcedureTypeFieldsAttachmentById=xP,i.selectProcedureTypeFieldsAttachments=Kn,i.selectProcedureTypeFieldsAttachmentsByIds=eO,i.selectProcedureTypeFieldsAttachmentsMapping=QP,i.selectProcedureTypeFieldsById=mO,i.selectProcedureTypeFieldsByIds=pO,i.selectProcedureTypeFieldsMapping=hO,i.selectProcedureTypeFieldsOfProcedureType=gg,i.selectProcedureTypes=sc,i.selectProcedureTypesByIds=tF,i.selectProcedureTypesMapping=xO,i.selectProcedureTypesOfOrganization=wg,i.selectProcedures=dt,i.selectProceduresByIds=PA,i.selectProceduresMapping=IA,i.selectProceduresOfAsset=FA,i.selectProceduresOfAssets=bA,i.selectProceduresOfProcedureInitiative=_A,i.selectProceduresOfProcedureType=OA,i.selectProceduresOfProject=X_,i.selectProjectAccessById=Hf,i.selectProjectAccessMapping=on,i.selectProjectAccesses=wt,i.selectProjectAccessesByIds=Wf,i.selectProjectAccessesOfProject=L_,i.selectProjectAttachmentById=nS,i.selectProjectAttachmentMapping=iS,i.selectProjectAttachments=mn,i.selectProjectAttachmentsByIds=cS,i.selectProjectById=YS,i.selectProjectCommentById=AS,i.selectProjectCommentMapping=SS,i.selectProjectComments=es,i.selectProjectCommentsByIds=IS,i.selectProjectDocuments=a_,i.selectProjectFileById=VS,i.selectProjectFileMapping=ES,i.selectProjectFiles=BS,i.selectProjectFilesByIds=zS,i.selectProjectMapping=KS,i.selectProjects=ts,i.selectProjectsByIds=ZS,i.selectProjectsOfOrganization=Y_,i.selectRehydrated=Bg,i.selectReviewsOfProcedureStepFieldValues=QT,i.selectTeamById=RF,i.selectTeamMembershipById=yF,i.selectTeamMemberships=cs,i.selectTeamMembershipsByIds=fF,i.selectTeamMembershipsMapping=pF,i.selectTeams=ac,i.selectTeamsByIds=wF,i.selectTeamsMapping=MF,i.selectTeamsOfOrganization=Dg,i.selectUploadUrl=o_,i.selectUserById=Qt,i.selectUsers=Xt,i.selectUsersByIds=Xy,i.selectUsersMapping=an,i.selectUsersOfOrganization=q_,i.selectUsersOfProject=N_,i.selectUsersOfTeam=zg,i.setAsset=Fa,i.setAssetAttachment=Kc,i.setAssetAttachments=Yc,i.setAssetComment=aa,i.setAssetComments=ra,i.setAssetType=Td,i.setAssetTypeAttachment=Va,i.setAssetTypeAttachments=za,i.setAssetTypeFieldValues=zr,i.setAssetTypeFieldValuesAttachment=Tr,i.setAssetTypeFieldValuesAttachments=Pr,i.setAssetTypeFieldValuesMany=Dr,i.setAssetTypeFields=rr,i.setAssetTypeFieldsAttachment=Ka,i.setAssetTypeFieldsAttachments=Ya,i.setAssetTypeFieldsMany=dr,i.setAssetTypeIdentifier=Yr,i.setAssetTypeIdentifierValue=dd,i.setAssetTypeIdentifierValues=ud,i.setAssetTypeIdentifiers=Zr,i.setAssetTypeStatus=jd,i.setAssetTypeStatuses=qd,i.setAssetTypes=Pd,i.setAssets=ba,i.setClientSDK=XF,i.setClientStore=ZF,i.setConversation=Lc,i.setConversations=Cb,i.setCurrentUser=z_,i.setCurrentUserProfile=D_,i.setDocument=mu,i.setDocumentAttachment=xd,i.setDocumentAttachments=eu,i.setDocuments=pu,i.setEmailDomain=Mu,i.setEmailDomains=Ru,i.setForm=Hl,i.setFormIdentifier=Gu,i.setFormIdentifierValue=nl,i.setFormIdentifierValues=cl,i.setFormIdentifiers=Hu,i.setFormRevision=El,i.setFormRevisionAttachment=Al,i.setFormRevisionAttachments=Il,i.setFormRevisions=Bl,i.setFormSubmission=fo,i.setFormSubmissionAttachment=no,i.setFormSubmissionAttachments=co,i.setFormSubmissions=So,i.setForms=Wl,i.setGeoImage=wo,i.setGeoImages=vo,i.setIssue=Wh,i.setIssueAssociation=Go,i.setIssueAssociations=No,i.setIssueAttachment=ah,i.setIssueAttachments=rh,i.setIssueComment=zh,i.setIssueCommentAttachment=Th,i.setIssueCommentAttachments=Ph,i.setIssueComments=Dh,i.setIssueType=dy,i.setIssueTypeAttachment=am,i.setIssueTypeAttachments=rm,i.setIssueTypeFieldValues=zm,i.setIssueTypeFieldValuesAttachment=rp,i.setIssueTypeFieldValuesAttachments=dp,i.setIssueTypeFieldValuesMany=Dm,i.setIssueTypeFields=Ym,i.setIssueTypeFieldsAttachment=Tm,i.setIssueTypeFieldsAttachments=Pm,i.setIssueTypeFieldsMany=Zm,i.setIssueTypeIdentifier=Pp,i.setIssueTypeIdentifierValue=Dp,i.setIssueTypeIdentifierValues=jp,i.setIssueTypeIdentifiers=Op,i.setIssueTypePriorities=Jp,i.setIssueTypePriority=Zp,i.setIssueTypeStatus=Oy,i.setIssueTypeStatuses=Fy,i.setIssueTypes=uy,i.setIssueUpdate=Vy,i.setIssueUpdates=zy,i.setIssues=Kh,i.setLoggedIn=Kd,i.setOrganization=ff,i.setOrganizationAccess=sf,i.setOrganizationAccesses=nf,i.setOrganizations=yf,i.setProcedure=mA,i.setProcedureFieldValues=BO,i.setProcedureFieldValuesAttachment=AO,i.setProcedureFieldValuesAttachments=IO,i.setProcedureFieldValuesMany=VO,i.setProcedureInitiative=eA,i.setProcedureInitiatives=tA,i.setProcedureStep=fP,i.setProcedureStepAssignee=vA,i.setProcedureStepAssignees=EA,i.setProcedureStepComment=GA,i.setProcedureStepComments=HA,i.setProcedureStepDefaultAssignee=nI,i.setProcedureStepDefaultAssignees=cI,i.setProcedureStepDefaultReviewer=AI,i.setProcedureStepDefaultReviewers=II,i.setProcedureStepEvent=BI,i.setProcedureStepEvents=VI,i.setProcedureStepFieldValues=ET,i.setProcedureStepFieldValuesAttachment=ST,i.setProcedureStepFieldValuesAttachments=AT,i.setProcedureStepFieldValuesMany=BT,i.setProcedureStepFieldValuesReview=GT,i.setProcedureStepFieldValuesReviews=HT,i.setProcedureStepFields=cT,i.setProcedureStepFieldsAttachment=HI,i.setProcedureStepFieldsAttachments=WI,i.setProcedureStepFieldsMany=aT,i.setProcedureStepReviewer=nP,i.setProcedureStepReviewers=cP,i.setProcedureSteps=SP,i.setProcedureType=WO,i.setProcedureTypeAttachment=EP,i.setProcedureTypeAttachments=BP,i.setProcedureTypeFields=cO,i.setProcedureTypeFieldsAttachment=HP,i.setProcedureTypeFieldsAttachments=WP,i.setProcedureTypeFieldsMany=aO,i.setProcedureTypes=KO,i.setProcedures=pA,i.setProject=$S,i.setProjectAccess=Cf,i.setProjectAccesses=$f,i.setProjectAttachment=Xf,i.setProjectAttachments=Qf,i.setProjectComment=oS,i.setProjectComments=hS,i.setProjectFile=FS,i.setProjectFiles=bS,i.setProjects=CS,i.setRehydrated=Eg,i.setTeam=PF,i.setTeamMembership=rF,i.setTeamMemberships=dF,i.setTeams=OF,i.setTokens=t_,i.setUploadUrl=l_,i.setUser=Gy,i.setUsers=Ny,i.shallowEqual=Sb,i.slugify=Bb,i.spacesToDashesLower=Eb,i.submittedAtModelSortFn=yt,i.teamMembershipReducer=mF,i.teamMembershipSlice=nc,i.teamReducer=vF,i.teamSlice=cc,i.toFileNameSafeString=vb,i.toUuidArray=E,i.toUuidIdRecord=wb,i.truncate=Vb,i.updateAsset=Ta,i.updateAssetAttachment=Zc,i.updateAssetAttachments=Jc,i.updateAssetComment=da,i.updateAssetComments=ua,i.updateAssetType=bd,i.updateAssetTypeAttachment=Da,i.updateAssetTypeAttachments=ja,i.updateAssetTypeFieldValues=jr,i.updateAssetTypeFieldValuesAttachment=Or,i.updateAssetTypeFieldValuesAttachments=Fr,i.updateAssetTypeFieldValuesMany=qr,i.updateAssetTypeFields=ur,i.updateAssetTypeFieldsAttachment=Za,i.updateAssetTypeFieldsAttachments=Ja,i.updateAssetTypeFieldsMany=lr,i.updateAssetTypeIdentifier=Jr,i.updateAssetTypeIdentifierValue=ld,i.updateAssetTypeIdentifierValues=od,i.updateAssetTypeIdentifiers=Xr,i.updateAssetTypeStatus=Cd,i.updateAssetTypeStatuses=$d,i.updateAssetTypes=_d,i.updateAssets=Pa,i.updateConversation=kc,i.updateConversations=$b,i.updateDocument=yu,i.updateDocumentAttachment=tu,i.updateDocumentAttachments=su,i.updateDocuments=fu,i.updateEmailDomain=wu,i.updateEmailDomains=vu,i.updateForm=Kl,i.updateFormIdentifier=Wu,i.updateFormIdentifierValue=al,i.updateFormIdentifierValues=rl,i.updateFormIdentifiers=Ku,i.updateFormRevision=Vl,i.updateFormRevisionAttachment=Tl,i.updateFormRevisionAttachments=Pl,i.updateFormRevisions=zl,i.updateFormSubmission=Io,i.updateFormSubmissionAttachment=ao,i.updateFormSubmissionAttachments=ro,i.updateFormSubmissions=To,i.updateForms=Yl,i.updateGeoImage=Vo,i.updateGeoImages=zo,i.updateIssue=Yh,i.updateIssueAssociation=Ho,i.updateIssueAssociations=Wo,i.updateIssueAttachment=dh,i.updateIssueAttachments=uh,i.updateIssueComment=jh,i.updateIssueCommentAttachment=Oh,i.updateIssueCommentAttachments=Fh,i.updateIssueComments=qh,i.updateIssueType=ly,i.updateIssueTypeAttachment=dm,i.updateIssueTypeAttachments=um,i.updateIssueTypeFieldValues=jm,i.updateIssueTypeFieldValuesAttachment=up,i.updateIssueTypeFieldValuesAttachments=lp,i.updateIssueTypeFieldValuesMany=qm,i.updateIssueTypeFields=Jm,i.updateIssueTypeFieldsAttachment=Om,i.updateIssueTypeFieldsAttachments=Fm,i.updateIssueTypeFieldsMany=Xm,i.updateIssueTypeIdentifier=Fp,i.updateIssueTypeIdentifierValue=qp,i.updateIssueTypeIdentifierValues=Cp,i.updateIssueTypeIdentifiers=bp,i.updateIssueTypePriorities=Qp,i.updateIssueTypePriority=Xp,i.updateIssueTypeStatus=by,i.updateIssueTypeStatuses=_y,i.updateIssueTypes=oy,i.updateIssueUpdate=Dy,i.updateIssueUpdates=jy,i.updateIssues=Zh,i.updateOrganization=Tf,i.updateOrganizationAccess=cf,i.updateOrganizationAccesses=af,i.updateOrganizations=If,i.updateProcedure=yA,i.updateProcedureFieldValues=zO,i.updateProcedureFieldValuesAttachment=TO,i.updateProcedureFieldValuesAttachments=PO,i.updateProcedureFieldValuesMany=DO,i.updateProcedureInitiative=sA,i.updateProcedureInitiatives=iA,i.updateProcedureStep=TP,i.updateProcedureStepAssignee=BA,i.updateProcedureStepAssignees=VA,i.updateProcedureStepComment=WA,i.updateProcedureStepComments=KA,i.updateProcedureStepDefaultAssignee=aI,i.updateProcedureStepDefaultAssignees=rI,i.updateProcedureStepDefaultReviewer=TI,i.updateProcedureStepDefaultReviewers=PI,i.updateProcedureStepEvent=zI,i.updateProcedureStepEvents=DI,i.updateProcedureStepFieldValues=VT,i.updateProcedureStepFieldValuesAttachment=IT,i.updateProcedureStepFieldValuesAttachments=TT,i.updateProcedureStepFieldValuesMany=zT,i.updateProcedureStepFieldValuesReview=WT,i.updateProcedureStepFieldValuesReviews=KT,i.updateProcedureStepFields=rT,i.updateProcedureStepFieldsAttachment=KI,i.updateProcedureStepFieldsAttachments=YI,i.updateProcedureStepFieldsMany=dT,i.updateProcedureStepReviewer=aP,i.updateProcedureStepReviewers=rP,i.updateProcedureSteps=PP,i.updateProcedureType=YO,i.updateProcedureTypeAttachment=VP,i.updateProcedureTypeAttachments=zP,i.updateProcedureTypeFields=rO,i.updateProcedureTypeFieldsAttachment=KP,i.updateProcedureTypeFieldsAttachments=YP,i.updateProcedureTypeFieldsMany=dO,i.updateProcedureTypes=ZO,i.updateProcedures=fA,i.updateProject=NS,i.updateProjectAccess=Uf,i.updateProjectAccesses=Lf,i.updateProjectAttachment=xf,i.updateProjectAttachments=eS,i.updateProjectComment=mS,i.updateProjectComments=pS,i.updateProjectFile=MS,i.updateProjectFiles=RS,i.updateProjects=kS,i.updateTeam=FF,i.updateTeamMembership=uF,i.updateTeamMemberships=lF,i.updateTeams=bF,i.updateUser=Ky,i.updateUsers=Wy,i.useSelectorBuilder=fb,i.userReducer=Zy,i.userSlice=sn,i.uuidObj=P,i.uuidObjSortFn=hs,i.uuidSortFn=jt,i.versioningReducer=BF,i.versioningSlice=EF,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
13
+ external URLs and therefore not prepended with VITE_API_URL.`;throw new Error(m)}return await this.addCache(d),d}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:o.POST,isExternalUrl:!0,isAuthNeeded:!1,attachmentHash:e,blockers:[`s3-${n.fields.key}`],blocks:[e],s3url:n})}processPresignedUrls(e){const n={};for(const[c,r]of Object.entries(e))n[c]=this.processPresignedUrl(c,r);return n}async getFilePayload(e){const c={sha1:await qt(e),file_type:e.type,extension:gc(e),size:e.size};return await this.client.files.addCache(e),c}}class dM extends E{constructor(){super(...arguments);h(this,"name","Form Identifier");h(this,"url","/form-identifiers");h(this,"actions",{addOne:Uu,addMany:Lu,setOne:ku,setMany:Nu,updateOne:Gu,updateMany:Hu,deleteOne:Wu,deleteMany:Ku,initialize:$u});h(this,"selectors",{selectById:Zu,selectByIds:Ju})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected form identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(c(r)),r}}class uM extends E{constructor(){super(...arguments);h(this,"name","Form Identifier Value");h(this,"url","/form-identifier-values");h(this,"actions",{addOne:el,addMany:tl,setOne:sl,setMany:il,updateOne:nl,updateMany:cl,deleteOne:al,deleteMany:rl,initialize:xu});h(this,"selectors",{selectById:ul,selectByIds:ll})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form_submission,e.form_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected form identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await Promise.all([this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_submission__organization:e}},n),this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(c(a)),a}}class lM extends j{constructor(){super(...arguments);h(this,"name","Form Revision Attachment");h(this,"url","/form-revision-attachments");h(this,"actions",{addOne:pl,addMany:yl,setOne:fl,setMany:Sl,updateOne:Al,updateMany:Il,deleteOne:Tl,deleteMany:Ol,initialize:ml});h(this,"selectors",{selectById:Fl,selectByIds:bl})}getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,form_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form_revision__form__organization:e}},n);return this.dispatch(c(r)),r}}class oM extends E{constructor(){super(...arguments);h(this,"name","Form Revision");h(this,"url","/form-revisions");h(this,"actions",{addOne:Rl,addMany:si,setOne:wl,setMany:vl,updateOne:El,updateMany:Bl,deleteOne:Vl,deleteMany:ii,initialize:Ml});h(this,"selectors",{selectById:Dl,selectByIds:jl})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(c(r)),r}}class hM extends E{constructor(){super(...arguments);h(this,"name","Form");h(this,"url","/forms");h(this,"actions",{addOne:Ll,addMany:kl,setOne:Nl,setMany:Gl,updateOne:Hl,updateMany:Wl,deleteOne:Kl,deleteMany:Yl,initialize:Ul});h(this,"selectors",{selectById:Xl,selectByIds:Ql})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=O({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error("Expected form to exist");const u=this.select(Fo(e)),d=this.select(ql(e));this.dispatch(n(e)),this.dispatch(lt(w(u))),this.dispatch(ii(w(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(si(d)),this.dispatch(ut(u)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class mM extends j{constructor(){super(...arguments);h(this,"name","Form Submission Attachment");h(this,"url","/form-submission-attachments");h(this,"actions",{addOne:to,addMany:ri,setOne:so,setMany:io,updateOne:no,updateMany:co,deleteOne:ao,deleteMany:di,initialize:eo});h(this,"selectors",{selectById:ro,selectByIds:uo})}getId(e){return e.uuid}getBlockers(e){return[e.form_submission]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,form_submission:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,r=this.select(oi(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(a){throw this.dispatch(c(r)),a}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await Promise.all([this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_submission__organization:e}},n),this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(c(a)),a}}class pM extends E{constructor(){super(...arguments);h(this,"name","Form Submission");h(this,"url","/form-submissions");h(this,"actions",{addOne:fo,addMany:ut,setOne:po,setMany:yo,updateOne:So,updateMany:Ao,deleteOne:Io,deleteMany:lt,initialize:mo});h(this,"selectors",{selectById:Oo,selectByIds:Po})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.form_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${a.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(lo(e));this.dispatch(n(e)),this.dispatch(di(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(ri(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await Promise.all([this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,organization:e}},n),this.listPaginated({queryParams:{limit:this.pageSize,paginate:!0,project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(c(a)),a}}class yM extends j{constructor(){super(...arguments);h(this,"name","Geo Image");h(this,"url","/geo-images");h(this,"actions",{addOne:Vo,addMany:zo,setOne:Eo,setMany:Bo,updateOne:Do,updateMany:jo,deleteOne:qo,deleteMany:Co,initialize:vo});h(this,"selectors",{selectById:Uo,selectByIds:Lo})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{project:e}},n);return this.dispatch(c(r)),r}}class fM extends E{constructor(){super(...arguments);h(this,"name","Issue Association");h(this,"url","/issue-associations");h(this,"actions",{addOne:Zo,addMany:It,setOne:Wo,setMany:Ho,updateOne:Ko,updateMany:Yo,deleteOne:Jo,deleteMany:Tt,initialize:Go});h(this,"selectors",{selectById:Qo,selectByIds:xo})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=O({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.asset],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e){const{addMany:n,deleteMany:c,updateMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>O({...m,submitted_at:u,created_by:a}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{payloads:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.issue,m.asset]),blocks:w(d)});return p.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(c(w(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Issue association with uuid ${e} not found in store.`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class SM extends j{constructor(){super(...arguments);h(this,"name","Issue Attachment");h(this,"url","/issue-attachments");h(this,"actions",{addOne:rh,addMany:Si,setOne:dh,setMany:uh,updateOne:lh,updateMany:oh,deleteOne:hh,deleteMany:Ai,initialize:ah});h(this,"selectors",{selectById:yh,selectByIds:fh})}getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class AM extends j{constructor(){super(...arguments);h(this,"name","Issue Comment Attachment");h(this,"url","/issue-comment-attachments");h(this,"actions",{addOne:Th,addMany:Oh,setOne:Ph,setMany:Fh,updateOne:bh,updateMany:_h,deleteOne:gh,deleteMany:Mh,initialize:Ih});h(this,"selectors",{selectById:wh,selectByIds:vh})}getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,a=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class IM extends E{constructor(){super(...arguments);h(this,"name","Issue Comment");h(this,"url","/issue-comments");h(this,"actions",{addOne:zh,addMany:Dh,setOne:jh,setMany:qh,updateOne:Ch,updateMany:$h,deleteOne:Uh,deleteMany:Lh,initialize:Vh});h(this,"selectors",{selectById:kh,selectByIds:Nh})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>d.userReducer.currentUser.id),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[e.issue],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{setMany:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}class TM extends E{constructor(){super(...arguments);h(this,"name","Issue");h(this,"url","/issues");h(this,"actions",{addOne:Kh,addMany:_i,setOne:Yh,setMany:Zh,updateOne:Jh,updateMany:Xh,deleteOne:Qh,deleteMany:gi,initialize:Wh});h(this,"selectors",{selectById:em,selectByIds:tm})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=new Date().toISOString(),u=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),d=O({...e,submitted_at:a,created_by:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.project,d.issue_type,d.status,d.priority],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const a={...r,...e};this.dispatch(n(a));const u={};for(const m of[$.TITLE,$.DESCRIPTION,$.STATUS,$.PRIORITY,$.ASSIGNED_TO,$.DUE_DATE])if(m in e&&e[m]!==r[m])switch(m){case $.PRIORITY:{const f=e[m],I=this.select(ki(f));if(!I)throw new Error(`Trying to update issue type priority with ${f} which does not exist in store`);u[m]={name:I.name,color:I.color,uuid:I.uuid};break}case $.DUE_DATE:u[m]=e.due_date;break;case $.DESCRIPTION:u[m]=e.description??"";break;case $.TITLE:u[m]=e.title??"";break;case $.STATUS:{const f=e[m],I=this.select(Ki(f));if(!I)throw new Error(`Trying to update issue type status with ${f} which does not exist in store`);u[m]={name:I.name,color:I.color,uuid:I.uuid};break}case $.ASSIGNED_TO:{const f=e[m];if(f===null)u[m]=null;else{const I=this.select(es(f));if(!I)throw new Error(`Trying to update assigned to with ${f} which does not exist in store.`);u[m]={full_name:I.username,id:I.id}}break}}const d=O({created_by:this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),submitted_at:new Date().toISOString(),issue:r.uuid,changes:u});this.dispatch(Zi(d));const p=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return p.then(m=>{this.dispatch(n(m))}).catch(()=>{this.dispatch(n(r)),this.dispatch(Xi(d.uuid))}),[a,p]}bulkUpdate(e,n){const{updateMany:c}=this.actions,{selectByIds:r}=this.selectors,a=w(e).toSorted(Ct);if(a.length!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(a)).toSorted(ps);if(a.length!=u.length)throw new Error(`Attempting to bulk update ${a.length-u.length} issues that dont exist in the store`);const d=[];for(let I=0;I<a.length;I++)d.push({...u[I],...e[I]});this.dispatch(c(d));const p=rt(e,Math.min(n??e.length,N)),m=[];let f=null;for(const I of p){const R=dt.v4(),b=w(I),g=I.map(({status:B})=>B).filter(Boolean),_=I.map(({priority:B})=>B).filter(Boolean),v=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(f?[f]:[]).concat(b).concat(g).concat(_),blocks:[R].concat(b)});m.push(v),f=R}return Promise.all(m).then(I=>{this.dispatch(c(I.flat()))}).catch(()=>{this.dispatch(c(u))}),[d,m]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue with uuid ${e} found in the store`);const u=this.select(th(e)),d=this.select(ph(e)),p=this.select(Ly(e)),m=this.select(bo(e));this.dispatch(n(e)),this.dispatch(Ai(w(d))),this.dispatch(Qi(w(p))),this.dispatch(Tt(w(u))),this.dispatch(lt(w(m)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(f){throw this.dispatch(c(a)),this.dispatch(Si(d)),this.dispatch(Ji(p)),this.dispatch(It(u)),this.dispatch(ut(m)),f}}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e)),u=this.select(eh(e)),d=this.select(_o(e));this.dispatch(c(e)),this.dispatch(Tt(w(u))),this.dispatch(lt(w(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(p){throw this.dispatch(n(a)),this.dispatch(It(u)),this.dispatch(ut(d)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class OM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Attachment");h(this,"url","/issue-type-attachments");h(this,"actions",{addOne:am,addMany:rm,setOne:dm,setMany:um,updateOne:lm,updateMany:om,deleteOne:hm,deleteMany:mm,initialize:cm});h(this,"selectors",{selectById:ym,selectByIds:fm})}getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class PM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Fields Attachment");h(this,"url","/issue-type-fields-attachments");h(this,"actions",{addOne:Tm,addMany:Om,setOne:Pm,setMany:Fm,updateOne:bm,updateMany:_m,deleteOne:gm,deleteMany:Mm,initialize:Im});h(this,"selectors",{selectById:wm,selectByIds:vm})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class FM extends E{constructor(){super(...arguments);h(this,"name","Issue Type Fields");h(this,"url","/issue-type-fields");h(this,"actions",{addOne:Ym,addMany:Zm,setOne:Jm,setMany:Xm,updateOne:Qm,updateMany:xm,deleteOne:ep,deleteMany:tp,initialize:Km});h(this,"selectors",{selectById:ip,selectByIds:np})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class bM extends j{constructor(){super(...arguments);h(this,"name","Issue Type Field Values Attachment");h(this,"url","/issue-type-field-values-attachments");h(this,"actions",{addOne:dp,addMany:zi,setOne:up,setMany:lp,updateOne:op,updateMany:hp,deleteOne:mp,deleteMany:Di,initialize:rp});h(this,"selectors",{selectById:yp,selectByIds:fp})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class _M extends E{constructor(){super(...arguments);h(this,"name","Issue Type Field Values");h(this,"url","/issue-type-field-values");h(this,"actions",{addOne:zm,addMany:Dm,setOne:jm,setMany:qm,updateOne:Cm,updateMany:$m,deleteOne:Um,deleteMany:Lm,initialize:Vm});h(this,"selectors",{selectById:Nm,selectByIds:Gm})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.fields_revision,a.issue],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Sp(e));this.dispatch(n(e)),this.dispatch(Di(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(zi(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class gM extends E{constructor(){super(...arguments);h(this,"name","Issue Type Identifier");h(this,"url","/issue-type-identifiers");h(this,"actions",{addOne:Op,addMany:Pp,setOne:Fp,setMany:bp,updateOne:_p,updateMany:gp,deleteOne:Mp,deleteMany:Rp,initialize:Tp});h(this,"selectors",{selectById:vp,selectByIds:Ep})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected issue type identifier with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class MM extends E{constructor(){super(...arguments);h(this,"name","Issue Type Identifier Value");h(this,"url","/issue-type-identifier-values");h(this,"actions",{addOne:Dp,addMany:jp,setOne:qp,setMany:Cp,updateOne:$p,updateMany:Up,deleteOne:Lp,deleteMany:kp,initialize:zp});h(this,"selectors",{selectById:Gp,selectByIds:Hp})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue,e.issue_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected issue type identifier value with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class RM extends E{constructor(){super(...arguments);h(this,"name","Issue Type Priority");h(this,"url","/issue-type-priorities");h(this,"actions",{addOne:Zp,addMany:Jp,setOne:Xp,setMany:Qp,updateOne:xp,updateMany:ey,deleteOne:ty,deleteMany:sy,initialize:Yp});h(this,"selectors",{selectById:ki,selectByIds:ny})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing issue type priority with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue type priority with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class wM extends E{constructor(){super(...arguments);h(this,"name","Issue Type");h(this,"url","/issue-types");h(this,"actions",{addOne:dy,addMany:uy,setOne:ly,setMany:oy,updateOne:hy,updateMany:my,deleteOne:py,deleteMany:yy,initialize:ry});h(this,"selectors",{selectById:Sy,selectByIds:Ay})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,submitted_at:u,created_by:a});this.dispatch(n(d));const p=this.enqueueRequest({method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const u=this.select(sm(e));this.dispatch(n(e)),this.dispatch(gi(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(_i(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class vM extends E{constructor(){super(...arguments);h(this,"name","Issue Type Status");h(this,"url","/issue-type-statuses");h(this,"actions",{addOne:Py,addMany:Fy,setOne:by,setMany:_y,updateOne:gy,updateMany:My,deleteOne:Ry,deleteMany:wy,initialize:Oy});h(this,"selectors",{selectById:Ki,selectByIds:Ey})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No issue type status with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(c(r)),r}}class EM extends E{constructor(){super(...arguments);h(this,"name","Issue Update");h(this,"url","/issue-updates");h(this,"actions",{addOne:Zi,addMany:Ji,setOne:Dy,setMany:jy,updateOne:qy,updateMany:Cy,deleteOne:Xi,deleteMany:Qi,initialize:zy});h(this,"selectors",{selectById:$y,selectByIds:Uy})}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(c(a)),a}}const BM=1800;function VM(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 zM extends Ng{constructor(){super(...arguments);h(this,"_getRenewedTokens",async e=>{const n=this.performRequest({method:o.POST,url:this.refreshTokensUrl,payload:{refresh:e},isAuthNeeded:!1,checkAuth:!1});let c;try{c=await n}catch(r){console.error("Could not renew tokens; clearing auth",r),this.clearAuth();return}if(!c.access)throw new Error("Missing access token");return{accessToken:c.access,refreshToken:c.refresh??this.getRefreshToken()}})}clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(Hd(!1)),this.clearTokens(),this.dispatch(T()),this.dispatch(T())}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 c;try{c=rb(e).exp??n}catch{c=n}return c-n<BM}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??bt).toString()))}}}async handleUnauthorized(e,n){if(e.url.endsWith("/token/refresh/"))throw this.select(c=>c.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(c=>c.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=dt.v4();return console.debug(this.constructor.name,"Initiating auth"),this.performRequest({uuid:n,method:o.POST,url:this.initTokensUrl,payload:e,isAuthNeeded:!1,checkAuth:!1}).then(c=>{this.setTokens(VM(c))})}}class DM extends yt{constructor(){super(...arguments);h(this,"name","Organization Access");h(this,"url","/organization-accesses");h(this,"actions",{addOne:sf,addMany:nf,setOne:cf,setMany:af,updateOne:rf,updateMany:df,deleteOne:uf,deleteMany:lf,initialize:tf});h(this,"selectors",{selectById:hf,selectByIds:mf})}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid)),a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(d=>{throw this.dispatch(n(r)),d}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e)),u=this.select(es(a.user));this.dispatch(n(a.uuid)),this.dispatch(nn(a.user));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${a.uuid}/`,blockers:[a.uuid],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(sn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class jM extends yt{constructor(){super(...arguments);h(this,"name","Organization");h(this,"url","/organizations");h(this,"actions",{addOne:Tf,addMany:If,setOne:Af,setMany:Sf,updateOne:Pf,updateMany:Of,deleteOne:Ff,deleteMany:bf,initialize:ff});h(this,"selectors",{selectById:Mf,selectByIds:Rf})}async add(e){const{addOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(n(c)),c}async update(e){const{setOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return this.dispatch(n(c)),c}async invite(e,n){return this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/${e}/invite/${n}/`,blockers:[],blocks:[]})}async refreshStore(e){const{initialize:n}=this.actions,c=await this.list({},e);return this.dispatch(n(c)),c}}class qM extends E{constructor(){super(...arguments);h(this,"name","Project Access");h(this,"url","/project-accesses");h(this,"actions",{addOne:Cf,addMany:$f,setOne:Uf,setMany:Lf,updateOne:kf,updateMany:Nf,deleteOne:Gf,deleteMany:Hf,initialize:qf});h(this,"selectors",{selectById:Kf,selectByIds:Yf})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.organization_access,a.project],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(d=>{throw this.dispatch(r(a.uuid)),d}),[a,u]}bulkAdd(e){const{addMany:n,deleteMany:c,updateMany:r}=this.actions,a=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>O({...p,created_by:a}));this.dispatch(n(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{project_accesses:u.map(p=>M(p))},blockers:u.flatMap(p=>[p.project,p.organization_access]),blocks:u.map(p=>p.uuid)});return d.then(p=>{this.dispatch(r(p))}).catch(p=>{throw this.dispatch(c(u.map(m=>m.uuid))),p}),[u,d]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid)),a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[]});return u.then(d=>{this.dispatch(n(d))}).catch(d=>{throw this.dispatch(n(r)),d}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(c(r)),r}}class CM extends j{constructor(){super(...arguments);h(this,"name","Project Attachment");h(this,"url","/project-attachments");h(this,"actions",{addOne:Xf,addMany:Qf,setOne:xf,setMany:eS,updateOne:tS,updateMany:sS,deleteOne:iS,deleteMany:nS,initialize:Jf});h(this,"selectors",{selectById:aS,selectByIds:rS})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(c(r)),r}}class $M extends E{constructor(){super(...arguments);h(this,"name","Project Comment");h(this,"url","/project-comments");h(this,"actions",{addOne:oS,addMany:hS,setOne:mS,setMany:pS,updateOne:yS,updateMany:fS,deleteOne:SS,deleteMany:AS,initialize:lS});h(this,"selectors",{selectById:TS,selectByIds:OS})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.project],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Project comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Project comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class UM extends j{constructor(){super(...arguments);h(this,"name","Project File");h(this,"url","/project-files");h(this,"actions",{addOne:MS,addMany:RS,setOne:_S,setMany:gS,updateOne:wS,updateMany:vS,deleteOne:ES,deleteMany:BS,initialize:bS});h(this,"selectors",{selectById:DS,selectByIds:jS})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}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:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class LM extends yt{constructor(){super(...arguments);h(this,"name","Project");h(this,"url","/projects");h(this,"actions",{addOne:NS,addMany:kS,setOne:LS,setMany:US,updateOne:HS,updateMany:GS,deleteOne:WS,deleteMany:KS,initialize:$S});h(this,"selectors",{selectById:JS,selectByIds:XS})}async add(e){const{addOne:n}=this.actions,c=await this.performRequest({method:o.POST,url:`${this.url}/`,payload:M(e)});return this.dispatch(n(c)),c}async update(e){const{updateOne:n}=this.actions,c=await this.performRequest({method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e)});return this.dispatch(n(c)),c}async delete(e){const{deleteOne:n}=this.actions,c=await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(n(e)),c}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class kM extends E{constructor(){super(...arguments);h(this,"name","Procedure");h(this,"url","/procedures");h(this,"actions",{addOne:pA,addMany:Pt,setOne:yA,setMany:fA,updateOne:SA,updateMany:AA,deleteOne:IA,deleteMany:Ft,initialize:mA});h(this,"selectors",{selectById:PA,selectByIds:FA})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_type,a.project,a.asset,...a.procedure_initiative?[a.procedure_initiative]:[]],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e,n){var b;const{store:c}=this.client,{addMany:r,updateMany:a,deleteMany:u}=this.actions,d=new Date().toISOString(),p=((b=c.getState().userReducer.currentUser)==null?void 0:b.id)??null,m=[],f=rt(e,Math.min(n??e.length,N)),I=[];for(const g of f){const _=[],v=[],B=[];for(const D of g){const z=O({...D,submitted_at:d,created_by:p});m.push(z),_.push(M(z)),v.push(z.procedure_type,z.project,z.asset,...z.procedure_initiative?[z.procedure_initiative]:[]),B.push(z.uuid)}const C={payload:{submitted_at:d,payloads:_},blockers:v,blocks:B};I.push(C)}this.dispatch(r(m));const R=I.map(g=>{const{payload:_,blocks:v,blockers:B}=g;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:_,blockers:B,blocks:v})});return Promise.all(R).then(g=>{this.dispatch(a(g.flat()))}).catch(()=>{this.dispatch(u(w(m)))}),[m,Promise.all(R).then(g=>g.flat())]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected procedure with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{addMany:n,deleteMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(c(w(a)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class NM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Assignee");h(this,"url","/procedure-step-assignees");h(this,"actions",{addOne:vA,addMany:EA,setOne:BA,setMany:VA,updateOne:zA,updateMany:DA,deleteOne:jA,deleteMany:qA,initialize:wA});h(this,"selectors",{selectById:$A,selectByIds:UA})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>O({...m,created_by:a,submitted_at:u}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{procedure_step_assignees:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.procedure,m.procedure_step]),blocks:w(d)});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(w(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step assignee with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class GM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Comment");h(this,"url","/procedure-step-comments");h(this,"actions",{addOne:GA,addMany:HA,setOne:WA,setMany:KA,updateOne:YA,updateMany:ZA,deleteOne:JA,deleteMany:XA,initialize:NA});h(this,"selectors",{selectById:xA,selectByIds:eI})}add(e){const{addOne:n,updateOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Procedure step comment with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Procedure step comment with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class HM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Default Assignee");h(this,"url","/procedure-step-default-assignees");h(this,"actions",{addOne:nI,addMany:cI,setOne:aI,setMany:rI,updateOne:dI,updateMany:uI,deleteOne:lI,deleteMany:oI,initialize:iI});h(this,"selectors",{selectById:mI,selectByIds:pI})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step default assignee with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class WM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Default Reviewer");h(this,"url","/procedure-step-default-reviewers");h(this,"actions",{addOne:AI,addMany:II,setOne:TI,setMany:OI,updateOne:PI,updateMany:FI,deleteOne:bI,deleteMany:_I,initialize:SI});h(this,"selectors",{selectById:MI,selectByIds:RI})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step default reviewer with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class KM extends yt{constructor(){super(...arguments);h(this,"name","Procedure Step Event");h(this,"url","/procedure-step-events");h(this,"actions",{addOne:BI,addMany:VI,setOne:zI,setMany:DI,updateOne:jI,updateMany:qI,deleteOne:CI,deleteMany:$I,initialize:EI});h(this,"selectors",{selectById:LI,selectByIds:kI})}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class YM extends j{constructor(){super(...arguments);h(this,"name","Procedure Step Fields Attachment");h(this,"url","/procedure-step-fields-attachments");h(this,"actions",{addOne:WI,addMany:gn,setOne:KI,setMany:YI,updateOne:ZI,updateMany:JI,deleteOne:XI,deleteMany:Mn,initialize:HI});h(this,"selectors",{selectById:eT,selectByIds:tT})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){return O({...e,created_by:this.select(n=>{var c;return((c=n.userReducer.currentUser)==null?void 0:c.id)??null}),submitted_at:new Date().toISOString()})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class ZM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Fields");h(this,"url","/procedure-step-fields");h(this,"actions",{addOne:cT,addMany:aT,setOne:rT,setMany:dT,updateOne:uT,updateMany:lT,deleteOne:oT,deleteMany:hT,initialize:nT});h(this,"selectors",{selectById:mT,selectByIds:pT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step fields with uuid ${e} to exist`);const u=this.select(xI(e));this.dispatch(n(e)),this.dispatch(Mn(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(gn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class JM extends j{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values Attachment");h(this,"url","/procedure-step-field-values-attachments");h(this,"actions",{addOne:AT,addMany:Bn,setOne:IT,setMany:TT,updateOne:OT,updateMany:PT,deleteOne:FT,deleteMany:Vn,initialize:ST});h(this,"selectors",{selectById:_T,selectByIds:gT})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class XM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values Review");h(this,"url","/procedure-step-field-values-reviews");h(this,"actions",{addOne:HT,addMany:qn,setOne:WT,setMany:KT,updateOne:YT,updateMany:ZT,deleteOne:JT,deleteMany:Cn,initialize:GT});h(this,"selectors",{selectById:QT,selectByIds:xT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.field_values],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Procedure step field values review with uuid ${e.uuid} not found in store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Procedure step field values review with uuid ${e} not found in store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class QM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values");h(this,"url","/procedure-step-field-values");h(this,"actions",{addOne:ET,addMany:BT,setOne:VT,setMany:zT,updateOne:DT,updateMany:jT,deleteOne:qT,deleteMany:CT,initialize:vT});h(this,"selectors",{selectById:LT,selectByIds:kT})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.procedure,e.procedure_step,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(R=>{var b;return((b=R.userReducer.currentUser)==null?void 0:b.id)??null}),p=[],m=rt(e,Math.min(n??e.length,N)),f=[];for(const R of m){const b=[],g=[],_=[];for(const v of R){const B=O({...v,values:v.values,created_by:d,submitted_at:u});p.push(B),b.push(M(B)),g.push(B.procedure_step,B.procedure,B.fields_revision),_.push(B.uuid)}f.push({payload:{payloads:b,submitted_at:u},blockers:g,blocks:_})}this.dispatch(c(p));const I=f.map(R=>{const{payload:b,blocks:g,blockers:_}=R;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_,blocks:g})});return Promise.all(I).then(R=>{this.dispatch(r(R.flat()))}).catch(()=>{this.dispatch(a(w(p)))}),[p,Promise.all(I).then(R=>R.flat())]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid,a.procedure,a.procedure_step,a.fields_revision],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e} to exist`);const u=this.select(MT(e)),d=this.select(eO(e));this.dispatch(n(e)),this.dispatch(Vn(w(u))),this.dispatch(Cn(w(d)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(p){throw this.dispatch(c(a)),this.dispatch(Bn(u)),this.dispatch(qn(d)),p}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class xM extends E{constructor(){super(...arguments);h(this,"name","Procedure Step Reviewer");h(this,"url","/procedure-step-reviewers");h(this,"actions",{addOne:nO,addMany:cO,setOne:aO,setMany:rO,updateOne:dO,updateMany:uO,deleteOne:lO,deleteMany:oO,initialize:iO});h(this,"selectors",{selectById:mO,selectByIds:pO})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure,a.procedure_step],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=e.map(m=>O({...m,created_by:a,submitted_at:u}));this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{procedure_step_reviewers:d.map(m=>M(m)),submitted_at:u},blockers:d.flatMap(m=>[m.procedure,m.procedure_step]),blocks:d.map(m=>m.uuid)});return p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.map(m=>m.uuid)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure step reviewer with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(c(a)),a}}class eR extends E{constructor(){super(...arguments);h(this,"name","Procedure Initiative");h(this,"url","/procedure-initiatives");h(this,"actions",{addOne:eA,addMany:tA,setOne:sA,setMany:iA,updateOne:nA,updateMany:cA,deleteOne:aA,deleteMany:rA,initialize:xS});h(this,"selectors",{selectById:lA,selectByIds:oA})}add(e){var p;const{store:n}=this.client,{addOne:c,setOne:r,deleteOne:a}=this.actions,u=O({...e,created_by:((p=n.getState().userReducer.currentUser)==null?void 0:p.id)??null,submitted_at:new Date().toISOString()});this.dispatch(c(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(u),blockers:[u.procedure_type,u.project],blocks:[u.uuid]});return d.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(a(u.uuid))}),[u,d]}update(e){const{updateOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ${this.name} with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected ${this.name} with uuid ${e} to exist`);const u=this.select(MA(e));this.dispatch(n(e)),this.dispatch(Ft(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Pt(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(c(a)),a}}class tR extends E{constructor(){super(...arguments);h(this,"name","Procedure Step");h(this,"url","/procedure-steps");h(this,"actions",{addOne:TO,addMany:OO,setOne:AO,setMany:IO,updateOne:PO,updateMany:FO,deleteOne:bO,deleteMany:_O,initialize:SO});h(this,"selectors",{selectById:MO,selectByIds:RO})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[a.procedure_type],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`No procedure step with uuid ${e.uuid} found in the store`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${r.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{addOne:n,deleteOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`No procedure step with uuid ${e} found in the store`);this.dispatch(c(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(u){throw this.dispatch(n(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class sR extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Attachment");h(this,"url","/procedure-type-attachments");h(this,"actions",{addOne:EO,addMany:BO,setOne:VO,setMany:zO,updateOne:DO,updateMany:jO,deleteOne:qO,deleteMany:CO,initialize:vO});h(this,"selectors",{selectById:LO,selectByIds:kO})}getId(e){return e.uuid}getBlockers(e){return[e.procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const{procedure_type:n,file_sha1:c,file_extension:r,file_name:a,file_type:u,file_url:d}=e,p=this.select(f=>{var I;return((I=f.userReducer.currentUser)==null?void 0:I.id)??null}),m=new Date().toISOString();return O({file_url:d,file_sha1:c,file_extension:r,file_name:a,file_type:u,created_by:p,submitted_at:m,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,procedure_type:e.procedure_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,procedure_type:e.procedure_type}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class iR extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Fields Attachment");h(this,"url","/procedure-type-fields-attachments");h(this,"actions",{addOne:HO,addMany:WO,setOne:KO,setMany:YO,updateOne:ZO,updateMany:JO,deleteOne:XO,deleteMany:QO,initialize:GO});h(this,"selectors",{selectById:tP,selectByIds:sP})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,fields_revision:r,file_sha1:a,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class nR extends E{constructor(){super(...arguments);h(this,"name","Procedure Type Fields");h(this,"url","/procedure-type-fields");h(this,"actions",{addOne:cP,addMany:aP,setOne:rP,setMany:dP,updateOne:uP,updateMany:lP,deleteOne:oP,deleteMany:hP,initialize:nP});h(this,"selectors",{selectById:yP,selectByIds:fP})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[d.procedure_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(c(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(c(r)),r}}class cR extends j{constructor(){super(...arguments);h(this,"name","Procedure Field Values Attachment");h(this,"url","/procedure-field-values-attachments");h(this,"actions",{addOne:IP,addMany:Zn,setOne:TP,setMany:OP,updateOne:PP,updateMany:FP,deleteOne:bP,deleteMany:Jn,initialize:AP});h(this,"selectors",{selectById:MP,selectByIds:RP})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var a;return((a=r.userReducer.currentUser)==null?void 0:a.id)??null}),c=new Date().toISOString();return O({...e,created_by:n,submitted_at:c})}buildPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:c,field_values:r,file_sha1:a,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:c}=this.actions,{selectByIds:r}=this.selectors,a=this.select(r(e));this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!0),method:o.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class aR extends E{constructor(){super(...arguments);h(this,"name","Procedure Field Values");h(this,"url","/procedure-field-values");h(this,"actions",{addOne:BP,addMany:VP,setOne:zP,setMany:DP,updateOne:jP,updateMany:qP,deleteOne:CP,deleteMany:$P,initialize:EP});h(this,"selectors",{selectById:kP,selectByIds:NP})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=this.select(m=>{var f;return((f=m.userReducer.currentUser)==null?void 0:f.id)??null}),u=new Date().toISOString(),d=O({...e,created_by:a,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(d),blockers:[e.fields_revision,e.procedure],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(c(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:c,updateMany:r,deleteMany:a}=this.actions,u=new Date().toISOString(),d=this.select(R=>{var b;return((b=R.userReducer.currentUser)==null?void 0:b.id)??null}),p=[],m=rt(e,Math.min(n??e.length,N)),f=[];for(const R of m){const b=[],g=[],_=[];for(const v of R){const B=O({...v,values:v.values,created_by:d,submitted_at:u});p.push(B),b.push(M(B)),g.push(B.procedure,B.fields_revision),_.push(B.uuid)}f.push({payload:{payloads:b,submitted_at:u},blockers:g,blocks:_})}this.dispatch(c(p));const I=f.map(R=>{const{payload:b,blocks:g,blockers:_}=R;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:b,blockers:_,blocks:g})});return Promise.all(I).then(R=>{this.dispatch(r(R.flat()))}).catch(()=>{this.dispatch(a(w(p)))}),[p,Promise.all(I).then(R=>R.flat())]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected ProcedureFieldValues with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.fields_revision,a.procedure],blocks:[a.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(wP(e));this.dispatch(n(e)),this.dispatch(Jn(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Zn(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,a=(await this.listPaginated({queryParams:{procedure__project:e,latest:!0}},n)).flat();return this.dispatch(c(a)),a}}class rR extends E{constructor(){super(...arguments);h(this,"name","Procedure Type");h(this,"url","/procedure-types");h(this,"actions",{addOne:WP,addMany:KP,setOne:YP,setMany:ZP,updateOne:JP,updateMany:XP,deleteOne:QP,deleteMany:xP,initialize:HP});h(this,"selectors",{selectById:sF,selectByIds:iF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null}),submitted_at:new Date().toISOString()});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected procedure type with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[r.uuid],blocks:[r.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,addOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected procedure type with uuid ${e} to exist`);const u=this.select(bA(e));this.dispatch(n(e)),this.dispatch(Ft(w(u)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(c(a)),this.dispatch(Pt(u)),d}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class dR extends E{constructor(){super(...arguments);h(this,"name","Team Membership");h(this,"url","/team-memberships");h(this,"actions",{addOne:rF,addMany:dF,setOne:uF,setMany:lF,updateOne:oF,updateMany:hF,deleteOne:mF,deleteMany:pF,initialize:aF});h(this,"selectors",{selectById:SF,selectByIds:AF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[e.team],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}bulkAdd(e){const{addMany:n,setMany:c,deleteMany:r}=this.actions,a=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>O({...p,created_by:a}));this.dispatch(n(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{team_memberships:u.map(p=>M(p))},blockers:u.map(p=>p.team),blocks:u.map(p=>p.uuid)});return d.then(p=>{this.dispatch(c(p))}).catch(()=>{this.dispatch(r(u.map(p=>p.uuid)))}),[u,d]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{team__organization:e}},n);return this.dispatch(c(r)),r}}class uR extends E{constructor(){super(...arguments);h(this,"name","Team");h(this,"url","/teams");h(this,"actions",{addOne:OF,addMany:PF,setOne:FF,setMany:bF,updateOne:_F,updateMany:gF,deleteOne:MF,deleteMany:RF,initialize:TF});h(this,"selectors",{selectById:vF,selectByIds:EF})}add(e){const{addOne:n,setOne:c,deleteOne:r}=this.actions,a=O({...e,submitted_at:new Date().toISOString(),created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:M(a),blockers:[],blocks:[a.uuid]});return u.then(d=>{this.dispatch(c(d))}).catch(()=>{this.dispatch(r(a.uuid))}),[a,u]}update(e){const{setOne:n}=this.actions,{selectById:c}=this.selectors,r=this.select(c(e.uuid));if(!r)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const a={...r,...e};this.dispatch(n(a));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e),blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[a,u]}async delete(e){const{deleteOne:n,setOne:c}=this.actions,{selectById:r}=this.selectors,a=this.select(r(e));if(!a)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(u){throw this.dispatch(c(a)),u}}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(c(r)),r}}class lR extends yt{constructor(){super(...arguments);h(this,"name","User");h(this,"url","/user");h(this,"actions",{addOne:sn,addMany:Ky,setOne:Wy,setMany:Hy,updateOne:Zy,updateMany:Yy,deleteOne:nn,deleteMany:Jy,initialize:Gy});h(this,"selectors",{selectById:es,selectByIds:xy})}async list(e,n){const{organizationUuid:c,...r}=e,a=c?`/organizations/${c}${this.url}s/`:`/${this.url}`;return this.performRequest({method:o.GET,url:a,...r},n)}async refreshStore(e,n){const{initialize:c}=this.actions,r=await this.list({organizationUuid:e},n);return this.dispatch(c(r)),r}}async function uc(t,s,e,n,c){const r=n instanceof pt;r&&s.checkAuth!==!1&&await n.auth.prepareAuth();const a={queryParams:"",isAuthNeeded:!0},{s3url:u,payload:d,headers:p,method:m,queryParams:f,attachmentHash:I,isExternalUrl:R,isAuthNeeded:b,isResponseBlob:g}={...a,...s};let _=s.url;const v=I?await e.files.fetchCache(I):void 0;if(I&&!v)throw new Error(`Cannot upload file ${I} because it's not cached.`);!R&&!_.startsWith("http")&&(!_.startsWith("/")&&!_.startsWith("blob:")&&(_="/"+_),_=t+_);const B=q=>{if(I){if(!u)throw new Error(`No S3 URL for file ${I}`);if("warning"in u)throw new Error(`S3 URL warning for file ${I}`);if(!v)throw new Error(`No file for file ${I}`);const G=u.fields["x-amz-checksum-sha1"];if(!G)throw new Error(`No checksum for file ${I}`);return q.set("x-amz-checksum-sha1",G).field({...d,...u.fields}).attach("file",v)}return q.send(d)},D={[o.GET]:()=>g?St.get(_.toString()).responseType("blob"):St.get(_.toString()),[o.POST]:()=>{const q=St.post(_.toString());return B(q)},[o.PATCH]:()=>{const q=St.patch(_.toString());return B(q)},[o.PUT]:()=>{const q=St.put(_.toString());return B(q)},[o.DELETE]:()=>{const q=St.delete(_.toString());return B(q)}}[m];let z=D();const Mt=()=>{console.debug("aborting request:",s.url),z.abort()};if(c==null||c.addEventListener("abort",Mt),b&&r){const q=n.auth.getAuthHeader();z=z.set("Authorization",q)}p&&(z=z.set(p));try{return await z.query(f)}catch(q){const G=NF(q),ds=G==null?void 0:G.status;if(r&&ds===401)return await n.auth.handleUnauthorized(z,G),z.query(f);throw new U({response:G,innerError:q,discard:rc.includes(ds)})}finally{c==null||c.removeEventListener("abort",Mt)}}class oR{constructor(s){h(this,"store");this.store=s}_performRequest(s,e,n,c){const r=new us,a={...e,uuid:e.uuid??dt.v4()};return uc(s,a,this,n,c).then(u=>{r.resolve(u.body)}).catch(u=>{u instanceof Error?r.reject(u):r.reject(new Error((u??bt).toString()))}),r}async performRequest(s,e,n,c){return this._performRequest(s,e,n,c).then(r=>{if(r instanceof U)throw r;return r})}async enqueueRequest(s,e,n){return this._enqueueRequest(s,e,n).then(c=>{if(c instanceof U)throw c;return c})}_enqueueRequest(s,e,n){const c=new us,r={...s,BASE_URL:e,serviceName:n},a=this.store.dispatch(Bf(r)),u=p=>{if(p)c.resolve(p.body);else{const m=new U({message:"Could not get a response from the server.",response:p,discard:!0});c.reject(m)}},d=p=>{p instanceof U?p.options.discard=!0:(console.error("Received an unexpected error while processing a request:",p,`
14
+ Converting error to APIError and discarding.`),p=new U({message:"An error occurred while processing the request.",innerError:p,discard:!0})),c.reject(p)};return a.then(u,d),c}async performPagination(s,e,n,c,r){const a={...e,queryParams:{...e.queryParams,paginate:!0,limit:n}},{method:u}=a,d=[];let p=await this.performRequest(s,a,c,r);for(d.push(p.results);p.next;)p=await this.performRequest(s,{url:p.next,method:u},c,r),d.push(p.results);return d}}class _t{constructor(){h(this,"graph");h(this,"requestAttemptCounter");this.graph=new db.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(s){const e=new _t;for(let n=0;n<s.length;n++){const c=s[n];if(!c){console.error("Outbox item was undefined");continue}e.sneakRequest(c);for(let r=0;r<n;r++){const a=s[r];if(!a){console.error("Previous outbox item was undefined");continue}a.payload.uuid!==c.payload.uuid&&a.payload.blocks.some(u=>c.payload.blockers.includes(u))&&_t._addDependency(c.payload.uuid,a.payload.uuid,e.graph)}}return e}_addDependency(s,e){_t._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),c=new Set(n.payload.blocks);s.payload.blockers.some(r=>c.has(r))&&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),c=new Set(s.payload.blocks);n.payload.blockers.some(r=>c.has(r))&&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 c of s){const r=this.requestAttemptCounter[c]||0;r<e&&(e=r,n=c)}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),c=s.findIndex(r=>r.payload.uuid===n.payload.uuid);c!==-1&&(s.splice(c,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 c=this.requestAttemptCounter[e.payload.uuid]||0,r=this.requestAttemptCounter[n.payload.uuid]||0;return c-r}),s}registerRetry(s){this.requestAttemptCounter[s]=(this.requestAttemptCounter[s]||0)+1}}let GF;function HF(t){GF=t}function gt(){return GF}let WF;function KF(t){WF=t}function YF(){return WF}let lc=null;function ft(){const t=gt();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(lc)return lc;const s=t.getState().offline.outbox,e=_t._fromOutbox(s);return lc=e,e}const hR=(t,s)=>{const e=new s(t);return KF(e),HF(t),e};class mR{constructor(s){h(this,"_all");h(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 oc{constructor(){h(this,"next");this.next=null}then(s){return new mR(this).then(s)}async run(s){if(this.next)return this.next.run(s);{if(console.debug("Middleware finished. Performing request:",s.payload.url),!gt())throw new Error("Client store not set");const n=YF();if(!n)throw new Error("Client SDK not set");return UF(s,n)}}}class ZF extends oc{async run(s){return super.run(s)}}class JF extends oc{async run(s){return super.run(s)}}const XF=new ZF().then(new JF).compile();function QF(t){var s;return(s=XF[0])==null?void 0:s.run(t)}var xF=(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))(xF||{});i.ALL_MIDDLEWARE=XF,i.APIError=U,i.AgentService=Gg,i.AssetAttachmentService=Hg,i.AssetCommentService=Wg,i.AssetService=Kg,i.AssetStatusType=Tc,i.AssetTypeAttachmentService=Yg,i.AssetTypeFieldValuesAttachmentService=Xg,i.AssetTypeFieldValuesService=Qg,i.AssetTypeFieldsAttachmentService=Zg,i.AssetTypeFieldsService=Jg,i.AssetTypeIdentifierService=xg,i.AssetTypeIdentifierValueService=eM,i.AssetTypeService=tM,i.AssetTypeStatusService=sM,i.BaseApiService=pt,i.BaseModelApiService=yt,i.BaseOfflineFileModelApiService=j,i.BaseOfflineModelApiService=E,i.BaseSDK=oR,i.COMMON_AUTO_FIELDS=Ac,i.DEFAULT_PAGE_SIZE=zF,i.DISCARD_HTTP_STATUSES=rc,i.DeferredPromise=us,i.DocumentAttachmentService=iM,i.DocumentService=nM,i.EMPTY_ARRAY=yc,i.EMPTY_OBJECT=fc,i.EmailDomainsService=cM,i.EmailVerificationService=aM,i.FILE_MODEL_DEFAULT_PAGE_SIZE=DF,i.FileService=rM,i.FormIdentifierService=dM,i.FormIdentifierValueService=uM,i.FormRevisionAttachmentService=lM,i.FormRevisionService=oM,i.FormService=hM,i.FormSubmissionAttachmentService=mM,i.FormSubmissionService=pM,i.GeoImageService=yM,i.HttpMethod=o,i.IssueAssociationService=fM,i.IssueAttachmentService=SM,i.IssueCommentAttachmentService=AM,i.IssueCommentService=IM,i.IssuePriorityType=Pc,i.IssueService=TM,i.IssueStatusType=Oc,i.IssueTypeAttachmentService=OM,i.IssueTypeFieldValuesAttachmentService=bM,i.IssueTypeFieldValuesService=_M,i.IssueTypeFieldsAttachmentService=PM,i.IssueTypeFieldsService=FM,i.IssueTypeIdentifierService=gM,i.IssueTypeIdentifierValueService=MM,i.IssueTypePriorityService=RM,i.IssueTypeService=wM,i.IssueTypeStatusService=vM,i.IssueUpdateChange=$,i.IssueUpdateService=EM,i.JWTService=zM,i.MAX_SERVICE_BATCH_SIZE=N,i.OUTBOX_RETRY_DELAY=Sc,i.OfflineAnalyticsMiddleware=ZF,i.OfflineMiddleware=oc,i.OrganizationAccessLevel=Ic,i.OrganizationAccessService=DM,i.OrganizationService=jM,i.OutboxCoordinator=_t,i.ProcdureInitiativeService=eR,i.ProcedureFieldValuesAttachmentService=cR,i.ProcedureFieldValuesService=aR,i.ProcedureService=kM,i.ProcedureStepAssigneeService=NM,i.ProcedureStepCommentService=GM,i.ProcedureStepDefaultAssigneeService=HM,i.ProcedureStepDefaultReviewerService=WM,i.ProcedureStepEventService=KM,i.ProcedureStepEventType=Fc,i.ProcedureStepFieldValuesAttachmentService=JM,i.ProcedureStepFieldValuesReviewService=XM,i.ProcedureStepFieldValuesReviewType=bc,i.ProcedureStepFieldValuesService=QM,i.ProcedureStepFieldsAttachmentService=YM,i.ProcedureStepFieldsService=ZM,i.ProcedureStepReviewerService=xM,i.ProcedureStepService=tR,i.ProcedureTypeAttachmentService=sR,i.ProcedureTypeFieldsAttachmentService=iR,i.ProcedureTypeFieldsService=nR,i.ProcedureTypeService=rR,i.ProjectAccessService=qM,i.ProjectAttachmentService=CM,i.ProjectCommentService=$M,i.ProjectFileService=UM,i.ProjectService=LM,i.RESET_ORGANIZATION_STATE=F,i.RESET_PROJECT_STATE=V,i.RESET_STATE=T,i.RateLimitingMiddleware=JF,i.SelectorBuilder=wb,i.TeamMembershipService=dR,i.TeamService=uR,i.UNKNOWN_ERROR_MESSAGE=bt,i.UserService=lR,i.VerificationCodeType=xF,i._setLatestRetryTime=zf,i.addAsset=Sa,i.addAssetAttachment=Gc,i.addAssetAttachments=As,i.addAssetComment=ia,i.addAssetComments=$t,i.addAssetType=Td,i.addAssetTypeAttachment=va,i.addAssetTypeAttachments=gs,i.addAssetTypeFieldValues=vr,i.addAssetTypeFieldValuesAttachment=Sr,i.addAssetTypeFieldValuesAttachments=Vs,i.addAssetTypeFieldValuesMany=Er,i.addAssetTypeFields=ir,i.addAssetTypeFieldsAttachment=Na,i.addAssetTypeFieldsAttachments=Ga,i.addAssetTypeFieldsMany=nr,i.addAssetTypeIdentifier=Gr,i.addAssetTypeIdentifierValue=nd,i.addAssetTypeIdentifierValues=cd,i.addAssetTypeIdentifiers=Hr,i.addAssetTypeStatus=Bd,i.addAssetTypeStatuses=Vd,i.addAssetTypes=Od,i.addAssets=Fs,i.addConversation=Cc,i.addConversations=vb,i.addDocument=uu,i.addDocumentAttachment=Zd,i.addDocumentAttachments=Jd,i.addDocuments=lu,i.addEmailDomain=Fu,i.addEmailDomains=bu,i.addForm=Ll,i.addFormIdentifier=Uu,i.addFormIdentifierValue=el,i.addFormIdentifierValues=tl,i.addFormIdentifiers=Lu,i.addFormRevision=Rl,i.addFormRevisionAttachment=pl,i.addFormRevisionAttachments=yl,i.addFormRevisions=si,i.addFormSubmission=fo,i.addFormSubmissionAttachment=to,i.addFormSubmissionAttachments=ri,i.addFormSubmissions=ut,i.addForms=kl,i.addGeoImage=Vo,i.addGeoImages=zo,i.addIssue=Kh,i.addIssueAssociation=Zo,i.addIssueAssociations=It,i.addIssueAttachment=rh,i.addIssueAttachments=Si,i.addIssueComment=zh,i.addIssueCommentAttachment=Th,i.addIssueCommentAttachments=Oh,i.addIssueComments=Dh,i.addIssueType=dy,i.addIssueTypeAttachment=am,i.addIssueTypeAttachments=rm,i.addIssueTypeFieldValues=zm,i.addIssueTypeFieldValuesAttachment=dp,i.addIssueTypeFieldValuesAttachments=zi,i.addIssueTypeFieldValuesMany=Dm,i.addIssueTypeFields=Ym,i.addIssueTypeFieldsAttachment=Tm,i.addIssueTypeFieldsAttachments=Om,i.addIssueTypeFieldsMany=Zm,i.addIssueTypeIdentifier=Op,i.addIssueTypeIdentifierValue=Dp,i.addIssueTypeIdentifierValues=jp,i.addIssueTypeIdentifiers=Pp,i.addIssueTypePriorities=Jp,i.addIssueTypePriority=Zp,i.addIssueTypeStatus=Py,i.addIssueTypeStatuses=Fy,i.addIssueTypes=uy,i.addIssueUpdate=Zi,i.addIssueUpdates=Ji,i.addIssues=_i,i.addOrganization=Tf,i.addOrganizationAccess=sf,i.addOrganizationAccesses=nf,i.addOrganizations=If,i.addProcedure=pA,i.addProcedureFieldValues=BP,i.addProcedureFieldValuesAttachment=IP,i.addProcedureFieldValuesAttachments=Zn,i.addProcedureFieldValuesMany=VP,i.addProcedureInitiative=eA,i.addProcedureInitiatives=tA,i.addProcedureStep=TO,i.addProcedureStepAssignee=vA,i.addProcedureStepAssignees=EA,i.addProcedureStepComment=GA,i.addProcedureStepComments=HA,i.addProcedureStepDefaultAssignee=nI,i.addProcedureStepDefaultAssignees=cI,i.addProcedureStepDefaultReviewer=AI,i.addProcedureStepDefaultReviewers=II,i.addProcedureStepEvent=BI,i.addProcedureStepEvents=VI,i.addProcedureStepFieldValues=ET,i.addProcedureStepFieldValuesAttachment=AT,i.addProcedureStepFieldValuesAttachments=Bn,i.addProcedureStepFieldValuesMany=BT,i.addProcedureStepFieldValuesReview=HT,i.addProcedureStepFieldValuesReviews=qn,i.addProcedureStepFields=cT,i.addProcedureStepFieldsAttachment=WI,i.addProcedureStepFieldsAttachments=gn,i.addProcedureStepFieldsMany=aT,i.addProcedureStepReviewer=nO,i.addProcedureStepReviewers=cO,i.addProcedureSteps=OO,i.addProcedureType=WP,i.addProcedureTypeAttachment=EO,i.addProcedureTypeAttachments=BO,i.addProcedureTypeFields=cP,i.addProcedureTypeFieldsAttachment=HO,i.addProcedureTypeFieldsAttachments=WO,i.addProcedureTypeFieldsMany=aP,i.addProcedureTypes=KP,i.addProcedures=Pt,i.addProject=NS,i.addProjectAccess=Cf,i.addProjectAccesses=$f,i.addProjectAttachment=Xf,i.addProjectAttachments=Qf,i.addProjectComment=oS,i.addProjectComments=hS,i.addProjectFile=MS,i.addProjectFiles=RS,i.addProjects=kS,i.addTeam=OF,i.addTeamMembership=rF,i.addTeamMemberships=dF,i.addTeams=PF,i.addUser=sn,i.addUsers=Ky,i.agentsReducer=Lc,i.agentsSlice=ys,i.areArraysEqual=hb,i.assetAttachmentReducer=ea,i.assetAttachmentSlice=Ss,i.assetCommentReducer=pa,i.assetCommentSlice=Os,i.assetReducer=Ma,i.assetSlice=Ps,i.assetTypeAttachmentReducer=Ua,i.assetTypeAttachmentSlice=_s,i.assetTypeFieldValuesAttachmentReducer=Mr,i.assetTypeFieldValuesAttachmentSlice=Bs,i.assetTypeFieldValuesReducer=Lr,i.assetTypeFieldValuesSlice=js,i.assetTypeFieldsAttachmentReducer=er,i.assetTypeFieldsAttachmentSlice=ws,i.assetTypeFieldsReducer=pr,i.assetTypeFieldsSlice=Es,i.assetTypeIdentifierReducer=td,i.assetTypeIdentifierSlice=qs,i.assetTypeIdentifierValueReducer=yd,i.assetTypeIdentifierValueSlice=$s,i.assetTypeReducer=wd,i.assetTypeSlice=Us,i.assetTypeStatusReducer=Nd,i.assetTypeStatusSlice=ks,i.assetTypeStatusSortFn=Ec,i.authReducer=Wd,i.authSlice=Ht,i.baseReducer=Vg,i.baseReducers=ac,i.clearTokens=Zb,i.createModelAdapter=P,i.createOfflineAction=vf,i.createPayload=M,i.createSelectionAdapter=ub,i.deleteAsset=Ta,i.deleteAssetAttachment=Zc,i.deleteAssetAttachments=Is,i.deleteAssetComment=da,i.deleteAssetComments=Ut,i.deleteAssetType=bd,i.deleteAssetTypeAttachment=Da,i.deleteAssetTypeAttachments=Ms,i.deleteAssetTypeFieldValues=jr,i.deleteAssetTypeFieldValuesAttachment=Pr,i.deleteAssetTypeFieldValuesAttachments=zs,i.deleteAssetTypeFieldValuesMany=qr,i.deleteAssetTypeFields=ur,i.deleteAssetTypeFieldsAttachment=Za,i.deleteAssetTypeFieldsAttachments=Ja,i.deleteAssetTypeFieldsMany=lr,i.deleteAssetTypeIdentifier=Jr,i.deleteAssetTypeIdentifierValue=ld,i.deleteAssetTypeIdentifierValues=od,i.deleteAssetTypeIdentifiers=Xr,i.deleteAssetTypeStatus=Cd,i.deleteAssetTypeStatuses=$d,i.deleteAssetTypes=_d,i.deleteAssets=bs,i.deleteConversation=Vb,i.deleteConversations=zb,i.deleteDocument=yu,i.deleteDocumentAttachment=tu,i.deleteDocumentAttachments=su,i.deleteDocuments=fu,i.deleteEmailDomain=wu,i.deleteEmailDomains=vu,i.deleteForm=Kl,i.deleteFormIdentifier=Wu,i.deleteFormIdentifierValue=al,i.deleteFormIdentifierValues=rl,i.deleteFormIdentifiers=Ku,i.deleteFormRevision=Vl,i.deleteFormRevisionAttachment=Tl,i.deleteFormRevisionAttachments=Ol,i.deleteFormRevisions=ii,i.deleteFormSubmission=Io,i.deleteFormSubmissionAttachment=ao,i.deleteFormSubmissionAttachments=di,i.deleteFormSubmissions=lt,i.deleteForms=Yl,i.deleteGeoImage=qo,i.deleteGeoImages=Co,i.deleteIssue=Qh,i.deleteIssueAssociation=Jo,i.deleteIssueAssociations=Tt,i.deleteIssueAttachment=hh,i.deleteIssueAttachments=Ai,i.deleteIssueComment=Uh,i.deleteIssueCommentAttachment=gh,i.deleteIssueCommentAttachments=Mh,i.deleteIssueComments=Lh,i.deleteIssueType=py,i.deleteIssueTypeAttachment=hm,i.deleteIssueTypeAttachments=mm,i.deleteIssueTypeFieldValues=Um,i.deleteIssueTypeFieldValuesAttachment=mp,i.deleteIssueTypeFieldValuesAttachments=Di,i.deleteIssueTypeFieldValuesMany=Lm,i.deleteIssueTypeFields=ep,i.deleteIssueTypeFieldsAttachment=gm,i.deleteIssueTypeFieldsAttachments=Mm,i.deleteIssueTypeFieldsMany=tp,i.deleteIssueTypeIdentifier=Mp,i.deleteIssueTypeIdentifierValue=Lp,i.deleteIssueTypeIdentifierValues=kp,i.deleteIssueTypeIdentifiers=Rp,i.deleteIssueTypePriorities=sy,i.deleteIssueTypePriority=ty,i.deleteIssueTypeStatus=Ry,i.deleteIssueTypeStatuses=wy,i.deleteIssueTypes=yy,i.deleteIssueUpdate=Xi,i.deleteIssueUpdates=Qi,i.deleteIssues=gi,i.deleteOrganization=Ff,i.deleteOrganizationAccess=uf,i.deleteOrganizationAccesses=lf,i.deleteOrganizations=bf,i.deleteProcedure=IA,i.deleteProcedureFieldValues=CP,i.deleteProcedureFieldValuesAttachment=bP,i.deleteProcedureFieldValuesAttachments=Jn,i.deleteProcedureFieldValuesMany=$P,i.deleteProcedureInitiative=aA,i.deleteProcedureInitiatives=rA,i.deleteProcedureStep=bO,i.deleteProcedureStepAssignee=jA,i.deleteProcedureStepAssignees=qA,i.deleteProcedureStepComment=JA,i.deleteProcedureStepComments=XA,i.deleteProcedureStepDefaultAssignee=lI,i.deleteProcedureStepDefaultAssignees=oI,i.deleteProcedureStepDefaultReviewer=bI,i.deleteProcedureStepDefaultReviewers=_I,i.deleteProcedureStepEvent=CI,i.deleteProcedureStepEvents=$I,i.deleteProcedureStepFieldValues=qT,i.deleteProcedureStepFieldValuesAttachment=FT,i.deleteProcedureStepFieldValuesAttachments=Vn,i.deleteProcedureStepFieldValuesMany=CT,i.deleteProcedureStepFieldValuesReview=JT,i.deleteProcedureStepFieldValuesReviews=Cn,i.deleteProcedureStepFields=oT,i.deleteProcedureStepFieldsAttachment=XI,i.deleteProcedureStepFieldsAttachments=Mn,i.deleteProcedureStepFieldsMany=hT,i.deleteProcedureStepReviewer=lO,i.deleteProcedureStepReviewers=oO,i.deleteProcedureSteps=_O,i.deleteProcedureType=QP,i.deleteProcedureTypeAttachment=qO,i.deleteProcedureTypeAttachments=CO,i.deleteProcedureTypeFields=oP,i.deleteProcedureTypeFieldsAttachment=XO,i.deleteProcedureTypeFieldsAttachments=QO,i.deleteProcedureTypeFieldsMany=hP,i.deleteProcedureTypes=xP,i.deleteProcedures=Ft,i.deleteProject=WS,i.deleteProjectAccess=Gf,i.deleteProjectAccesses=Hf,i.deleteProjectAttachment=iS,i.deleteProjectAttachments=nS,i.deleteProjectComment=SS,i.deleteProjectComments=AS,i.deleteProjectFile=ES,i.deleteProjectFiles=BS,i.deleteProjects=KS,i.deleteTeam=MF,i.deleteTeamMembership=mF,i.deleteTeamMemberships=pF,i.deleteTeams=RF,i.deleteUser=nn,i.deleteUsers=Jy,i.dequeue=$F,i.discard=LF,i.documentAttachmentReducer=au,i.documentAttachmentSlice=Gs,i.documentSlice=Ws,i.documentsReducer=Su,i.emailDomainsReducer=zu,i.emailDomainsSlice=Ys,i.emailRegex=Mb,i.enqueue=CF,i.enqueueRequest=Bf,i.extractResponseFromError=NF,i.fallbackToEmptyArray=S,i.fallbackToEmptyObject=hs,i.fetchBlobFromObjectUrl=Mc,i.fetchFileFromObjectUrl=Rc,i.fileReducer=qu,i.fileSlice=Js,i.formIdentifierReducer=Xu,i.formIdentifierSlice=Xs,i.formIdentifierValueReducer=ol,i.formIdentifierValueSlice=xs,i.formReducer=Zl,i.formRevisionAttachmentReducer=_l,i.formRevisionAttachmentSlice=ei,i.formRevisionReducer=Cl,i.formRevisionsSlice=ti,i.formSlice=ni,i.formSubmissionAttachmentReducer=oo,i.formSubmissionAttachmentSlice=ai,i.formSubmissionReducer=Ro,i.formSubmissionSlice=hi,i.geoImageReducer=ko,i.geoImageSlice=mi,i.getClientSDK=YF,i.getClientStore=gt,i.getDocumentSubTree=Dc,i.getDocumentTrees=Rb,i.getFileExtension=gc,i.getLocalDateString=_c,i.getLocalRelativeDateString=fb,i.getOutboxCoordinator=ft,i.getRenamedFile=Ib,i.getRequestDescription=A,i.getS3FileKey=Ab,i.hashFile=qt,i.initSDK=hR,i.initializeAssetAttachments=Nc,i.initializeAssetComments=sa,i.initializeAssetTypeAttachments=wa,i.initializeAssetTypeFieldValues=wr,i.initializeAssetTypeFieldValuesAttachments=fr,i.initializeAssetTypeFields=sr,i.initializeAssetTypeFieldsAttachments=ka,i.initializeAssetTypeIdentifierValues=id,i.initializeAssetTypeIdentifiers=Nr,i.initializeAssetTypeStatuses=Ed,i.initializeAssetTypes=Sd,i.initializeAssets=fa,i.initializeConversations=qc,i.initializeDocumentAttachments=Yd,i.initializeDocuments=du,i.initializeEmailDomains=Pu,i.initializeFormIdentifierValues=xu,i.initializeFormIdentifiers=$u,i.initializeFormRevisionAttachments=ml,i.initializeFormRevisions=Ml,i.initializeFormSubmissionAttachments=eo,i.initializeFormSubmissions=mo,i.initializeForms=Ul,i.initializeGeoImages=vo,i.initializeIssueAssociations=Go,i.initializeIssueAttachments=ah,i.initializeIssueCommentAttachments=Ih,i.initializeIssueComments=Vh,i.initializeIssueTypeAttachments=cm,i.initializeIssueTypeFieldValues=Vm,i.initializeIssueTypeFieldValuesAttachments=rp,i.initializeIssueTypeFields=Km,i.initializeIssueTypeFieldsAttachments=Im,i.initializeIssueTypeIdentifierValues=zp,i.initializeIssueTypeIdentifiers=Tp,i.initializeIssueTypePriorities=Yp,i.initializeIssueTypeStatuses=Oy,i.initializeIssueTypes=ry,i.initializeIssueUpdates=zy,i.initializeIssues=Wh,i.initializeOrganizationAccesses=tf,i.initializeOrganizations=ff,i.initializeProcedureFieldValues=EP,i.initializeProcedureFieldValuesAttachments=AP,i.initializeProcedureInitiatives=xS,i.initializeProcedureStepAssignees=wA,i.initializeProcedureStepComments=NA,i.initializeProcedureStepDefaultAssignees=iI,i.initializeProcedureStepDefaultReviewers=SI,i.initializeProcedureStepEvents=EI,i.initializeProcedureStepFieldValues=vT,i.initializeProcedureStepFieldValuesAttachments=ST,i.initializeProcedureStepFieldValuesReviews=GT,i.initializeProcedureStepFields=nT,i.initializeProcedureStepFieldsAttachments=HI,i.initializeProcedureStepReviewers=iO,i.initializeProcedureSteps=SO,i.initializeProcedureTypeAttachments=vO,i.initializeProcedureTypeFields=nP,i.initializeProcedureTypeFieldsAttachments=GO,i.initializeProcedureTypes=HP,i.initializeProcedures=mA,i.initializeProjectAccesses=qf,i.initializeProjectAttachments=Jf,i.initializeProjectComments=lS,i.initializeProjectFiles=bS,i.initializeProjects=$S,i.initializeTeamMemberships=aF,i.initializeTeams=TF,i.initializeUsers=Gy,i.isImageFile=Tb,i.isObjectUrl=wc,i.isToday=yb,i.issueAssociationReducer=nh,i.issueAssociationSlice=yi,i.issueAttachmentReducer=Sh,i.issueAttachmentSlice=fi,i.issueCommentAttachmentReducer=Eh,i.issueCommentAttachmentSlice=Ti,i.issueCommentReducer=Gh,i.issueCommentSlice=Pi,i.issueReducer=im,i.issueSlice=bi,i.issueTypeAttachmentReducer=Sm,i.issueTypeAttachmentSlice=Mi,i.issueTypeFieldValuesAttachmentReducer=Ap,i.issueTypeFieldValuesAttachmentSlice=Vi,i.issueTypeFieldValuesReducer=Hm,i.issueTypeFieldValuesSlice=Ei,i.issueTypeFieldsAttachmentReducer=Em,i.issueTypeFieldsAttachmentSlice=wi,i.issueTypeFieldsReducer=cp,i.issueTypeFieldsSlice=Bi,i.issueTypeIdentifierReducer=Bp,i.issueTypeIdentifierSlice=qi,i.issueTypeIdentifierValueReducer=Wp,i.issueTypeIdentifierValueSlice=$i,i.issueTypePriorityReducer=cy,i.issueTypePrioritySlice=Ui,i.issueTypePrioritySortFn=Vc,i.issueTypeReducer=Iy,i.issueTypeSlice=Ni,i.issueTypeStatusReducer=By,i.issueTypeStatusSlice=Hi,i.issueTypeStatusSortFn=Bc,i.issueUpdateReducer=ky,i.issueUpdateSlice=Yi,i.logOnlyOnce=Ob,i.markAsDeleted=Vf,i.markForDeletion=q_,i.memoize=os,i.organizationAccessReducer=of,i.organizationAccessSlice=an,i.organizationReducer=wf,i.organizationSlice=rn,i.outboxReducer=Df,i.outboxSlice=dn,i.overmapEnhancer=Cg,i.overmapReducer=zg,i.overmapReducers=VF,i.performRequest=uc,i.performRequestFromAction=UF,i.procedureFieldValuesAttachmentReducer=_P,i.procedureFieldValuesAttachmentSlice=Yn,i.procedureFieldValuesReducer=UP,i.procedureFieldValuesSlice=Qn,i.procedureInitiativeReducer=dA,i.procedureInitiativeSlice=fn,i.procedureReducer=TA,i.procedureSlice=Sn,i.procedureStepAssigneeReducer=LA,i.procedureStepAssigneeSlice=An,i.procedureStepCommentReducer=tI,i.procedureStepCommentSlice=In,i.procedureStepDefaultAssigneeReducer=yI,i.procedureStepDefaultAssigneeSlice=Tn,i.procedureStepDefaultReviewerReducer=wI,i.procedureStepDefaultReviewerSlice=Pn,i.procedureStepEventReducer=NI,i.procedureStepEventSlice=bn,i.procedureStepFieldValuesAttachmentReducer=RT,i.procedureStepFieldValuesAttachmentSlice=En,i.procedureStepFieldValuesReducer=$T,i.procedureStepFieldValuesReviewReducer=tO,i.procedureStepFieldValuesReviewSlice=jn,i.procedureStepFieldValuesSlice=Dn,i.procedureStepFieldsAttachmentReducer=sT,i.procedureStepFieldsAttachmentSlice=_n,i.procedureStepFieldsReducer=yT,i.procedureStepFieldsSlice=wn,i.procedureStepReducer=gO,i.procedureStepReviewerReducer=yO,i.procedureStepReviewerSlice=$n,i.procedureStepSlice=Un,i.procedureTypeAttachmentReducer=$O,i.procedureTypeAttachmentSlice=Nn,i.procedureTypeFieldsAttachmentReducer=xO,i.procedureTypeFieldsAttachmentSlice=Hn,i.procedureTypeFieldsReducer=mP,i.procedureTypeFieldsSlice=Kn,i.procedureTypeReducer=eF,i.procedureTypeSlice=ec,i.projectAccessReducer=Wf,i.projectAccessSlice=un,i.projectAttachmentReducer=dS,i.projectAttachmentSlice=on,i.projectCommentReducer=PS,i.projectCommentSlice=mn,i.projectFileReducer=qS,i.projectFileSlice=pn,i.projectReducer=YS,i.projectSlice=yn,i.rehydratedReducer=nF,i.rehydratedSlice=sc,i.restructureSelectorWithArgs=y,i.runMiddleware=QF,i.selectAccessToken=Jb,i.selectAccessesByUserOfProject=$_,i.selectAccessibleProjects=G_,i.selectActiveOrganizationAccess=V_,i.selectAllDocumentAttachments=Hs,i.selectAssetAttachmentById=Xc,i.selectAssetAttachmentMapping=Jc,i.selectAssetAttachments=Ts,i.selectAssetAttachmentsByIds=Qc,i.selectAssetById=_a,i.selectAssetCommentById=la,i.selectAssetCommentMapping=ua,i.selectAssetComments=Lt,i.selectAssetCommentsByIds=oa,i.selectAssetTypeAttachmentById=qa,i.selectAssetTypeAttachmentMapping=ja,i.selectAssetTypeAttachments=Rs,i.selectAssetTypeAttachmentsByIds=Ca,i.selectAssetTypeById=Md,i.selectAssetTypeFieldValues=Nt,i.selectAssetTypeFieldValuesAttachmentById=br,i.selectAssetTypeFieldValuesAttachments=Ds,i.selectAssetTypeFieldValuesAttachmentsByIds=_r,i.selectAssetTypeFieldValuesAttachmentsMapping=Fr,i.selectAssetTypeFieldValuesById=$r,i.selectAssetTypeFieldValuesByIds=Ur,i.selectAssetTypeFieldValuesMapping=Cr,i.selectAssetTypeFieldValuesOfAsset=Lb,i.selectAssetTypeFields=wt,i.selectAssetTypeFieldsAttachmentById=Qa,i.selectAssetTypeFieldsAttachments=vs,i.selectAssetTypeFieldsAttachmentsByIds=xa,i.selectAssetTypeFieldsAttachmentsMapping=Xa,i.selectAssetTypeFieldsById=hr,i.selectAssetTypeFieldsByIds=mr,i.selectAssetTypeFieldsMapping=or,i.selectAssetTypeFieldsOfAssetType=$b,i.selectAssetTypeIdentifierById=xr,i.selectAssetTypeIdentifierMapping=Qr,i.selectAssetTypeIdentifierValueById=md,i.selectAssetTypeIdentifierValueMapping=hd,i.selectAssetTypeIdentifierValues=Gt,i.selectAssetTypeIdentifierValuesByIds=pd,i.selectAssetTypeIdentifierValuesOfAsset=Gb,i.selectAssetTypeIdentifierValuesOfIdentifier=Hb,i.selectAssetTypeIdentifiers=Cs,i.selectAssetTypeIdentifiersByIds=ed,i.selectAssetTypeIdentifiersOfAssetType=Nb,i.selectAssetTypeStatusById=Ld,i.selectAssetTypeStatusMapping=Ud,i.selectAssetTypeStatuses=Ns,i.selectAssetTypeStatusesByIds=kd,i.selectAssetTypeStatusesOfAssetType=Kb,i.selectAssetTypeValuesOfAssetType=kb,i.selectAssetTypes=Ls,i.selectAssetTypesByIds=Rd,i.selectAssetTypesMapping=gd,i.selectAssetTypesOfOrganization=Wb,i.selectAssets=kt,i.selectAssetsByIds=ga,i.selectAssetsMapping=Fa,i.selectAssetsOfAssetType=ba,i.selectAssetsOfProject=qb,i.selectAttachmentsOfAsset=xc,i.selectAttachmentsOfAssetType=$a,i.selectAttachmentsOfAssetTypeFieldValues=gr,i.selectAttachmentsOfAssetTypeFields=Cb,i.selectAttachmentsOfDocument=Qb,i.selectAttachmentsOfFormRevision=d_,i.selectAttachmentsOfFormSubmission=lo,i.selectAttachmentsOfIssue=ph,i.selectAttachmentsOfIssueComment=f_,i.selectAttachmentsOfIssueType=I_,i.selectAttachmentsOfIssueTypeFieldValues=Sp,i.selectAttachmentsOfIssueTypeFields=T_,i.selectAttachmentsOfProcedureFieldValues=wP,i.selectAttachmentsOfProcedureStepFieldValues=MT,i.selectAttachmentsOfProcedureStepFields=xI,i.selectAttachmentsOfProcedureType=Og,i.selectAttachmentsOfProcedureTypeFields=Pg,i.selectAttachmentsOfProject=L_,i.selectCommentsOfAsset=ha,i.selectCommentsOfAssets=ma,i.selectCommentsOfIssue=S_,i.selectCommentsOfProject=k_,i.selectCommentsOfProjects=N_,i.selectConversation=jb,i.selectConversationMapping=fs,i.selectConversations=Db,i.selectCurrentUser=Qy,i.selectDeletedRequests=D_,i.selectDescendantsOfDocument=Tu,i.selectDocumentAttachmentById=nu,i.selectDocumentAttachmentMapping=iu,i.selectDocumentAttachmentsByIds=cu,i.selectDocumentById=Au,i.selectDocuments=Wt,i.selectDocumentsByIds=Iu,i.selectDocumentsMapping=Ks,i.selectEmailDomainById=Bu,i.selectEmailDomains=Zs,i.selectEmailDomainsAsMapping=Eu,i.selectEmailDomainsByIds=Vu,i.selectEmailDomainsOfOrganization=t_,i.selectFieldValuesOfProcedure=_g,i.selectFormById=Xl,i.selectFormIdentifierById=Zu,i.selectFormIdentifierMapping=Yu,i.selectFormIdentifierValueById=ul,i.selectFormIdentifierValueMapping=dl,i.selectFormIdentifierValues=Kt,i.selectFormIdentifierValuesByIds=ll,i.selectFormIdentifierValuesOfFormSubmission=a_,i.selectFormIdentifierValuesOfIdentifier=r_,i.selectFormIdentifiers=Qs,i.selectFormIdentifiersByIds=Ju,i.selectFormIdentifiersOfForm=c_,i.selectFormMapping=Jl,i.selectFormRevisionAttachmentById=Fl,i.selectFormRevisionAttachments=Pl,i.selectFormRevisionAttachmentsByIds=bl,i.selectFormRevisionAttachmentsMapping=Yt,i.selectFormRevisionById=Dl,i.selectFormRevisionMapping=zl,i.selectFormRevisions=Zt,i.selectFormRevisionsByIds=jl,i.selectFormRevisionsOfForm=ql,i.selectFormSubmissionAttachemntsByIds=oi,i.selectFormSubmissionAttachmentById=ro,i.selectFormSubmissionAttachments=li,i.selectFormSubmissionAttachmentsByIds=uo,i.selectFormSubmissionAttachmentsMapping=ui,i.selectFormSubmissionById=Oo,i.selectFormSubmissions=k,i.selectFormSubmissionsByIds=Po,i.selectFormSubmissionsMapping=To,i.selectFormSubmissionsOfAsset=go,i.selectFormSubmissionsOfAssets=Mo,i.selectFormSubmissionsOfForm=Fo,i.selectFormSubmissionsOfIssue=bo,i.selectFormSubmissionsOfIssues=_o,i.selectFormSubmissionsOfOrganization=o_,i.selectFormSubmissionsOfOrganizationAndForm=p_,i.selectFormSubmissionsOfProject=h_,i.selectFormSubmissionsOfProjectAndForm=m_,i.selectForms=ci,i.selectFormsByIds=Ql,i.selectFormsOfOrganization=l_,i.selectGeoImageById=Uo,i.selectGeoImageMapping=$o,i.selectGeoImages=pi,i.selectGeoImagesByIds=Lo,i.selectGeoImagesOfProject=y_,i.selectIsLoggedIn=Xb,i.selectIssueAssociationById=Qo,i.selectIssueAssociationMapping=Xo,i.selectIssueAssociations=Ot,i.selectIssueAssociationsByIds=xo,i.selectIssueAssociationsOfAsset=sh,i.selectIssueAssociationsOfAssets=ih,i.selectIssueAssociationsOfIssue=th,i.selectIssueAssociationsOfIssues=eh,i.selectIssueAttachmentById=yh,i.selectIssueAttachmentMapping=mh,i.selectIssueAttachments=Ii,i.selectIssueAttachmentsByIds=fh,i.selectIssueById=em,i.selectIssueCommentAttachmentById=wh,i.selectIssueCommentAttachmentMapping=Rh,i.selectIssueCommentAttachments=Oi,i.selectIssueCommentAttachmentsByIds=vh,i.selectIssueCommentById=kh,i.selectIssueCommentMapping=Fi,i.selectIssueCommentsByIds=Nh,i.selectIssueMapping=xh,i.selectIssueTypeAttachmentById=ym,i.selectIssueTypeAttachmentMapping=pm,i.selectIssueTypeAttachments=Ri,i.selectIssueTypeAttachmentsByIds=fm,i.selectIssueTypeById=Sy,i.selectIssueTypeFieldValues=Xt,i.selectIssueTypeFieldValuesAttachmentById=yp,i.selectIssueTypeFieldValuesAttachments=ji,i.selectIssueTypeFieldValuesAttachmentsByIds=fp,i.selectIssueTypeFieldValuesAttachmentsMapping=pp,i.selectIssueTypeFieldValuesById=Nm,i.selectIssueTypeFieldValuesByIds=Gm,i.selectIssueTypeFieldValuesMapping=km,i.selectIssueTypeFieldValuesOfIssue=O_,i.selectIssueTypeFields=vt,i.selectIssueTypeFieldsAttachmentById=wm,i.selectIssueTypeFieldsAttachments=vi,i.selectIssueTypeFieldsAttachmentsByIds=vm,i.selectIssueTypeFieldsAttachmentsMapping=Rm,i.selectIssueTypeFieldsById=ip,i.selectIssueTypeFieldsByIds=np,i.selectIssueTypeFieldsMapping=sp,i.selectIssueTypeFieldsOfIssueType=P_,i.selectIssueTypeIdentifierById=vp,i.selectIssueTypeIdentifierMapping=wp,i.selectIssueTypeIdentifierValueById=Gp,i.selectIssueTypeIdentifierValueMapping=Np,i.selectIssueTypeIdentifierValues=Qt,i.selectIssueTypeIdentifierValuesByIds=Hp,i.selectIssueTypeIdentifierValuesOfIdentifier=M_,i.selectIssueTypeIdentifierValuesOfIssue=g_,i.selectIssueTypeIdentifiers=Ci,i.selectIssueTypeIdentifiersByIds=Ep,i.selectIssueTypeIdentifiersOfIssueType=__,i.selectIssueTypeMapping=fy,i.selectIssueTypePriorities=Li,i.selectIssueTypePrioritiesByIds=ny,i.selectIssueTypePrioritiesOfIssueType=R_,i.selectIssueTypePriorityById=ki,i.selectIssueTypePriorityMapping=iy,i.selectIssueTypeStatusById=Ki,i.selectIssueTypeStatusMapping=vy,i.selectIssueTypeStatuses=Wi,i.selectIssueTypeStatusesByIds=Ey,i.selectIssueTypeStatusesOfIssueType=v_,i.selectIssueTypeValuesOfIssueType=b_,i.selectIssueTypes=Gi,i.selectIssueTypesByIds=Ay,i.selectIssueTypesOfOrganization=w_,i.selectIssueUpdateById=$y,i.selectIssueUpdateMapping=xi,i.selectIssueUpdates=en,i.selectIssueUpdatesByIds=Uy,i.selectIssueUpdatesOfIssue=Ly,i.selectIssues=Jt,i.selectIssuesByIds=tm,i.selectIssuesOfIssueType=sm,i.selectIssuesOfProject=A_,i.selectLatestAssetTypeFieldsOfAssetType=Ub,i.selectLatestFieldsByProcedureStep=dg,i.selectLatestFormRevisionOfForm=u_,i.selectLatestIssueTypeFieldsOfIssueType=F_,i.selectLatestProcedureStepFieldValuesReviewByProcedureStepFieldValues=yg,i.selectLatestProcedureStepFieldsOfProcedureStep=rg,i.selectLatestProcedureTypeFieldsOfProcedureType=bg,i.selectLatestRetryTime=j_,i.selectLatestReviewOfProcedureStepFieldValues=hg,i.selectMembershipsByUserOfTeam=vg,i.selectOrganizationAccessById=hf,i.selectOrganizationAccessMapping=ts,i.selectOrganizationAccessUserMapping=pf,i.selectOrganizationAccessesByIds=mf,i.selectOrganizationById=Mf,i.selectOrganizationDocuments=e_,i.selectOrganizations=gf,i.selectOrganizationsByIds=Rf,i.selectOrganizationsMapping=_f,i.selectProcedureById=PA,i.selectProcedureFieldValues=xn,i.selectProcedureFieldValuesAttachmentById=MP,i.selectProcedureFieldValuesAttachments=Xn,i.selectProcedureFieldValuesAttachmentsByIds=RP,i.selectProcedureFieldValuesAttachmentsMapping=gP,i.selectProcedureFieldValuesById=kP,i.selectProcedureFieldValuesByIds=NP,i.selectProcedureFieldValuesMapping=LP,i.selectProcedureInitiativeById=lA,i.selectProcedureInitiatives=ns,i.selectProcedureInitiativesByIds=oA,i.selectProcedureInitiativesMapping=uA,i.selectProcedureInitiativesOfProcedureType=K_,i.selectProcedureInitiativesOfProject=W_,i.selectProcedureStepAssigneeById=$A,i.selectProcedureStepAssignees=Bt,i.selectProcedureStepAssigneesByIds=UA,i.selectProcedureStepAssigneesMapping=CA,i.selectProcedureStepAssigneesOfProcedure=Z_,i.selectProcedureStepAssigneesOfProcedureAndProcedureStep=X_,i.selectProcedureStepAssigneesOfProcedureStep=J_,i.selectProcedureStepById=MO,i.selectProcedureStepCommentById=xA,i.selectProcedureStepComments=Vt,i.selectProcedureStepCommentsByIds=eI,i.selectProcedureStepCommentsMapping=QA,i.selectProcedureStepCommentsOfProcedure=Q_,i.selectProcedureStepCommentsOfProcedureAndProcedureStep=eg,i.selectProcedureStepCommentsOfProcedureStep=x_,i.selectProcedureStepDefaultAssigneeById=mI,i.selectProcedureStepDefaultAssignees=On,i.selectProcedureStepDefaultAssigneesByIds=pI,i.selectProcedureStepDefaultAssigneesMapping=hI,i.selectProcedureStepDefaultAssigneesOfProcedureStep=tg,i.selectProcedureStepDefaultReviewerById=MI,i.selectProcedureStepDefaultReviewers=Fn,i.selectProcedureStepDefaultReviewersByIds=RI,i.selectProcedureStepDefaultReviewersMapping=gI,i.selectProcedureStepDefaultReviewersOfProcedureStep=sg,i.selectProcedureStepEventById=LI,i.selectProcedureStepEvents=zt,i.selectProcedureStepEventsByIds=kI,i.selectProcedureStepEventsMapping=UI,i.selectProcedureStepEventsOfProcedure=ig,i.selectProcedureStepEventsOfProcedureAndProcedureStep=cg,i.selectProcedureStepEventsOfProcedureStep=ng,i.selectProcedureStepFieldValues=ht,i.selectProcedureStepFieldValuesAttachmentById=_T,i.selectProcedureStepFieldValuesAttachments=zn,i.selectProcedureStepFieldValuesAttachmentsByIds=gT,i.selectProcedureStepFieldValuesAttachmentsMapping=bT,i.selectProcedureStepFieldValuesById=LT,i.selectProcedureStepFieldValuesByIds=kT,i.selectProcedureStepFieldValuesMapping=UT,i.selectProcedureStepFieldValuesOfProcedure=ug,i.selectProcedureStepFieldValuesOfProcedureAndProcedureStep=og,i.selectProcedureStepFieldValuesOfProcedureStep=lg,i.selectProcedureStepFieldValuesReviewById=QT,i.selectProcedureStepFieldValuesReviews=mt,i.selectProcedureStepFieldValuesReviewsByIds=xT,i.selectProcedureStepFieldValuesReviewsMapping=XT,i.selectProcedureStepFieldValuesReviewsOfProcedure=mg,i.selectProcedureStepFieldValuesReviewsOfProcedureAndProcedureStep=pg,i.selectProcedureStepFields=cs,i.selectProcedureStepFieldsAttachmentById=eT,i.selectProcedureStepFieldsAttachments=Rn,i.selectProcedureStepFieldsAttachmentsByIds=tT,i.selectProcedureStepFieldsAttachmentsMapping=QI,i.selectProcedureStepFieldsById=mT,i.selectProcedureStepFieldsByIds=pT,i.selectProcedureStepFieldsMapping=vn,i.selectProcedureStepFieldsOfProcedureStep=ag,i.selectProcedureStepReviewerById=mO,i.selectProcedureStepReviewers=Dt,i.selectProcedureStepReviewersByIds=pO,i.selectProcedureStepReviewersMapping=hO,i.selectProcedureStepReviewersOfProcedure=fg,i.selectProcedureStepReviewersOfProcedureAndProcedureStep=Ag,i.selectProcedureStepReviewersOfProcedureStep=Sg,i.selectProcedureSteps=kn,i.selectProcedureStepsByIds=RO,i.selectProcedureStepsMapping=Ln,i.selectProcedureStepsMappingOfProcedureType=Ig,i.selectProcedureStepsOfProcedureType=Tg,i.selectProcedureTypeAttachmentById=LO,i.selectProcedureTypeAttachmentMapping=UO,i.selectProcedureTypeAttachments=Gn,i.selectProcedureTypeAttachmentsByIds=kO,i.selectProcedureTypeById=sF,i.selectProcedureTypeFields=as,i.selectProcedureTypeFieldsAttachmentById=tP,i.selectProcedureTypeFieldsAttachments=Wn,i.selectProcedureTypeFieldsAttachmentsByIds=sP,i.selectProcedureTypeFieldsAttachmentsMapping=eP,i.selectProcedureTypeFieldsById=yP,i.selectProcedureTypeFieldsByIds=fP,i.selectProcedureTypeFieldsMapping=pP,i.selectProcedureTypeFieldsOfProcedureType=Fg,i.selectProcedureTypes=tc,i.selectProcedureTypesByIds=iF,i.selectProcedureTypesMapping=tF,i.selectProcedureTypesOfOrganization=gg,i.selectProcedures=ot,i.selectProceduresByIds=FA,i.selectProceduresMapping=OA,i.selectProceduresOfAsset=_A,i.selectProceduresOfAssets=gA,i.selectProceduresOfProcedureInitiative=MA,i.selectProceduresOfProcedureType=bA,i.selectProceduresOfProject=Y_,i.selectProjectAccessById=Kf,i.selectProjectAccessMapping=ln,i.selectProjectAccesses=Et,i.selectProjectAccessesByIds=Yf,i.selectProjectAccessesOfProject=C_,i.selectProjectAttachmentById=aS,i.selectProjectAttachmentMapping=cS,i.selectProjectAttachments=hn,i.selectProjectAttachmentsByIds=rS,i.selectProjectById=JS,i.selectProjectCommentById=TS,i.selectProjectCommentMapping=IS,i.selectProjectComments=ss,i.selectProjectCommentsByIds=OS,i.selectProjectDocuments=xb,i.selectProjectFileById=DS,i.selectProjectFileMapping=VS,i.selectProjectFiles=zS,i.selectProjectFilesByIds=jS,i.selectProjectMapping=ZS,i.selectProjects=is,i.selectProjectsByIds=XS,i.selectProjectsOfOrganization=H_,i.selectRehydrated=wg,i.selectReviewsOfProcedureStepFieldValues=eO,i.selectTeamById=vF,i.selectTeamMembershipById=SF,i.selectTeamMemberships=rs,i.selectTeamMembershipsByIds=AF,i.selectTeamMembershipsMapping=fF,i.selectTeams=cc,i.selectTeamsByIds=EF,i.selectTeamsMapping=wF,i.selectTeamsOfOrganization=Bg,i.selectUploadUrl=n_,i.selectUserById=es,i.selectUsers=xt,i.selectUsersByIds=xy,i.selectUsersMapping=cn,i.selectUsersOfOrganization=z_,i.selectUsersOfProject=U_,i.selectUsersOfTeam=Eg,i.setAsset=Oa,i.setAssetAttachment=Hc,i.setAssetAttachments=Wc,i.setAssetComment=na,i.setAssetComments=ca,i.setAssetType=Ad,i.setAssetTypeAttachment=Ea,i.setAssetTypeAttachments=Ba,i.setAssetTypeFieldValues=Br,i.setAssetTypeFieldValuesAttachment=Ar,i.setAssetTypeFieldValuesAttachments=Ir,i.setAssetTypeFieldValuesMany=Vr,i.setAssetTypeFields=cr,i.setAssetTypeFieldsAttachment=Ha,i.setAssetTypeFieldsAttachments=Wa,i.setAssetTypeFieldsMany=ar,i.setAssetTypeIdentifier=Wr,i.setAssetTypeIdentifierValue=ad,i.setAssetTypeIdentifierValues=rd,i.setAssetTypeIdentifiers=Kr,i.setAssetTypeStatus=zd,i.setAssetTypeStatuses=Dd,i.setAssetTypes=Id,i.setAssets=Pa,i.setClientSDK=KF,i.setClientStore=HF,i.setConversation=$c,i.setConversations=Eb,i.setCurrentUser=E_,i.setCurrentUserProfile=B_,i.setDocument=ou,i.setDocumentAttachment=Xd,i.setDocumentAttachments=Qd,i.setDocuments=hu,i.setEmailDomain=_u,i.setEmailDomains=gu,i.setForm=Nl,i.setFormIdentifier=ku,i.setFormIdentifierValue=sl,i.setFormIdentifierValues=il,i.setFormIdentifiers=Nu,i.setFormRevision=wl,i.setFormRevisionAttachment=fl,i.setFormRevisionAttachments=Sl,i.setFormRevisions=vl,i.setFormSubmission=po,i.setFormSubmissionAttachment=so,i.setFormSubmissionAttachments=io,i.setFormSubmissions=yo,i.setForms=Gl,i.setGeoImage=Eo,i.setGeoImages=Bo,i.setIssue=Yh,i.setIssueAssociation=Wo,i.setIssueAssociations=Ho,i.setIssueAttachment=dh,i.setIssueAttachments=uh,i.setIssueComment=jh,i.setIssueCommentAttachment=Ph,i.setIssueCommentAttachments=Fh,i.setIssueComments=qh,i.setIssueType=ly,i.setIssueTypeAttachment=dm,i.setIssueTypeAttachments=um,i.setIssueTypeFieldValues=jm,i.setIssueTypeFieldValuesAttachment=up,i.setIssueTypeFieldValuesAttachments=lp,i.setIssueTypeFieldValuesMany=qm,i.setIssueTypeFields=Jm,i.setIssueTypeFieldsAttachment=Pm,i.setIssueTypeFieldsAttachments=Fm,i.setIssueTypeFieldsMany=Xm,i.setIssueTypeIdentifier=Fp,i.setIssueTypeIdentifierValue=qp,i.setIssueTypeIdentifierValues=Cp,i.setIssueTypeIdentifiers=bp,i.setIssueTypePriorities=Qp,i.setIssueTypePriority=Xp,i.setIssueTypeStatus=by,i.setIssueTypeStatuses=_y,i.setIssueTypes=oy,i.setIssueUpdate=Dy,i.setIssueUpdates=jy,i.setIssues=Zh,i.setLoggedIn=Hd,i.setOrganization=Af,i.setOrganizationAccess=cf,i.setOrganizationAccesses=af,i.setOrganizations=Sf,i.setProcedure=yA,i.setProcedureFieldValues=zP,i.setProcedureFieldValuesAttachment=TP,i.setProcedureFieldValuesAttachments=OP,i.setProcedureFieldValuesMany=DP,i.setProcedureInitiative=sA,i.setProcedureInitiatives=iA,i.setProcedureStep=AO,i.setProcedureStepAssignee=BA,i.setProcedureStepAssignees=VA,i.setProcedureStepComment=WA,i.setProcedureStepComments=KA,i.setProcedureStepDefaultAssignee=aI,i.setProcedureStepDefaultAssignees=rI,i.setProcedureStepDefaultReviewer=TI,i.setProcedureStepDefaultReviewers=OI,i.setProcedureStepEvent=zI,i.setProcedureStepEvents=DI,i.setProcedureStepFieldValues=VT,i.setProcedureStepFieldValuesAttachment=IT,i.setProcedureStepFieldValuesAttachments=TT,i.setProcedureStepFieldValuesMany=zT,i.setProcedureStepFieldValuesReview=WT,i.setProcedureStepFieldValuesReviews=KT,i.setProcedureStepFields=rT,i.setProcedureStepFieldsAttachment=KI,i.setProcedureStepFieldsAttachments=YI,i.setProcedureStepFieldsMany=dT,i.setProcedureStepReviewer=aO,i.setProcedureStepReviewers=rO,i.setProcedureSteps=IO,i.setProcedureType=YP,i.setProcedureTypeAttachment=VO,i.setProcedureTypeAttachments=zO,i.setProcedureTypeFields=rP,i.setProcedureTypeFieldsAttachment=KO,i.setProcedureTypeFieldsAttachments=YO,i.setProcedureTypeFieldsMany=dP,i.setProcedureTypes=ZP,i.setProcedures=fA,i.setProject=LS,i.setProjectAccess=Uf,i.setProjectAccesses=Lf,i.setProjectAttachment=xf,i.setProjectAttachments=eS,i.setProjectComment=mS,i.setProjectComments=pS,i.setProjectFile=_S,i.setProjectFiles=gS,i.setProjects=US,i.setRehydrated=Rg,i.setTeam=FF,i.setTeamMembership=uF,i.setTeamMemberships=lF,i.setTeams=bF,i.setTokens=Yb,i.setUploadUrl=i_,i.setUser=Wy,i.setUsers=Hy,i.shallowEqual=ob,i.slugify=_b,i.spacesToDashesLower=bb,i.submittedAtModelSortFn=At,i.teamMembershipReducer=yF,i.teamMembershipSlice=ic,i.teamReducer=BF,i.teamSlice=nc,i.toFileNameSafeString=Fb,i.toUuidArray=w,i.toUuidIdRecord=Pb,i.truncate=gb,i.updateAsset=Aa,i.updateAssetAttachment=Kc,i.updateAssetAttachments=Yc,i.updateAssetComment=aa,i.updateAssetComments=ra,i.updateAssetType=Pd,i.updateAssetTypeAttachment=Va,i.updateAssetTypeAttachments=za,i.updateAssetTypeFieldValues=zr,i.updateAssetTypeFieldValuesAttachment=Tr,i.updateAssetTypeFieldValuesAttachments=Or,i.updateAssetTypeFieldValuesMany=Dr,i.updateAssetTypeFields=rr,i.updateAssetTypeFieldsAttachment=Ka,i.updateAssetTypeFieldsAttachments=Ya,i.updateAssetTypeFieldsMany=dr,i.updateAssetTypeIdentifier=Yr,i.updateAssetTypeIdentifierValue=dd,i.updateAssetTypeIdentifierValues=ud,i.updateAssetTypeIdentifiers=Zr,i.updateAssetTypeStatus=jd,i.updateAssetTypeStatuses=qd,i.updateAssetTypes=Fd,i.updateAssets=Ia,i.updateConversation=Uc,i.updateConversations=Bb,i.updateDocument=mu,i.updateDocumentAttachment=xd,i.updateDocumentAttachments=eu,i.updateDocuments=pu,i.updateEmailDomain=Mu,i.updateEmailDomains=Ru,i.updateForm=Hl,i.updateFormIdentifier=Gu,i.updateFormIdentifierValue=nl,i.updateFormIdentifierValues=cl,i.updateFormIdentifiers=Hu,i.updateFormRevision=El,i.updateFormRevisionAttachment=Al,i.updateFormRevisionAttachments=Il,i.updateFormRevisions=Bl,i.updateFormSubmission=So,i.updateFormSubmissionAttachment=no,i.updateFormSubmissionAttachments=co,i.updateFormSubmissions=Ao,i.updateForms=Wl,i.updateGeoImage=Do,i.updateGeoImages=jo,i.updateIssue=Jh,i.updateIssueAssociation=Ko,i.updateIssueAssociations=Yo,i.updateIssueAttachment=lh,i.updateIssueAttachments=oh,i.updateIssueComment=Ch,i.updateIssueCommentAttachment=bh,i.updateIssueCommentAttachments=_h,i.updateIssueComments=$h,i.updateIssueType=hy,i.updateIssueTypeAttachment=lm,i.updateIssueTypeAttachments=om,i.updateIssueTypeFieldValues=Cm,i.updateIssueTypeFieldValuesAttachment=op,i.updateIssueTypeFieldValuesAttachments=hp,i.updateIssueTypeFieldValuesMany=$m,i.updateIssueTypeFields=Qm,i.updateIssueTypeFieldsAttachment=bm,i.updateIssueTypeFieldsAttachments=_m,i.updateIssueTypeFieldsMany=xm,i.updateIssueTypeIdentifier=_p,i.updateIssueTypeIdentifierValue=$p,i.updateIssueTypeIdentifierValues=Up,i.updateIssueTypeIdentifiers=gp,i.updateIssueTypePriorities=ey,i.updateIssueTypePriority=xp,i.updateIssueTypeStatus=gy,i.updateIssueTypeStatuses=My,i.updateIssueTypes=my,i.updateIssueUpdate=qy,i.updateIssueUpdates=Cy,i.updateIssues=Xh,i.updateOrganization=Pf,i.updateOrganizationAccess=rf,i.updateOrganizationAccesses=df,i.updateOrganizations=Of,i.updateProcedure=SA,i.updateProcedureFieldValues=jP,i.updateProcedureFieldValuesAttachment=PP,i.updateProcedureFieldValuesAttachments=FP,i.updateProcedureFieldValuesMany=qP,i.updateProcedureInitiative=nA,i.updateProcedureInitiatives=cA,i.updateProcedureStep=PO,i.updateProcedureStepAssignee=zA,i.updateProcedureStepAssignees=DA,i.updateProcedureStepComment=YA,i.updateProcedureStepComments=ZA,i.updateProcedureStepDefaultAssignee=dI,i.updateProcedureStepDefaultAssignees=uI,i.updateProcedureStepDefaultReviewer=PI,i.updateProcedureStepDefaultReviewers=FI,i.updateProcedureStepEvent=jI,i.updateProcedureStepEvents=qI,i.updateProcedureStepFieldValues=DT,i.updateProcedureStepFieldValuesAttachment=OT,i.updateProcedureStepFieldValuesAttachments=PT,i.updateProcedureStepFieldValuesMany=jT,i.updateProcedureStepFieldValuesReview=YT,i.updateProcedureStepFieldValuesReviews=ZT,i.updateProcedureStepFields=uT,i.updateProcedureStepFieldsAttachment=ZI,i.updateProcedureStepFieldsAttachments=JI,i.updateProcedureStepFieldsMany=lT,i.updateProcedureStepReviewer=dO,i.updateProcedureStepReviewers=uO,i.updateProcedureSteps=FO,i.updateProcedureType=JP,i.updateProcedureTypeAttachment=DO,i.updateProcedureTypeAttachments=jO,i.updateProcedureTypeFields=uP,i.updateProcedureTypeFieldsAttachment=ZO,i.updateProcedureTypeFieldsAttachments=JO,i.updateProcedureTypeFieldsMany=lP,i.updateProcedureTypes=XP,i.updateProcedures=AA,i.updateProject=HS,i.updateProjectAccess=kf,i.updateProjectAccesses=Nf,i.updateProjectAttachment=tS,i.updateProjectAttachments=sS,i.updateProjectComment=yS,i.updateProjectComments=fS,i.updateProjectFile=wS,i.updateProjectFiles=vS,i.updateProjects=GS,i.updateTeam=_F,i.updateTeamMembership=oF,i.updateTeamMemberships=hF,i.updateTeams=gF,i.updateUser=Zy,i.updateUsers=Yy,i.useSelectorBuilder=lb,i.userReducer=Xy,i.userSlice=tn,i.uuidObj=O,i.uuidObjSortFn=ps,i.uuidSortFn=Ct,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});